Line data Source code
1 : /*
2 : * SPDX-License-Identifier: MPL-2.0
3 : *
4 : * This Source Code Form is subject to the terms of the Mozilla Public
5 : * License, v. 2.0. If a copy of the MPL was not distributed with this
6 : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 : *
8 : * Copyright 2024 MonetDB Foundation;
9 : * Copyright August 2008 - 2023 MonetDB B.V.;
10 : * Copyright 1997 - July 2008 CWI.
11 : */
12 :
13 : #include "monetdb_config.h"
14 : #include "gdk.h"
15 : #include "mal_exception.h"
16 : #include "mal_interpreter.h"
17 :
18 : static str
19 353 : mythrow(enum malexception type, const char *fcn, const char *msg)
20 : {
21 353 : char *errbuf = GDKerrbuf;
22 353 : char *s;
23 :
24 353 : if (errbuf && *errbuf) {
25 353 : if (strncmp(errbuf, "!ERROR: ", 8) == 0)
26 353 : errbuf += 8;
27 353 : if (strchr(errbuf, '!') == errbuf + 5) {
28 0 : s = createException(type, fcn, "%s", errbuf);
29 353 : } else if ((s = strchr(errbuf, ':')) != NULL && s[1] == ' ') {
30 353 : s = createException(type, fcn, "%s", s + 2);
31 : } else {
32 0 : s = createException(type, fcn, "%s", errbuf);
33 : }
34 353 : GDKclrerr();
35 353 : return s;
36 : }
37 0 : return createException(type, fcn, "%s", msg);
38 : }
39 :
40 :
41 : static str
42 21706 : CMDvarSUB(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
43 : {
44 21706 : (void) cntxt;
45 21706 : (void) mb;
46 :
47 21661 : if (VARcalcsub(&stk->stk[getArg(pci, 0)],
48 21706 : &stk->stk[getArg(pci, 1)],
49 21706 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
50 0 : return mythrow(MAL, "calc.-", OPERATION_FAILED);
51 : return MAL_SUCCEED;
52 : }
53 :
54 :
55 : static str
56 119068 : CMDvarADD(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
57 : {
58 119068 : (void) cntxt;
59 119068 : (void) mb;
60 :
61 119079 : if (VARcalcadd(&stk->stk[getArg(pci, 0)],
62 119068 : &stk->stk[getArg(pci, 1)],
63 119068 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
64 0 : return mythrow(MAL, "calc.+", OPERATION_FAILED);
65 : return MAL_SUCCEED;
66 : }
67 :
68 :
69 : static str
70 140554 : CMDvarADDstr(str *ret, const char *const *s1, const char *const *s2)
71 : {
72 140554 : str s;
73 140554 : size_t l1;
74 :
75 279968 : if (strNil(*s1) || strNil(*s2)) {
76 2022 : *ret = GDKstrdup(str_nil);
77 2022 : if (*ret == NULL)
78 0 : return mythrow(MAL, "calc.+", SQLSTATE(HY013) MAL_MALLOC_FAIL);
79 : return MAL_SUCCEED;
80 : }
81 138532 : s = GDKzalloc((l1 = strlen(*s1)) + strlen(*s2) + 1);
82 138532 : if (s == NULL)
83 0 : return mythrow(MAL, "calc.+", SQLSTATE(HY013) MAL_MALLOC_FAIL);
84 138532 : strcpy(s, *s1);
85 138532 : strcpy(s + l1, *s2);
86 138532 : *ret = s;
87 138532 : return MAL_SUCCEED;
88 : }
89 :
90 :
91 : static str
92 0 : CMDvarADDstrint(str *ret, const char *const *s1, const int *i)
93 : {
94 0 : str s;
95 0 : size_t len;
96 :
97 0 : if (strNil(*s1) || is_int_nil(*i)) {
98 0 : *ret = GDKstrdup(str_nil);
99 0 : if (*ret == NULL)
100 0 : return mythrow(MAL, "calc.+", SQLSTATE(HY013) MAL_MALLOC_FAIL);
101 : return MAL_SUCCEED;
102 : }
103 0 : len = strlen(*s1) + 16; /* maxint = 2147483647 which fits easily */
104 0 : s = GDKmalloc(len);
105 0 : if (s == NULL)
106 0 : return mythrow(MAL, "calc.+", SQLSTATE(HY013) MAL_MALLOC_FAIL);
107 0 : snprintf(s, len, "%s%d", *s1, *i);
108 0 : *ret = s;
109 0 : return MAL_SUCCEED;
110 : }
111 :
112 :
113 : static str
114 606 : CMDvarMUL(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
115 : {
116 606 : (void) cntxt;
117 606 : (void) mb;
118 :
119 606 : if (VARcalcmul(&stk->stk[getArg(pci, 0)],
120 606 : &stk->stk[getArg(pci, 1)],
121 606 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
122 0 : return mythrow(MAL, "calc.*", OPERATION_FAILED);
123 : return MAL_SUCCEED;
124 : }
125 :
126 :
127 : static str
128 235 : CMDvarDIV(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
129 : {
130 235 : (void) cntxt;
131 235 : (void) mb;
132 :
133 235 : if (VARcalcdiv(&stk->stk[getArg(pci, 0)],
134 235 : &stk->stk[getArg(pci, 1)],
135 235 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
136 12 : return mythrow(MAL, "calc./", OPERATION_FAILED);
137 : return MAL_SUCCEED;
138 : }
139 :
140 :
141 : static str
142 18 : CMDvarMOD(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
143 : {
144 18 : (void) cntxt;
145 18 : (void) mb;
146 :
147 18 : if (VARcalcmod(&stk->stk[getArg(pci, 0)],
148 18 : &stk->stk[getArg(pci, 1)],
149 18 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
150 0 : return mythrow(MAL, "calc.%", OPERATION_FAILED);
151 : return MAL_SUCCEED;
152 : }
153 :
154 :
155 : static str
156 11 : CMDvarLSH(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
157 : {
158 11 : (void) cntxt;
159 11 : (void) mb;
160 :
161 11 : if (VARcalclsh(&stk->stk[getArg(pci, 0)],
162 11 : &stk->stk[getArg(pci, 1)],
163 11 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
164 0 : return mythrow(MAL, "calc.<<", OPERATION_FAILED);
165 : return MAL_SUCCEED;
166 : }
167 :
168 :
169 : static str
170 10 : CMDvarRSH(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
171 : {
172 10 : (void) cntxt;
173 10 : (void) mb;
174 :
175 10 : if (VARcalcrsh(&stk->stk[getArg(pci, 0)],
176 10 : &stk->stk[getArg(pci, 1)],
177 10 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
178 1 : return mythrow(MAL, "calc.>>", OPERATION_FAILED);
179 : return MAL_SUCCEED;
180 : }
181 :
182 :
183 : static str
184 4745066 : CMDvarAND(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
185 : {
186 4745066 : (void) cntxt;
187 4745066 : (void) mb;
188 :
189 4745066 : if (VARcalcand(&stk->stk[getArg(pci, 0)],
190 4745066 : &stk->stk[getArg(pci, 1)],
191 4745066 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
192 0 : return mythrow(MAL, "calc.and", OPERATION_FAILED);
193 : return MAL_SUCCEED;
194 : }
195 :
196 :
197 : static str
198 2523220 : CMDvarOR(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
199 : {
200 2523220 : (void) cntxt;
201 2523220 : (void) mb;
202 :
203 2523220 : if (VARcalcor(&stk->stk[getArg(pci, 0)],
204 2523220 : &stk->stk[getArg(pci, 1)],
205 2523220 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
206 0 : return mythrow(MAL, "calc.or", OPERATION_FAILED);
207 : return MAL_SUCCEED;
208 : }
209 :
210 :
211 : static str
212 25 : CMDvarXOR(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
213 : {
214 25 : (void) cntxt;
215 25 : (void) mb;
216 :
217 25 : if (VARcalcxor(&stk->stk[getArg(pci, 0)],
218 25 : &stk->stk[getArg(pci, 1)],
219 25 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
220 0 : return mythrow(MAL, "calc.xor", OPERATION_FAILED);
221 : return MAL_SUCCEED;
222 : }
223 :
224 :
225 : static str
226 104 : CMDvarLT(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
227 : {
228 104 : (void) cntxt;
229 104 : (void) mb;
230 :
231 104 : if (VARcalclt(&stk->stk[getArg(pci, 0)],
232 104 : &stk->stk[getArg(pci, 1)],
233 104 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
234 0 : return mythrow(MAL, "calc.<", OPERATION_FAILED);
235 : return MAL_SUCCEED;
236 : }
237 :
238 :
239 : static str
240 379 : CMDvarLE(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
241 : {
242 379 : (void) cntxt;
243 379 : (void) mb;
244 :
245 379 : if (VARcalcle(&stk->stk[getArg(pci, 0)],
246 379 : &stk->stk[getArg(pci, 1)],
247 379 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
248 0 : return mythrow(MAL, "calc.<=", OPERATION_FAILED);
249 : return MAL_SUCCEED;
250 : }
251 :
252 :
253 : static str
254 285 : CMDvarGT(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
255 : {
256 285 : (void) cntxt;
257 285 : (void) mb;
258 :
259 285 : if (VARcalcgt(&stk->stk[getArg(pci, 0)],
260 285 : &stk->stk[getArg(pci, 1)],
261 285 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
262 0 : return mythrow(MAL, "calc.>", OPERATION_FAILED);
263 : return MAL_SUCCEED;
264 : }
265 :
266 :
267 : static str
268 24 : CMDvarGE(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
269 : {
270 24 : (void) cntxt;
271 24 : (void) mb;
272 :
273 24 : if (VARcalcge
274 24 : (&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)],
275 24 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
276 0 : return mythrow(MAL, "calc.>=", OPERATION_FAILED);
277 : return MAL_SUCCEED;
278 : }
279 :
280 :
281 : static str
282 2549518 : CMDvarEQ(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
283 : {
284 2549518 : (void) cntxt;
285 2549518 : (void) mb;
286 :
287 2549517 : if (VARcalceq(&stk->stk[getArg(pci, 0)],
288 2549518 : &stk->stk[getArg(pci, 1)],
289 2549518 : &stk->stk[getArg(pci, 2)],
290 2549518 : pci->argc == 3 ? false : *getArgReference_bit(stk, pci, 3)
291 : ) != GDK_SUCCEED)
292 0 : return mythrow(MAL, "calc.==", OPERATION_FAILED);
293 : return MAL_SUCCEED;
294 : }
295 :
296 :
297 : static str
298 18516 : CMDvarNE(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
299 : {
300 18516 : (void) cntxt;
301 18516 : (void) mb;
302 :
303 18518 : if (VARcalcne(&stk->stk[getArg(pci, 0)],
304 18516 : &stk->stk[getArg(pci, 1)],
305 18516 : &stk->stk[getArg(pci, 2)],
306 18516 : pci->argc == 3 ? false : *getArgReference_bit(stk, pci, 3)) != GDK_SUCCEED)
307 0 : return mythrow(MAL, "calc.!=", OPERATION_FAILED);
308 : return MAL_SUCCEED;
309 : }
310 :
311 :
312 : static str
313 2 : CMDvarCMP(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
314 : {
315 2 : (void) cntxt;
316 2 : (void) mb;
317 :
318 2 : if (VARcalccmp(&stk->stk[getArg(pci, 0)],
319 2 : &stk->stk[getArg(pci, 1)],
320 2 : &stk->stk[getArg(pci, 2)]) != GDK_SUCCEED)
321 0 : return mythrow(MAL, "calc.cmp", OPERATION_FAILED);
322 : return MAL_SUCCEED;
323 : }
324 :
325 :
326 : static str
327 41 : CMDvarBETWEEN(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
328 : {
329 41 : (void) cntxt;
330 41 : (void) mb;
331 41 : bool symmetric, linc, hinc, nils_false, anti;
332 :
333 41 : symmetric = *getArgReference_bit(stk, pci, 4);
334 41 : linc = *getArgReference_bit(stk, pci, 5);
335 41 : hinc = *getArgReference_bit(stk, pci, 6);
336 41 : nils_false = *getArgReference_bit(stk, pci, 7);
337 41 : anti = *getArgReference_bit(stk, pci, 8);
338 41 : if (VARcalcbetween
339 41 : (&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)],
340 41 : &stk->stk[getArg(pci, 2)], &stk->stk[getArg(pci, 3)], symmetric, linc,
341 : hinc, nils_false, anti) != GDK_SUCCEED)
342 0 : return mythrow(MAL, "calc.between", OPERATION_FAILED);
343 : return MAL_SUCCEED;
344 : }
345 :
346 :
347 : static str
348 0 : CMDstrlength(int *ret, const char *const *v)
349 : {
350 0 : size_t l = strlen(*v);
351 :
352 0 : if (l > (size_t) GDK_int_max)
353 0 : return mythrow(MAL, "calc.length", OPERATION_FAILED);
354 0 : *ret = (int) l;
355 0 : return MAL_SUCCEED;
356 : }
357 :
358 :
359 : static str
360 114251 : CMDvarCONVERT(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
361 : {
362 114251 : char buf[20];
363 :
364 114251 : (void) cntxt;
365 114251 : (void) mb;
366 :
367 114251 : if (VARconvert
368 114251 : (&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)], 0, 0,
369 : 0) != GDK_SUCCEED) {
370 311 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
371 311 : return mythrow(MAL, buf, OPERATION_FAILED);
372 : }
373 : return MAL_SUCCEED;
374 : }
375 :
376 :
377 : static str
378 0 : CMDvarCONVERTptr(ptr *ret, ptr *v)
379 : {
380 0 : *ret = *v;
381 0 : return MAL_SUCCEED;
382 : }
383 :
384 :
385 : static str
386 0 : CMDvarISZERO(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
387 : {
388 0 : char buf[20];
389 :
390 0 : (void) cntxt;
391 0 : (void) mb;
392 :
393 0 : if (VARcalciszero(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
394 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
395 0 : return mythrow(MAL, buf, OPERATION_FAILED);
396 : }
397 : return MAL_SUCCEED;
398 : }
399 :
400 :
401 : static str
402 2487425 : CMDvarISNIL(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
403 : {
404 2487425 : char buf[20];
405 :
406 2487425 : (void) cntxt;
407 2487425 : (void) mb;
408 :
409 2487425 : if (VARcalcisnil(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
410 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
411 0 : return mythrow(MAL, buf, OPERATION_FAILED);
412 : }
413 : return MAL_SUCCEED;
414 : }
415 :
416 :
417 : static str
418 377 : CMDvarISNOTNIL(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
419 : {
420 377 : char buf[20];
421 :
422 377 : (void) cntxt;
423 377 : (void) mb;
424 :
425 377 : if (VARcalcisnotnil(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
426 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
427 0 : return mythrow(MAL, buf, OPERATION_FAILED);
428 : }
429 : return MAL_SUCCEED;
430 : }
431 :
432 :
433 : static str
434 2469529 : CMDvarNOT(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
435 : {
436 2469529 : char buf[20];
437 :
438 2469529 : (void) cntxt;
439 2469529 : (void) mb;
440 :
441 2469529 : if (VARcalcnot(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
442 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
443 0 : return mythrow(MAL, buf, OPERATION_FAILED);
444 : }
445 : return MAL_SUCCEED;
446 : }
447 :
448 :
449 : static str
450 45 : CMDvarABS(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
451 : {
452 45 : char buf[20];
453 :
454 45 : (void) cntxt;
455 45 : (void) mb;
456 :
457 45 : if (VARcalcabsolute(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
458 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
459 0 : return mythrow(MAL, buf, OPERATION_FAILED);
460 : }
461 : return MAL_SUCCEED;
462 : }
463 :
464 :
465 : static str
466 7 : CMDvarSIGN(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
467 : {
468 7 : char buf[20];
469 :
470 7 : (void) cntxt;
471 7 : (void) mb;
472 :
473 7 : if (VARcalcsign(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
474 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
475 0 : return mythrow(MAL, buf, OPERATION_FAILED);
476 : }
477 : return MAL_SUCCEED;
478 : }
479 :
480 :
481 : static str
482 2965 : CMDvarNEG(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
483 : {
484 2965 : char buf[20];
485 :
486 2965 : (void) cntxt;
487 2965 : (void) mb;
488 :
489 2965 : if (VARcalcnegate(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
490 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
491 0 : return mythrow(MAL, buf, OPERATION_FAILED);
492 : }
493 : return MAL_SUCCEED;
494 : }
495 :
496 :
497 : static str
498 0 : CMDvarINCR(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
499 : {
500 0 : char buf[20];
501 :
502 0 : (void) cntxt;
503 0 : (void) mb;
504 :
505 0 : if (VARcalcincr(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
506 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
507 0 : return mythrow(MAL, buf, OPERATION_FAILED);
508 : }
509 : return MAL_SUCCEED;
510 : }
511 :
512 :
513 : static str
514 0 : CMDvarDECR(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
515 : {
516 0 : char buf[20];
517 :
518 0 : (void) cntxt;
519 0 : (void) mb;
520 :
521 0 : if (VARcalcdecr(&stk->stk[getArg(pci, 0)], &stk->stk[getArg(pci, 1)]) != GDK_SUCCEED) {
522 0 : snprintf(buf, sizeof(buf), "%s.%s", pci->modname, pci->fcnname);
523 0 : return mythrow(MAL, buf, OPERATION_FAILED);
524 : }
525 : return MAL_SUCCEED;
526 : }
527 :
528 :
529 : static str
530 121038 : CALCswitchbit(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
531 : {
532 121038 : ptr p;
533 121038 : ptr retval = getArgReference(stk, pci, 0);
534 121038 : bit b = stk->stk[getArg(pci, 1)].vtype == TYPE_msk
535 0 : ? (bit) *getArgReference_msk(stk, pci, 1)
536 121038 : : *getArgReference_bit(stk, pci, 1);
537 121038 : int t1 = getArgType(mb, pci, 2);
538 121038 : int t2 = getArgType(mb, pci, 3);
539 :
540 121038 : (void) cntxt;
541 121038 : if (t1 != t2)
542 0 : return mythrow(MAL, "ifthenelse", SEMANTIC_TYPE_MISMATCH);
543 :
544 121038 : if (b && !is_bit_nil(b)) {
545 68636 : p = getArgReference(stk, pci, 2);
546 : } else {
547 52402 : p = getArgReference(stk, pci, 3);
548 : }
549 121038 : if (ATOMextern(t1)) {
550 115022 : *(ptr **) retval = ATOMdup(t1, *(ptr **) p);
551 115022 : if (*(ptr **) retval == NULL)
552 0 : throw(MAL, "ifthenelse", SQLSTATE(HY013) MAL_MALLOC_FAIL);
553 6016 : } else if (t1 == TYPE_void) {
554 0 : memcpy(retval, p, sizeof(oid));
555 : } else {
556 6016 : memcpy(retval, p, ATOMsize(t1));
557 : }
558 : return MAL_SUCCEED;
559 : }
560 :
561 :
562 : static str
563 46 : CALCmin(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
564 : {
565 46 : int t = getArgType(mb, pci, 1);
566 46 : const void *p1 = getArgReference(stk, pci, 1);
567 46 : const void *p2 = getArgReference(stk, pci, 2);
568 46 : const void *nil;
569 :
570 46 : (void) cntxt;
571 46 : if (t != getArgType(mb, pci, 2))
572 0 : return mythrow(MAL, "calc.min", SEMANTIC_TYPE_MISMATCH);
573 46 : nil = ATOMnilptr(t);
574 46 : if (t >= TYPE_str && ATOMstorage(t) >= TYPE_str) {
575 9 : p1 = *(ptr *) p1;
576 9 : p2 = *(ptr *) p2;
577 : }
578 46 : if (ATOMcmp(t, p1, nil) == 0 || ATOMcmp(t, p2, nil) == 0)
579 : p1 = nil;
580 42 : else if (ATOMcmp(t, p1, p2) > 0)
581 12 : p1 = p2;
582 46 : if (VALinit(&stk->stk[getArg(pci, 0)], t, p1) == NULL)
583 0 : return mythrow(MAL, "calc.min", SQLSTATE(HY013) MAL_MALLOC_FAIL);
584 : return MAL_SUCCEED;
585 : }
586 :
587 :
588 : static str
589 96 : CALCmin_no_nil(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
590 : {
591 96 : int t = getArgType(mb, pci, 1);
592 96 : ptr p1 = getArgReference(stk, pci, 1);
593 96 : ptr p2 = getArgReference(stk, pci, 2);
594 96 : const void *nil;
595 :
596 96 : (void) cntxt;
597 96 : if (t != getArgType(mb, pci, 2))
598 0 : return mythrow(MAL, "calc.min", SEMANTIC_TYPE_MISMATCH);
599 96 : nil = ATOMnilptr(t);
600 96 : if (t >= TYPE_str && ATOMstorage(t) >= TYPE_str) {
601 33 : p1 = *(ptr *) p1;
602 33 : p2 = *(ptr *) p2;
603 : }
604 192 : if (ATOMcmp(t, p1, nil) == 0 ||
605 189 : (ATOMcmp(t, p2, nil) != 0 && ATOMcmp(t, p1, p2) > 0))
606 : p1 = p2;
607 96 : if (VALinit(&stk->stk[getArg(pci, 0)], t, p1) == NULL)
608 0 : return mythrow(MAL, "calc.min", SQLSTATE(HY013) MAL_MALLOC_FAIL);
609 : return MAL_SUCCEED;
610 : }
611 :
612 :
613 : static str
614 41 : CALCmax(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
615 : {
616 41 : int t = getArgType(mb, pci, 1);
617 41 : const void *p1 = getArgReference(stk, pci, 1);
618 41 : const void *p2 = getArgReference(stk, pci, 2);
619 41 : const void *nil;
620 :
621 41 : (void) cntxt;
622 41 : if (t != getArgType(mb, pci, 2))
623 0 : return mythrow(MAL, "calc.max", SEMANTIC_TYPE_MISMATCH);
624 41 : nil = ATOMnilptr(t);
625 41 : if (t >= TYPE_str && ATOMstorage(t) >= TYPE_str) {
626 10 : p1 = *(ptr *) p1;
627 10 : p2 = *(ptr *) p2;
628 : }
629 41 : if (ATOMcmp(t, p1, nil) == 0 || ATOMcmp(t, p2, nil) == 0)
630 : p1 = nil;
631 38 : else if (ATOMcmp(t, p1, p2) < 0)
632 25 : p1 = p2;
633 41 : if (VALinit(&stk->stk[getArg(pci, 0)], t, p1) == NULL)
634 0 : return mythrow(MAL, "calc.max", SQLSTATE(HY013) MAL_MALLOC_FAIL);
635 : return MAL_SUCCEED;
636 : }
637 :
638 :
639 : static str
640 92 : CALCmax_no_nil(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
641 : {
642 92 : int t = getArgType(mb, pci, 1);
643 92 : ptr p1 = getArgReference(stk, pci, 1);
644 92 : ptr p2 = getArgReference(stk, pci, 2);
645 92 : const void *nil;
646 :
647 92 : (void) cntxt;
648 92 : if (t != getArgType(mb, pci, 2))
649 0 : return mythrow(MAL, "calc.max", SEMANTIC_TYPE_MISMATCH);
650 92 : nil = ATOMnilptr(t);
651 92 : if (t >= TYPE_str && ATOMstorage(t) >= TYPE_str) {
652 45 : p1 = *(ptr *) p1;
653 45 : p2 = *(ptr *) p2;
654 : }
655 183 : if (ATOMcmp(t, p1, nil) == 0 ||
656 181 : (ATOMcmp(t, p2, nil) != 0 && ATOMcmp(t, p1, p2) < 0))
657 : p1 = p2;
658 92 : if (VALinit(&stk->stk[getArg(pci, 0)], t, p1) == NULL)
659 0 : return mythrow(MAL, "calc.max", SQLSTATE(HY013) MAL_MALLOC_FAIL);
660 : return MAL_SUCCEED;
661 : }
662 :
663 : static str
664 8885 : CMDBATsumprod(MalBlkPtr mb, MalStkPtr stk, InstrPtr pci,
665 : gdk_return (*sumprod)(void *, int, BAT *, BAT *, bool, bool),
666 : const char *func)
667 : {
668 8885 : ValPtr ret = &stk->stk[getArg(pci, 0)];
669 8885 : bat bid = *getArgReference_bat(stk, pci, 1);
670 8885 : BAT *b;
671 8885 : BAT *s = NULL;
672 8885 : bool nil_if_empty = true;
673 8885 : gdk_return r;
674 :
675 8885 : if ((b = BATdescriptor(bid)) == NULL)
676 0 : throw(MAL, func, SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
677 8893 : if (pci->argc >= 3) {
678 0 : if (getArgType(mb, pci, 2) == TYPE_bit) {
679 0 : assert(pci->argc == 3);
680 0 : nil_if_empty = *getArgReference_bit(stk, pci, 2);
681 : } else {
682 0 : bat sid = *getArgReference_bat(stk, pci, 2);
683 0 : if (!is_bat_nil(sid) && (s = BATdescriptor(sid)) == NULL) {
684 0 : BBPunfix(b->batCacheid);
685 0 : throw(MAL, func, SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
686 : }
687 0 : if (pci->argc >= 4) {
688 0 : assert(pci->argc == 4);
689 0 : assert(getArgType(mb, pci, 3) == TYPE_bit);
690 0 : nil_if_empty = *getArgReference_bit(stk, pci, 3);
691 : }
692 : }
693 : }
694 8893 : r = (*sumprod) (VALget(ret), ret->vtype, b, s, true, nil_if_empty);
695 8891 : BBPunfix(b->batCacheid);
696 8900 : BBPreclaim(s);
697 8901 : if (r != GDK_SUCCEED)
698 29 : return mythrow(MAL, func, OPERATION_FAILED);
699 : return MAL_SUCCEED;
700 : }
701 :
702 :
703 : static str
704 8838 : CMDBATsum(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
705 : {
706 8838 : (void) cntxt;
707 :
708 8838 : return CMDBATsumprod(mb, stk, pci, BATsum, "aggr.sum");
709 : }
710 :
711 :
712 : static str
713 49 : CMDBATprod(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
714 : {
715 49 : (void) cntxt;
716 :
717 49 : return CMDBATsumprod(mb, stk, pci, BATprod, "aggr.prod");
718 : }
719 :
720 : #define arg_type(stk, pci, k) ((stk)->stk[pci->argv[k]].vtype)
721 :
722 : static str
723 199 : CMDBATavg3(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
724 : {
725 199 : ValPtr ret = &stk->stk[getArg(pci, 0)];
726 199 : lng *rest = NULL, *cnt = NULL;
727 199 : bat *bid, *sid;
728 199 : bit *skip_nils;
729 199 : BAT *b = NULL, *s = NULL, *avgs, *cnts, *rems;
730 :
731 199 : (void) cntxt;
732 199 : (void) mb;
733 :
734 : /* optional results rest and count */
735 199 : if (arg_type(stk, pci, 1) == TYPE_lng)
736 199 : rest = getArgReference_lng(stk, pci, 1);
737 199 : if (arg_type(stk, pci, 2) == TYPE_lng)
738 199 : cnt = getArgReference_lng(stk, pci, 2);
739 199 : bid = getArgReference_bat(stk, pci, 3);
740 199 : sid = getArgReference_bat(stk, pci, 4);
741 199 : skip_nils = getArgReference_bit(stk, pci, 5);
742 199 : b = BATdescriptor(*bid);
743 199 : s = sid != NULL && !is_bat_nil(*sid) ? BATdescriptor(*sid) : NULL;
744 199 : if (b == NULL || (sid != NULL && !is_bat_nil(*sid) && s == NULL)) {
745 0 : BBPreclaim(b);
746 0 : throw(MAL, "aggr.avg", SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
747 : }
748 199 : if (BATgroupavg3(&avgs, &rems, &cnts, b, NULL, NULL, s, *skip_nils) != GDK_SUCCEED)
749 0 : return mythrow(MAL, "aggr.avg", GDK_EXCEPTION);
750 199 : if (avgs && BATcount(avgs) == 1) {
751 : /* only type bte, sht, int, lng and hge */
752 199 : ptr res = VALget(ret);
753 199 : lng xcnt = 0;
754 :
755 199 : if (avgs->ttype == TYPE_bte) {
756 16 : *(bte *) res = *(bte *) Tloc(avgs, 0);
757 : } else if (avgs->ttype == TYPE_sht) {
758 1 : *(sht *) res = *(sht *) Tloc(avgs, 0);
759 : } else if (avgs->ttype == TYPE_int) {
760 155 : *(int *) res = *(int *) Tloc(avgs, 0);
761 : } else if (avgs->ttype == TYPE_lng) {
762 21 : *(lng *) res = *(lng *) Tloc(avgs, 0);
763 : #ifdef HAVE_HGE
764 : } else if (avgs->ttype == TYPE_hge) {
765 6 : *(hge *) res = *(hge *) Tloc(avgs, 0);
766 : #endif
767 : }
768 199 : if (cnt)
769 199 : xcnt = *cnt = *(lng *) Tloc(cnts, 0);
770 199 : if (rest)
771 199 : *rest = *(lng *) Tloc(rems, 0);
772 199 : if (xcnt == 0)
773 12 : VALset(ret, ret->vtype, (ptr) ATOMnilptr(ret->vtype));
774 : } else {
775 0 : VALset(ret, ret->vtype, (ptr) ATOMnilptr(ret->vtype));
776 0 : if (rest)
777 0 : *rest = lng_nil;
778 0 : if (cnt)
779 0 : *cnt = lng_nil;
780 : }
781 199 : BBPreclaim(avgs);
782 199 : BBPreclaim(rems);
783 199 : BBPreclaim(cnts);
784 199 : BBPunfix(b->batCacheid);
785 199 : BBPreclaim(s);
786 : return MAL_SUCCEED;
787 : }
788 :
789 : static str
790 21 : CMDBATavg3comb(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
791 : {
792 21 : ValPtr ret = &stk->stk[getArg(pci, 0)];
793 21 : BAT *b = NULL, *r = NULL, *c = NULL, *avgs;
794 21 : bat *bid = getArgReference_bat(stk, pci, 1);
795 21 : bat *rid = getArgReference_bat(stk, pci, 2);
796 21 : bat *cid = getArgReference_bat(stk, pci, 3);
797 :
798 21 : (void) cntxt;
799 21 : (void) mb;
800 :
801 21 : b = BATdescriptor(*bid);
802 21 : r = BATdescriptor(*rid);
803 21 : c = BATdescriptor(*cid);
804 21 : if (b == NULL || r == NULL || c == NULL) {
805 0 : BBPreclaim(b);
806 0 : BBPreclaim(r);
807 0 : BBPreclaim(c);
808 0 : throw(MAL, "aggr.avg", SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
809 : }
810 21 : avgs = BATgroupavg3combine(b, r, c, NULL, NULL, TRUE);
811 21 : if (avgs && BATcount(avgs) == 1) {
812 : /* only type bte, sht, int, lng and hge */
813 21 : ptr res = VALget(ret);
814 :
815 21 : if (avgs->ttype == TYPE_bte) {
816 2 : *(bte *) res = *(bte *) Tloc(avgs, 0);
817 : } else if (avgs->ttype == TYPE_sht) {
818 0 : *(sht *) res = *(sht *) Tloc(avgs, 0);
819 : } else if (avgs->ttype == TYPE_int) {
820 19 : *(int *) res = *(int *) Tloc(avgs, 0);
821 : } else if (avgs->ttype == TYPE_lng) {
822 0 : *(lng *) res = *(lng *) Tloc(avgs, 0);
823 : #ifdef HAVE_HGE
824 : } else if (avgs->ttype == TYPE_hge) {
825 0 : *(hge *) res = *(hge *) Tloc(avgs, 0);
826 : #endif
827 : }
828 : } else {
829 0 : VALset(ret, ret->vtype, (ptr) ATOMnilptr(ret->vtype));
830 : }
831 21 : BBPreclaim(avgs);
832 21 : BBPunfix(b->batCacheid);
833 21 : BBPunfix(r->batCacheid);
834 21 : BBPunfix(c->batCacheid);
835 21 : if (avgs == NULL)
836 0 : throw(MAL, "aggr.avg", GDK_EXCEPTION);
837 : return MAL_SUCCEED;
838 : }
839 :
840 : static str
841 56 : CMDBATstr_group_concat(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
842 : {
843 56 : ValPtr ret = &stk->stk[getArg(pci, 0)];
844 56 : bat bid = *getArgReference_bat(stk, pci, 1), sid = 0;
845 56 : BAT *b, *s = NULL, *sep = NULL;
846 56 : bool nil_if_empty = true;
847 56 : int next_argument = 2;
848 56 : const char *separator = ",";
849 56 : gdk_return r;
850 :
851 56 : (void) cntxt;
852 :
853 56 : if ((b = BATdescriptor(bid)) == NULL)
854 0 : throw(MAL, "aggr.str_group_concat",
855 : SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
856 :
857 56 : if (isaBatType(getArgType(mb, pci, 2))) {
858 16 : sid = *getArgReference_bat(stk, pci, 2);
859 16 : if ((sep = BATdescriptor(sid)) == NULL) {
860 0 : BBPunfix(b->batCacheid);
861 0 : throw(MAL, "aggr.str_group_concat",
862 : SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
863 : }
864 16 : if (sep->ttype == TYPE_str) { /* the separator bat */
865 16 : next_argument = 3;
866 16 : separator = NULL;
867 : }
868 : }
869 :
870 56 : if (pci->argc >= (next_argument + 1)) {
871 0 : if (getArgType(mb, pci, next_argument) == TYPE_bit) {
872 0 : assert(pci->argc == (next_argument + 1));
873 0 : nil_if_empty = *getArgReference_bit(stk, pci, next_argument);
874 : } else {
875 0 : if (next_argument == 3) {
876 0 : bat sid = *getArgReference_bat(stk, pci, next_argument);
877 0 : if (!is_bat_nil(sid) && (s = BATdescriptor(sid)) == NULL) {
878 0 : BBPunfix(b->batCacheid);
879 0 : BBPunfix(sep->batCacheid);
880 0 : throw(MAL, "aggr.str_group_concat",
881 : SQLSTATE(HY002) RUNTIME_OBJECT_MISSING);
882 : }
883 : } else {
884 : s = sep;
885 : sep = NULL;
886 : }
887 0 : if (pci->argc >= (next_argument + 2)) {
888 0 : assert(pci->argc == (next_argument + 2));
889 0 : assert(getArgType(mb, pci, (next_argument + 1)) == TYPE_bit);
890 0 : nil_if_empty = *getArgReference_bit(stk, pci, (next_argument + 1));
891 : }
892 : }
893 : }
894 :
895 56 : assert((separator && !sep) || (!separator && sep));
896 56 : r = BATstr_group_concat(ret, b, s, sep, true, nil_if_empty, separator);
897 56 : BBPunfix(b->batCacheid);
898 56 : BBPreclaim(sep);
899 56 : BBPreclaim(s);
900 56 : if (r != GDK_SUCCEED)
901 0 : return mythrow(MAL, "aggr.str_group_concat", OPERATION_FAILED);
902 : return MAL_SUCCEED;
903 : }
904 :
905 : #include "mel.h"
906 : mel_func calc_init_funcs[] = {
907 : #ifdef HAVE_HGE
908 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",hge))),
909 : pattern("calc", "not", CMDvarNOT, false, "Unary bitwise not of V", args(1,2, arg("",hge),arg("v",hge))),
910 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",hge))),
911 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",hge),arg("v",hge))),
912 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",hge),arg("v",hge))),
913 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",hge),arg("v",hge))),
914 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",hge),arg("v",hge))),
915 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",bte))),
916 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",sht))),
917 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",int))),
918 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",lng))),
919 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",hge))),
920 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",hge))),
921 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",bte),arg("v2",hge))),
922 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",bte))),
923 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",sht))),
924 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",int))),
925 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",lng))),
926 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",hge))),
927 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",hge))),
928 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",sht),arg("v2",hge))),
929 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",bte))),
930 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",sht))),
931 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",int))),
932 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",lng))),
933 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",hge))),
934 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",hge))),
935 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",int),arg("v2",hge))),
936 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",bte))),
937 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",sht))),
938 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",int))),
939 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",lng))),
940 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",hge))),
941 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",hge))),
942 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",lng),arg("v2",hge))),
943 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",bte))),
944 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",bte))),
945 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
946 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",sht))),
947 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",sht))),
948 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
949 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",int))),
950 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",int))),
951 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
952 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",lng))),
953 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",lng))),
954 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
955 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",hge))),
956 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",hge))),
957 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
958 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",flt))),
959 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",hge),arg("v2",flt))),
960 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",dbl))),
961 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",hge))),
962 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",hge))),
963 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",hge))),
964 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",bte))),
965 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",sht))),
966 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",int))),
967 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",lng))),
968 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",hge))),
969 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",hge))),
970 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",bte),arg("v2",hge))),
971 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",bte))),
972 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",sht))),
973 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",int))),
974 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",lng))),
975 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",hge))),
976 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",hge))),
977 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",sht),arg("v2",hge))),
978 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",bte))),
979 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",sht))),
980 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",int))),
981 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",lng))),
982 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",hge))),
983 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",hge))),
984 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",int),arg("v2",hge))),
985 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",bte))),
986 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",sht))),
987 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",int))),
988 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",lng))),
989 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",hge))),
990 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",hge))),
991 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",lng),arg("v2",hge))),
992 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",bte))),
993 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",bte))),
994 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
995 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",sht))),
996 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",sht))),
997 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
998 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",int))),
999 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",int))),
1000 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
1001 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",lng))),
1002 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",lng))),
1003 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
1004 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",hge))),
1005 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",hge))),
1006 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1007 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",flt))),
1008 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",hge),arg("v2",flt))),
1009 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",dbl))),
1010 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",hge))),
1011 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",hge))),
1012 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",hge))),
1013 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",bte))),
1014 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",sht))),
1015 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",int))),
1016 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",bte),arg("v2",lng))),
1017 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",hge))),
1018 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",hge))),
1019 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",bte),arg("v2",hge))),
1020 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",bte))),
1021 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",sht))),
1022 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",int))),
1023 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",sht),arg("v2",lng))),
1024 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",hge))),
1025 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",hge))),
1026 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",sht),arg("v2",hge))),
1027 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",bte))),
1028 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",sht))),
1029 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",int))),
1030 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",int),arg("v2",lng))),
1031 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",hge))),
1032 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",hge))),
1033 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",int),arg("v2",hge))),
1034 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",bte))),
1035 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",sht))),
1036 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",int))),
1037 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",hge),arg("v1",lng),arg("v2",lng))),
1038 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",hge))),
1039 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",hge))),
1040 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",lng),arg("v2",hge))),
1041 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",bte))),
1042 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",bte))),
1043 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
1044 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",sht))),
1045 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",sht))),
1046 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
1047 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",int))),
1048 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",int))),
1049 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
1050 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",lng))),
1051 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",lng))),
1052 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
1053 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",hge))),
1054 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",hge),arg("v2",hge))),
1055 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1056 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",flt))),
1057 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",hge),arg("v2",flt))),
1058 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",dbl))),
1059 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",hge))),
1060 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",hge))),
1061 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",hge))),
1062 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",hge),arg("v2",flt))),
1063 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",hge),arg("v2",flt))),
1064 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",hge),arg("v2",flt))),
1065 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",hge),arg("v2",flt))),
1066 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",bte),arg("v2",flt))),
1067 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",sht),arg("v2",flt))),
1068 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",int),arg("v2",flt))),
1069 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",lng),arg("v2",flt))),
1070 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",flt))),
1071 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",flt),arg("v2",hge))),
1072 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",flt),arg("v2",hge))),
1073 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",flt),arg("v2",hge))),
1074 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",flt),arg("v2",hge))),
1075 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",flt),arg("v2",bte))),
1076 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",flt),arg("v2",sht))),
1077 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",flt),arg("v2",int))),
1078 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",flt),arg("v2",lng))),
1079 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",flt),arg("v2",hge))),
1080 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",hge),arg("v2",dbl))),
1081 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",hge),arg("v2",dbl))),
1082 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",hge),arg("v2",dbl))),
1083 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",hge),arg("v2",dbl))),
1084 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",bte),arg("v2",dbl))),
1085 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",sht),arg("v2",dbl))),
1086 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",int),arg("v2",dbl))),
1087 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",lng),arg("v2",dbl))),
1088 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",hge),arg("v2",dbl))),
1089 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",hge))),
1090 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",dbl),arg("v2",hge))),
1091 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",dbl),arg("v2",hge))),
1092 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",dbl),arg("v2",hge))),
1093 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",bte))),
1094 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",sht))),
1095 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",int))),
1096 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",lng))),
1097 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",hge))),
1098 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",bte))),
1099 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",sht))),
1100 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",int))),
1101 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",lng))),
1102 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",hge))),
1103 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",hge))),
1104 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",hge))),
1105 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",hge))),
1106 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",hge))),
1107 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",hge))),
1108 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",hge))),
1109 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",flt))),
1110 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",dbl))),
1111 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",bte))),
1112 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",sht))),
1113 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",int))),
1114 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",lng))),
1115 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",hge))),
1116 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",hge))),
1117 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",hge))),
1118 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",hge))),
1119 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",hge))),
1120 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",hge))),
1121 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",flt))),
1122 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",dbl))),
1123 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",bte))),
1124 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",sht))),
1125 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",int))),
1126 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",lng))),
1127 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",hge))),
1128 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",hge))),
1129 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",hge))),
1130 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",hge))),
1131 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",hge))),
1132 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",flt))),
1133 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",dbl))),
1134 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",bte))),
1135 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",sht))),
1136 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",int))),
1137 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",lng))),
1138 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",hge))),
1139 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",hge))),
1140 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",hge))),
1141 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",hge))),
1142 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",flt))),
1143 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",dbl))),
1144 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",bte))),
1145 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",bte))),
1146 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
1147 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",sht))),
1148 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",sht))),
1149 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
1150 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",int))),
1151 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",int))),
1152 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
1153 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",lng))),
1154 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",lng))),
1155 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
1156 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",hge))),
1157 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",hge))),
1158 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1159 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",flt))),
1160 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",flt))),
1161 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",flt))),
1162 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",dbl))),
1163 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",dbl))),
1164 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",dbl))),
1165 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",hge))),
1166 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",hge))),
1167 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",hge))),
1168 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",flt),arg("v2",hge))),
1169 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",dbl),arg("v2",hge))),
1170 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",bte))),
1171 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",sht))),
1172 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",int))),
1173 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",lng))),
1174 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",bte),arg("v2",hge))),
1175 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",hge))),
1176 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",hge))),
1177 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",hge))),
1178 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",hge))),
1179 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",bte))),
1180 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",sht))),
1181 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",int))),
1182 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",lng))),
1183 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",sht),arg("v2",hge))),
1184 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",hge))),
1185 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",hge))),
1186 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",hge))),
1187 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",bte))),
1188 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",sht))),
1189 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",int))),
1190 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",lng))),
1191 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",int),arg("v2",hge))),
1192 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",hge))),
1193 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",hge))),
1194 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",bte))),
1195 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",sht))),
1196 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",int))),
1197 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",lng))),
1198 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",lng),arg("v2",hge))),
1199 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",hge))),
1200 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
1201 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",hge),arg("v2",bte))),
1202 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",hge),arg("v2",bte))),
1203 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",hge),arg("v2",bte))),
1204 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",hge),arg("v2",bte))),
1205 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
1206 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",hge),arg("v2",sht))),
1207 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",hge),arg("v2",sht))),
1208 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",hge),arg("v2",sht))),
1209 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
1210 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",hge),arg("v2",int))),
1211 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",hge),arg("v2",int))),
1212 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
1213 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",hge),arg("v2",lng))),
1214 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1215 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",hge),arg("v2",flt))),
1216 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",hge),arg("v2",dbl))),
1217 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",hge))),
1218 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",hge))),
1219 : pattern("calc", "and", CMDvarAND, false, "Return V1 AND V2", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1220 : pattern("calc", "or", CMDvarOR, false, "Return V1 OR V2", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1221 : pattern("calc", "xor", CMDvarXOR, false, "Return V1 XOR V2", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1222 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",hge))),
1223 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",hge))),
1224 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",hge))),
1225 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",hge))),
1226 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
1227 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
1228 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
1229 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
1230 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1231 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",hge))),
1232 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",hge))),
1233 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",hge))),
1234 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",hge))),
1235 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",bte))),
1236 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",sht))),
1237 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",int))),
1238 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",lng))),
1239 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",hge),arg("v1",hge),arg("v2",hge))),
1240 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",hge))),
1241 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",hge))),
1242 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",hge))),
1243 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",hge))),
1244 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",bte))),
1245 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",sht))),
1246 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",int))),
1247 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",lng))),
1248 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",hge))),
1249 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",flt))),
1250 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",dbl))),
1251 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",hge))),
1252 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",hge))),
1253 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",hge))),
1254 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",hge))),
1255 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",hge))),
1256 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",hge))),
1257 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",bte))),
1258 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",sht))),
1259 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",int))),
1260 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",lng))),
1261 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",hge))),
1262 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",flt))),
1263 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",dbl))),
1264 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",hge))),
1265 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",hge))),
1266 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",hge))),
1267 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",hge))),
1268 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",hge))),
1269 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",hge))),
1270 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",bte))),
1271 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",sht))),
1272 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",int))),
1273 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",lng))),
1274 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",hge))),
1275 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",flt))),
1276 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",dbl))),
1277 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",hge))),
1278 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",hge))),
1279 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",hge))),
1280 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",hge))),
1281 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",hge))),
1282 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",hge))),
1283 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",bte))),
1284 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",sht))),
1285 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",int))),
1286 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",lng))),
1287 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",hge))),
1288 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",flt))),
1289 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",dbl))),
1290 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",hge))),
1291 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",hge))),
1292 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",hge))),
1293 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",hge),arg("nil_matches",bit))),
1294 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",hge))),
1295 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",hge),arg("nil_matches",bit))),
1296 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",hge))),
1297 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",hge),arg("nil_matches",bit))),
1298 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",hge))),
1299 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",hge),arg("nil_matches",bit))),
1300 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",bte))),
1301 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",bte),arg("nil_matches",bit))),
1302 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",sht))),
1303 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",sht),arg("nil_matches",bit))),
1304 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",int))),
1305 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",int),arg("nil_matches",bit))),
1306 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",lng))),
1307 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",lng),arg("nil_matches",bit))),
1308 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",hge))),
1309 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",hge),arg("nil_matches",bit))),
1310 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",flt))),
1311 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",flt),arg("nil_matches",bit))),
1312 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",dbl))),
1313 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",dbl),arg("nil_matches",bit))),
1314 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",hge))),
1315 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",hge),arg("nil_matches",bit))),
1316 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",hge))),
1317 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",hge),arg("nil_matches",bit))),
1318 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",hge))),
1319 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",hge),arg("nil_matches",bit))),
1320 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",hge))),
1321 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",hge),arg("nil_matches",bit))),
1322 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",hge))),
1323 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",hge),arg("nil_matches",bit))),
1324 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",hge))),
1325 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",hge),arg("nil_matches",bit))),
1326 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",bte))),
1327 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",bte),arg("nil_matches",bit))),
1328 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",sht))),
1329 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",sht),arg("nil_matches",bit))),
1330 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",int))),
1331 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",int),arg("nil_matches",bit))),
1332 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",lng))),
1333 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",lng),arg("nil_matches",bit))),
1334 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",hge))),
1335 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",hge),arg("nil_matches",bit))),
1336 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",flt))),
1337 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",flt),arg("nil_matches",bit))),
1338 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",hge),arg("v2",dbl))),
1339 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",hge),arg("v2",dbl),arg("nil_matches",bit))),
1340 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",hge))),
1341 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",hge),arg("nil_matches",bit))),
1342 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",hge))),
1343 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",hge),arg("nil_matches",bit))),
1344 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",hge))),
1345 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",hge))),
1346 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",hge))),
1347 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",hge))),
1348 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",bte))),
1349 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",sht))),
1350 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",int))),
1351 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",lng))),
1352 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",hge))),
1353 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",flt))),
1354 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",hge),arg("v2",dbl))),
1355 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",hge))),
1356 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",hge))),
1357 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",hge))),
1358 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",hge))),
1359 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",hge))),
1360 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",hge))),
1361 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",hge))),
1362 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",hge))),
1363 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",void))),
1364 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",bit))),
1365 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",bte))),
1366 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",sht))),
1367 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",int))),
1368 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",lng))),
1369 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",hge))),
1370 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",flt))),
1371 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",dbl))),
1372 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",oid))),
1373 : pattern("calc", "hge", CMDvarCONVERT, false, "Cast VALUE to hge", args(1,2, arg("",hge),arg("v",str))),
1374 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",hge))),
1375 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",hge))),
1376 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",hge))),
1377 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",hge),batarg("b",msk))),
1378 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",hge),batarg("b",msk),arg("nil_if_empty",bit))),
1379 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",hge),batarg("b",msk),batarg("s",oid))),
1380 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",hge),batarg("b",msk),batarg("s",oid),arg("nil_if_empty",bit))),
1381 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",hge),batarg("b",bte))),
1382 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",hge),batarg("b",bte),arg("nil_if_empty",bit))),
1383 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",hge),batarg("b",bte),batarg("s",oid))),
1384 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",hge),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
1385 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",hge),batarg("b",sht))),
1386 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",hge),batarg("b",sht),arg("nil_if_empty",bit))),
1387 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",hge),batarg("b",sht),batarg("s",oid))),
1388 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",hge),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
1389 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",hge),batarg("b",int))),
1390 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",hge),batarg("b",int),arg("nil_if_empty",bit))),
1391 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",hge),batarg("b",int),batarg("s",oid))),
1392 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",hge),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
1393 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",hge),batarg("b",lng))),
1394 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",hge),batarg("b",lng),arg("nil_if_empty",bit))),
1395 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",hge),batarg("b",lng),batarg("s",oid))),
1396 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",hge),batarg("b",lng),batarg("s",oid),arg("nil_if_empty",bit))),
1397 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",hge),batarg("b",hge))),
1398 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",hge),batarg("b",hge),arg("nil_if_empty",bit))),
1399 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",hge),batarg("b",hge),batarg("s",oid))),
1400 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",hge),batarg("b",hge),batarg("s",oid),arg("nil_if_empty",bit))),
1401 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",hge))),
1402 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",hge),arg("nil_if_empty",bit))),
1403 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",hge),batarg("s",oid))),
1404 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",hge),batarg("s",oid),arg("nil_if_empty",bit))),
1405 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",hge),batarg("b",bte))),
1406 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",hge),batarg("b",bte),arg("nil_if_empty",bit))),
1407 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",hge),batarg("b",bte),batarg("s",oid))),
1408 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",hge),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
1409 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",hge),batarg("b",sht))),
1410 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",hge),batarg("b",sht),arg("nil_if_empty",bit))),
1411 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",hge),batarg("b",sht),batarg("s",oid))),
1412 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",hge),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
1413 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",hge),batarg("b",int))),
1414 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",hge),batarg("b",int),arg("nil_if_empty",bit))),
1415 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",hge),batarg("b",int),batarg("s",oid))),
1416 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",hge),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
1417 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",hge),batarg("b",lng))),
1418 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",hge),batarg("b",lng),arg("nil_if_empty",bit))),
1419 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",hge),batarg("b",lng),batarg("s",oid))),
1420 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",hge),batarg("b",lng),batarg("s",oid),arg("nil_if_empty",bit))),
1421 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",hge),batarg("b",hge))),
1422 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",hge),batarg("b",hge),arg("nil_if_empty",bit))),
1423 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",hge),batarg("b",hge),batarg("s",oid))),
1424 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",hge),batarg("b",hge),batarg("s",oid),arg("nil_if_empty",bit))),
1425 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",hge))),
1426 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",hge),arg("nil_if_empty",bit))),
1427 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",hge),batarg("s",oid))),
1428 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",hge),batarg("s",oid),arg("nil_if_empty",bit))),
1429 : #endif
1430 :
1431 : pattern("aggr", "avg", CMDBATavg3, false, "Calculate aggregate average of B.", args(3,6, arg("",bte),arg("",lng),arg("",lng),batarg("b",bte),batarg("s",oid),arg("skip_nils",bit))),
1432 : pattern("aggr", "avg", CMDBATavg3, false, "Calculate aggregate average of B.", args(3,6, arg("",sht),arg("",lng),arg("",lng),batarg("b",sht),batarg("s",oid),arg("skip_nils",bit))),
1433 : pattern("aggr", "avg", CMDBATavg3, false, "Calculate aggregate average of B.", args(3,6, arg("",int),arg("",lng),arg("",lng),batarg("b",int),batarg("s",oid),arg("skip_nils",bit))),
1434 : pattern("aggr", "avg", CMDBATavg3, false, "Calculate aggregate average of B.", args(3,6, arg("",lng),arg("",lng),arg("",lng),batarg("b",lng),batarg("s",oid),arg("skip_nils",bit))),
1435 : #ifdef HAVE_HGE
1436 : pattern("aggr", "avg", CMDBATavg3, false, "Calculate aggregate average of B.", args(3,6, arg("",hge),arg("",lng),arg("",lng),batarg("b",hge),batarg("s",oid),arg("skip_nils",bit))),
1437 : #endif
1438 :
1439 : pattern("aggr", "avg", CMDBATavg3comb, false, "Average aggregation combiner.", args(1,4, arg("",bte),batarg("b",bte),batarg("r",lng),batarg("c",lng))),
1440 : pattern("aggr", "avg", CMDBATavg3comb, false, "Average aggregation combiner.", args(1,4, arg("",sht),batarg("b",sht),batarg("r",lng),batarg("c",lng))),
1441 : pattern("aggr", "avg", CMDBATavg3comb, false, "Average aggregation combiner.", args(1,4, arg("",int),batarg("b",int),batarg("r",lng),batarg("c",lng))),
1442 : pattern("aggr", "avg", CMDBATavg3comb, false, "Average aggregation combiner.", args(1,4, arg("",lng),batarg("b",lng),batarg("r",lng),batarg("c",lng))),
1443 : #ifdef HAVE_HGE
1444 : pattern("aggr", "avg", CMDBATavg3comb, false, "Average aggregation combiner.", args(1,4, arg("",hge),batarg("b",hge),batarg("r",lng),batarg("c",lng))),
1445 : #endif
1446 :
1447 : /* calc ops from json */
1448 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("l",json),arg("r",json))),
1449 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("l",json),arg("r",json),arg("nil_matches",bit))),
1450 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("l",json),arg("r",json))),
1451 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("l",json),arg("r",json),arg("nil_matches",bit))),
1452 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("l",json),arg("r",json))),
1453 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("l",json),arg("r",json))),
1454 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("l",json),arg("r",json))),
1455 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("l",json),arg("r",json))),
1456 : /* calc ops from inet */
1457 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("l",inet),arg("r",inet))),
1458 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("l",inet),arg("r",inet),arg("nil_matches",bit))),
1459 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("l",inet),arg("r",inet))),
1460 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("l",inet),arg("r",inet),arg("nil_matches",bit))),
1461 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("l",inet),arg("r",inet))),
1462 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("l",inet),arg("r",inet))),
1463 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("l",inet),arg("r",inet))),
1464 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("l",inet),arg("r",inet))),
1465 : /* calc ops from uuid */
1466 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("l",uuid),arg("r",uuid))),
1467 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("l",uuid),arg("r",uuid),arg("nil_matches",bit))),
1468 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("l",uuid),arg("r",uuid))),
1469 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("l",uuid),arg("r",uuid),arg("nil_matches",bit))),
1470 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("l",uuid),arg("r",uuid))),
1471 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("l",uuid),arg("r",uuid))),
1472 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("l",uuid),arg("r",uuid))),
1473 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("l",uuid),arg("r",uuid))),
1474 : /* calc ops from mtime */
1475 : pattern("calc", "==", CMDvarEQ, false, "Equality of two dates", args(1,3, arg("",bit),arg("v",date),arg("w",date))),
1476 : pattern("calc", "==", CMDvarEQ, false, "Equality of two dates", args(1,4, arg("",bit),arg("v",date),arg("w",date),arg("nil_matches",bit))),
1477 : pattern("calc", "!=", CMDvarNE, false, "Equality of two dates", args(1,3, arg("",bit),arg("v",date),arg("w",date))),
1478 : pattern("calc", "!=", CMDvarNE, false, "Equality of two dates", args(1,4, arg("",bit),arg("v",date),arg("w",date),arg("nil_matches",bit))),
1479 : pattern("calc", "<", CMDvarLT, false, "Equality of two dates", args(1,3, arg("",bit),arg("v",date),arg("w",date))),
1480 : pattern("calc", "<=", CMDvarLE, false, "Equality of two dates", args(1,3, arg("",bit),arg("v",date),arg("w",date))),
1481 : pattern("calc", ">", CMDvarGT, false, "Equality of two dates", args(1,3, arg("",bit),arg("v",date),arg("w",date))),
1482 : pattern("calc", ">=", CMDvarGE, false, "Equality of two dates", args(1,3, arg("",bit),arg("v",date),arg("w",date))),
1483 : pattern("calc", "==", CMDvarEQ, false, "Equality of two daytimes", args(1,3, arg("",bit),arg("v",daytime),arg("w",daytime))),
1484 : pattern("calc", "==", CMDvarEQ, false, "Equality of two daytimes", args(1,4, arg("",bit),arg("v",daytime),arg("w",daytime),arg("nil_matches",bit))),
1485 : pattern("calc", "!=", CMDvarNE, false, "Equality of two daytimes", args(1,3, arg("",bit),arg("v",daytime),arg("w",daytime))),
1486 : pattern("calc", "!=", CMDvarNE, false, "Equality of two daytimes", args(1,4, arg("",bit),arg("v",daytime),arg("w",daytime),arg("nil_matches",bit))),
1487 : pattern("calc", "<", CMDvarLT, false, "Equality of two daytimes", args(1,3, arg("",bit),arg("v",daytime),arg("w",daytime))),
1488 : pattern("calc", "<=", CMDvarLE, false, "Equality of two daytimes", args(1,3, arg("",bit),arg("v",daytime),arg("w",daytime))),
1489 : pattern("calc", ">", CMDvarGT, false, "Equality of two daytimes", args(1,3, arg("",bit),arg("v",daytime),arg("w",daytime))),
1490 : pattern("calc", ">=", CMDvarGE, false, "Equality of two daytimes", args(1,3, arg("",bit),arg("v",daytime),arg("w",daytime))),
1491 : pattern("calc", "==", CMDvarEQ, false, "Equality of two timestamps", args(1,3, arg("",bit),arg("v",timestamp),arg("w",timestamp))),
1492 : pattern("calc", "==", CMDvarEQ, false, "Equality of two timestamps", args(1,4, arg("",bit),arg("v",timestamp),arg("w",timestamp),arg("nil_matches",bit))),
1493 : pattern("calc", "!=", CMDvarNE, false, "Equality of two timestamps", args(1,3, arg("",bit),arg("v",timestamp),arg("w",timestamp))),
1494 : pattern("calc", "!=", CMDvarNE, false, "Equality of two timestamps", args(1,4, arg("",bit),arg("v",timestamp),arg("w",timestamp),arg("nil_matches",bit))),
1495 : pattern("calc", "<", CMDvarLT, false, "Equality of two timestamps", args(1,3, arg("",bit),arg("v",timestamp),arg("w",timestamp))),
1496 : pattern("calc", "<=", CMDvarLE, false, "Equality of two timestamps", args(1,3, arg("",bit),arg("v",timestamp),arg("w",timestamp))),
1497 : pattern("calc", ">", CMDvarGT, false, "Equality of two timestamps", args(1,3, arg("",bit),arg("v",timestamp),arg("w",timestamp))),
1498 : pattern("calc", ">=", CMDvarGE, false, "Equality of two timestamps", args(1,3, arg("",bit),arg("v",timestamp),arg("w",timestamp))),
1499 : /* calc ops from 01_calc.mal */
1500 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",bte))),
1501 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",sht))),
1502 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",int))),
1503 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",lng))),
1504 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",flt))),
1505 : pattern("calc", "iszero", CMDvarISZERO, false, "Unary check for zero of V", args(1,2, arg("",bit),arg("v",dbl))),
1506 : pattern("calc", "isnil", CMDvarISNIL, false, "Unary check for nil of V", args(1,2, arg("",bit),argany("v",0))),
1507 : pattern("calc", "isnotnil", CMDvarISNOTNIL, false, "Unary check for notnil of V", args(1,2, arg("",bit),argany("v",0))),
1508 : pattern("calc", "not", CMDvarNOT, false, "Return the Boolean inverse", args(1,2, arg("",bit),arg("v",bit))),
1509 : pattern("calc", "not", CMDvarNOT, false, "Unary bitwise not of V", args(1,2, arg("",bte),arg("v",bte))),
1510 : pattern("calc", "not", CMDvarNOT, false, "Unary bitwise not of V", args(1,2, arg("",sht),arg("v",sht))),
1511 : pattern("calc", "not", CMDvarNOT, false, "Unary bitwise not of V", args(1,2, arg("",int),arg("v",int))),
1512 : pattern("calc", "not", CMDvarNOT, false, "Unary bitwise not of V", args(1,2, arg("",lng),arg("v",lng))),
1513 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",bte))),
1514 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",sht))),
1515 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",int))),
1516 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",lng))),
1517 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",flt))),
1518 : pattern("calc", "sign", CMDvarSIGN, false, "Unary sign (-1,0,1) of V", args(1,2, arg("",bte),arg("v",dbl))),
1519 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",bte),arg("v",bte))),
1520 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",sht),arg("v",sht))),
1521 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",int),arg("v",int))),
1522 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",lng),arg("v",lng))),
1523 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",flt),arg("v",flt))),
1524 : pattern("calc", "abs", CMDvarABS, false, "Unary absolute value of V", args(1,2, arg("",dbl),arg("v",dbl))),
1525 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",bte),arg("v",bte))),
1526 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",sht),arg("v",sht))),
1527 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",int),arg("v",int))),
1528 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",lng),arg("v",lng))),
1529 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",flt),arg("v",flt))),
1530 : pattern("calc", "-", CMDvarNEG, false, "Unary negation of V", args(1,2, arg("",dbl),arg("v",dbl))),
1531 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",bte),arg("v",bte))),
1532 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",sht),arg("v",sht))),
1533 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",int),arg("v",int))),
1534 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",lng),arg("v",lng))),
1535 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",flt),arg("v",flt))),
1536 : pattern("calc", "++", CMDvarINCR, false, "Unary V + 1", args(1,2, arg("",dbl),arg("v",dbl))),
1537 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",bte),arg("v",bte))),
1538 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",sht),arg("v",sht))),
1539 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",int),arg("v",int))),
1540 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",lng),arg("v",lng))),
1541 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",flt),arg("v",flt))),
1542 : pattern("calc", "--", CMDvarDECR, false, "Unary V - 1", args(1,2, arg("",dbl),arg("v",dbl))),
1543 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",bte))),
1544 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",bte))),
1545 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",bte))),
1546 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",bte),arg("v2",bte))),
1547 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",sht),arg("v1",bte),arg("v2",bte))),
1548 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
1549 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",sht))),
1550 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",sht))),
1551 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",sht))),
1552 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",bte),arg("v2",sht))),
1553 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",bte),arg("v2",sht))),
1554 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",int))),
1555 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",int))),
1556 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",int))),
1557 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",int),arg("v1",bte),arg("v2",int))),
1558 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",lng))),
1559 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",lng))),
1560 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",bte),arg("v2",lng))),
1561 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",flt))),
1562 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",bte),arg("v2",flt))),
1563 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",dbl))),
1564 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",bte))),
1565 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",bte))),
1566 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",bte))),
1567 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",sht),arg("v2",bte))),
1568 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
1569 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",sht))),
1570 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",sht))),
1571 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",sht))),
1572 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",sht),arg("v2",sht))),
1573 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
1574 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",int))),
1575 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",int))),
1576 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",int))),
1577 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",int),arg("v1",sht),arg("v2",int))),
1578 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",lng))),
1579 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",lng))),
1580 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",sht),arg("v2",lng))),
1581 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",flt))),
1582 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",sht),arg("v2",flt))),
1583 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",dbl))),
1584 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",bte))),
1585 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",bte))),
1586 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",bte))),
1587 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
1588 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",sht))),
1589 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",sht))),
1590 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",sht))),
1591 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
1592 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",int))),
1593 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",int))),
1594 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",int))),
1595 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
1596 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",lng))),
1597 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",lng))),
1598 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",int),arg("v2",lng))),
1599 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",flt))),
1600 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",int),arg("v2",flt))),
1601 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",int),arg("v2",dbl))),
1602 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",bte))),
1603 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",bte))),
1604 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
1605 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",sht))),
1606 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",sht))),
1607 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
1608 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",int))),
1609 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",int))),
1610 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
1611 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",lng))),
1612 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",lng))),
1613 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
1614 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",flt))),
1615 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",lng),arg("v2",flt))),
1616 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",dbl))),
1617 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",bte))),
1618 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",bte))),
1619 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",sht))),
1620 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",sht))),
1621 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",int))),
1622 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",int))),
1623 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",lng))),
1624 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",lng))),
1625 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",flt))),
1626 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",flt))),
1627 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",dbl))),
1628 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",bte))),
1629 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",sht))),
1630 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",int))),
1631 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",lng))),
1632 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",flt))),
1633 : pattern("calc", "+", CMDvarADD, false, "Return V1 + V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",dbl))),
1634 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",bte))),
1635 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",bte))),
1636 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",bte))),
1637 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",bte),arg("v2",bte))),
1638 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",sht),arg("v1",bte),arg("v2",bte))),
1639 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
1640 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",sht))),
1641 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",sht))),
1642 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",sht))),
1643 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",bte),arg("v2",sht))),
1644 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",bte),arg("v2",sht))),
1645 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",int))),
1646 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",int))),
1647 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",int))),
1648 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",int),arg("v1",bte),arg("v2",int))),
1649 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",lng))),
1650 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",lng))),
1651 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",bte),arg("v2",lng))),
1652 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",flt))),
1653 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",bte),arg("v2",flt))),
1654 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",dbl))),
1655 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",bte))),
1656 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",bte))),
1657 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",bte))),
1658 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",sht),arg("v2",bte))),
1659 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
1660 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",sht))),
1661 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",sht))),
1662 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",sht))),
1663 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",sht),arg("v2",sht))),
1664 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
1665 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",int))),
1666 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",int))),
1667 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",int))),
1668 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",int),arg("v1",sht),arg("v2",int))),
1669 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",lng))),
1670 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",lng))),
1671 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",sht),arg("v2",lng))),
1672 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",flt))),
1673 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",sht),arg("v2",flt))),
1674 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",dbl))),
1675 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",bte))),
1676 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",bte))),
1677 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",bte))),
1678 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
1679 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",sht))),
1680 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",sht))),
1681 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",sht))),
1682 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
1683 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",int))),
1684 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",int))),
1685 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",int))),
1686 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
1687 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",lng))),
1688 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",lng))),
1689 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",int),arg("v2",lng))),
1690 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",flt))),
1691 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",int),arg("v2",flt))),
1692 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",int),arg("v2",dbl))),
1693 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",bte))),
1694 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",bte))),
1695 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
1696 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",sht))),
1697 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",sht))),
1698 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
1699 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",int))),
1700 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",int))),
1701 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
1702 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",lng))),
1703 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",lng))),
1704 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
1705 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",flt))),
1706 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",lng),arg("v2",flt))),
1707 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",dbl))),
1708 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",bte))),
1709 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",bte))),
1710 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",sht))),
1711 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",sht))),
1712 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",int))),
1713 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",int))),
1714 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",lng))),
1715 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",lng))),
1716 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",flt))),
1717 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",flt))),
1718 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",dbl))),
1719 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",bte))),
1720 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",sht))),
1721 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",int))),
1722 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",lng))),
1723 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",flt))),
1724 : pattern("calc", "-", CMDvarSUB, false, "Return V1 - V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",dbl))),
1725 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",bte))),
1726 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",bte))),
1727 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",bte))),
1728 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",bte),arg("v2",bte))),
1729 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",sht),arg("v1",bte),arg("v2",bte))),
1730 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
1731 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",sht))),
1732 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",sht))),
1733 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",sht))),
1734 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",bte),arg("v2",sht))),
1735 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",bte),arg("v2",sht))),
1736 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",int))),
1737 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",int))),
1738 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",bte),arg("v2",int))),
1739 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",bte),arg("v2",int))),
1740 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",lng))),
1741 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",bte),arg("v2",lng))),
1742 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",bte),arg("v2",lng))),
1743 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",flt))),
1744 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",bte),arg("v2",flt))),
1745 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",dbl))),
1746 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",bte))),
1747 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",bte))),
1748 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",bte))),
1749 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",sht),arg("v2",bte))),
1750 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
1751 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",sht))),
1752 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",sht))),
1753 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",sht))),
1754 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",int),arg("v1",sht),arg("v2",sht))),
1755 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
1756 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",int))),
1757 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",int))),
1758 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",sht),arg("v2",int))),
1759 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",sht),arg("v2",int))),
1760 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",lng))),
1761 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",sht),arg("v2",lng))),
1762 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",sht),arg("v2",lng))),
1763 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",flt))),
1764 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",sht),arg("v2",flt))),
1765 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",dbl))),
1766 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",bte))),
1767 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",bte))),
1768 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",bte))),
1769 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
1770 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",sht))),
1771 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",sht))),
1772 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",sht))),
1773 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
1774 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",int))),
1775 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",int))),
1776 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",lng),arg("v1",int),arg("v2",int))),
1777 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
1778 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",lng))),
1779 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",int),arg("v2",lng))),
1780 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",int),arg("v2",lng))),
1781 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",int),arg("v2",flt))),
1782 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",int),arg("v2",flt))),
1783 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",int),arg("v2",dbl))),
1784 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",bte))),
1785 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",bte))),
1786 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
1787 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",sht))),
1788 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",sht))),
1789 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
1790 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",int))),
1791 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",int))),
1792 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
1793 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",lng))),
1794 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",flt),arg("v1",lng),arg("v2",lng))),
1795 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
1796 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",flt))),
1797 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",lng),arg("v2",flt))),
1798 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",dbl))),
1799 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",bte))),
1800 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",bte))),
1801 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",sht))),
1802 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",sht))),
1803 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",int))),
1804 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",int))),
1805 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",lng))),
1806 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",lng))),
1807 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, guarantee no overflow by returning larger type", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",flt))),
1808 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",flt),arg("v1",flt),arg("v2",flt))),
1809 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",dbl))),
1810 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",bte))),
1811 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",sht))),
1812 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",int))),
1813 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",lng))),
1814 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",flt))),
1815 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",dbl))),
1816 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",bte),arg("v2",flt))),
1817 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",sht),arg("v2",flt))),
1818 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",bte),arg("v2",flt))),
1819 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",flt))),
1820 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",int),arg("v2",flt))),
1821 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",int),arg("v2",flt))),
1822 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",bte),arg("v2",flt))),
1823 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",sht),arg("v2",flt))),
1824 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",flt))),
1825 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",lng),arg("v2",flt))),
1826 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",lng),arg("v2",flt))),
1827 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",lng),arg("v2",flt))),
1828 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",bte),arg("v2",flt))),
1829 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",sht),arg("v2",flt))),
1830 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",int),arg("v2",flt))),
1831 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",flt))),
1832 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",flt),arg("v2",bte))),
1833 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",flt),arg("v2",sht))),
1834 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",flt),arg("v2",bte))),
1835 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",flt),arg("v2",sht))),
1836 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",flt),arg("v2",int))),
1837 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",flt),arg("v2",int))),
1838 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",flt),arg("v2",bte))),
1839 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",flt),arg("v2",sht))),
1840 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",flt),arg("v2",int))),
1841 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",flt),arg("v2",lng))),
1842 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",flt),arg("v2",lng))),
1843 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",flt),arg("v2",lng))),
1844 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",flt),arg("v2",bte))),
1845 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",flt),arg("v2",sht))),
1846 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",flt),arg("v2",int))),
1847 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",flt),arg("v2",lng))),
1848 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",bte),arg("v2",dbl))),
1849 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",sht),arg("v2",dbl))),
1850 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",bte),arg("v2",dbl))),
1851 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",sht),arg("v2",dbl))),
1852 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",int),arg("v2",dbl))),
1853 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",int),arg("v2",dbl))),
1854 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",bte),arg("v2",dbl))),
1855 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",sht),arg("v2",dbl))),
1856 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",int),arg("v2",dbl))),
1857 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",lng),arg("v2",dbl))),
1858 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",lng),arg("v2",dbl))),
1859 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",lng),arg("v2",dbl))),
1860 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",bte),arg("v2",dbl))),
1861 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",sht),arg("v2",dbl))),
1862 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",int),arg("v2",dbl))),
1863 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",lng),arg("v2",dbl))),
1864 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",bte))),
1865 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",sht))),
1866 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",dbl),arg("v2",bte))),
1867 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",dbl),arg("v2",sht))),
1868 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",int))),
1869 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",dbl),arg("v2",int))),
1870 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",dbl),arg("v2",bte))),
1871 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",dbl),arg("v2",sht))),
1872 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",dbl),arg("v2",int))),
1873 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",lng))),
1874 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",sht),arg("v1",dbl),arg("v2",lng))),
1875 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",int),arg("v1",dbl),arg("v2",lng))),
1876 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",dbl),arg("v2",bte))),
1877 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",dbl),arg("v2",sht))),
1878 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",dbl),arg("v2",int))),
1879 : pattern("calc", "*", CMDvarMUL, false, "Return V1 * V2, signal error on overflow", args(1,3, arg("",lng),arg("v1",dbl),arg("v2",lng))),
1880 : command("calc", "+", CMDvarADDstr, false, "Concatenate LEFT and RIGHT", args(1,3, arg("",str),arg("v1",str),arg("v2",str))),
1881 : command("calc", "+", CMDvarADDstrint, false, "Concatenate LEFT and string representation of RIGHT", args(1,3, arg("",str),arg("v1",str),arg("i",int))),
1882 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",bte))),
1883 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",bte))),
1884 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",bte))),
1885 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",bte))),
1886 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",bte))),
1887 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
1888 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",sht))),
1889 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",sht))),
1890 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",sht))),
1891 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",sht))),
1892 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",sht))),
1893 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",sht))),
1894 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",int))),
1895 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",int))),
1896 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",int))),
1897 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",int))),
1898 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",int))),
1899 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",int))),
1900 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",lng))),
1901 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",lng))),
1902 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",lng))),
1903 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",lng))),
1904 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",lng))),
1905 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",lng))),
1906 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",flt))),
1907 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",flt))),
1908 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",flt))),
1909 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",flt))),
1910 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",flt))),
1911 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",flt))),
1912 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",dbl))),
1913 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",dbl))),
1914 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",dbl))),
1915 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",dbl))),
1916 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",dbl))),
1917 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",dbl))),
1918 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",bte))),
1919 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",bte))),
1920 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",bte))),
1921 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",bte))),
1922 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
1923 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",sht))),
1924 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",sht))),
1925 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",sht))),
1926 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",sht))),
1927 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
1928 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",int))),
1929 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",int))),
1930 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",int))),
1931 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",int))),
1932 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",int))),
1933 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",lng))),
1934 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",lng))),
1935 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",lng))),
1936 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",lng))),
1937 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",lng))),
1938 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",flt))),
1939 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",flt))),
1940 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",flt))),
1941 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",flt))),
1942 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",flt))),
1943 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",dbl))),
1944 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",dbl))),
1945 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",dbl))),
1946 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",dbl))),
1947 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",dbl))),
1948 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",bte))),
1949 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",bte))),
1950 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",bte))),
1951 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
1952 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",sht))),
1953 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",sht))),
1954 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",sht))),
1955 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
1956 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",int))),
1957 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",int))),
1958 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",int))),
1959 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
1960 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",lng))),
1961 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",lng))),
1962 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",lng))),
1963 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",lng))),
1964 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",flt))),
1965 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",flt))),
1966 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",flt))),
1967 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",flt))),
1968 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",dbl))),
1969 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",dbl))),
1970 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",dbl))),
1971 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",dbl))),
1972 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",bte))),
1973 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",bte))),
1974 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
1975 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",sht))),
1976 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",sht))),
1977 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
1978 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",int))),
1979 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",int))),
1980 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
1981 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",lng))),
1982 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",lng))),
1983 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
1984 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",flt))),
1985 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",flt))),
1986 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",flt))),
1987 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",dbl))),
1988 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",dbl))),
1989 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",dbl))),
1990 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",bte))),
1991 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",bte))),
1992 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",sht))),
1993 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",sht))),
1994 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",int))),
1995 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",int))),
1996 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",lng))),
1997 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",lng))),
1998 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",flt))),
1999 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",flt))),
2000 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",dbl))),
2001 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",dbl))),
2002 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",bte))),
2003 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",sht))),
2004 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",int))),
2005 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",lng))),
2006 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",flt))),
2007 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",dbl))),
2008 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",flt),arg("v2",bte))),
2009 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",flt),arg("v2",sht))),
2010 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",flt),arg("v2",int))),
2011 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",flt),arg("v2",lng))),
2012 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",bte))),
2013 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",dbl),arg("v2",sht))),
2014 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",dbl),arg("v2",int))),
2015 : pattern("calc", "/", CMDvarDIV, false, "Return V1 / V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",dbl),arg("v2",lng))),
2016 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",bte))),
2017 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",bte))),
2018 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",bte))),
2019 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2020 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",sht))),
2021 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",sht))),
2022 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",sht))),
2023 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",sht))),
2024 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",int))),
2025 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",int))),
2026 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",int))),
2027 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",int))),
2028 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",bte),arg("v2",lng))),
2029 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",bte),arg("v2",lng))),
2030 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",bte),arg("v2",lng))),
2031 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",bte),arg("v2",lng))),
2032 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",bte),arg("v2",flt))),
2033 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",bte),arg("v2",dbl))),
2034 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",bte))),
2035 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",bte))),
2036 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
2037 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",sht),arg("v2",bte))),
2038 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",sht))),
2039 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",sht))),
2040 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
2041 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",int))),
2042 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",int))),
2043 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",int))),
2044 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",sht),arg("v2",lng))),
2045 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",sht),arg("v2",lng))),
2046 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",sht),arg("v2",lng))),
2047 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",sht),arg("v2",flt))),
2048 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",sht),arg("v2",dbl))),
2049 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",bte))),
2050 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
2051 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",int),arg("v2",bte))),
2052 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",int),arg("v2",bte))),
2053 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",sht))),
2054 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
2055 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",int),arg("v2",sht))),
2056 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",int))),
2057 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
2058 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",int),arg("v2",lng))),
2059 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",int),arg("v2",lng))),
2060 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",int),arg("v2",flt))),
2061 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",int),arg("v2",dbl))),
2062 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
2063 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",lng),arg("v2",bte))),
2064 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",lng),arg("v2",bte))),
2065 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",bte),arg("v1",lng),arg("v2",bte))),
2066 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
2067 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",lng),arg("v2",sht))),
2068 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",sht),arg("v1",lng),arg("v2",sht))),
2069 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
2070 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",int),arg("v1",lng),arg("v2",int))),
2071 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
2072 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",lng),arg("v2",flt))),
2073 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",lng),arg("v2",dbl))),
2074 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",bte))),
2075 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",sht))),
2076 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",int))),
2077 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",lng))),
2078 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",flt),arg("v1",flt),arg("v2",flt))),
2079 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",flt),arg("v2",dbl))),
2080 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",bte))),
2081 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",sht))),
2082 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",int))),
2083 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",lng))),
2084 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",flt))),
2085 : pattern("calc", "%", CMDvarMOD, false, "Return V1 % V2, signal error on divide by zero", args(1,3, arg("",dbl),arg("v1",dbl),arg("v2",dbl))),
2086 : pattern("mmath", "fmod", CMDvarMOD, false, "", args(1,3, arg("",flt),arg("y",flt),arg("x",flt))),
2087 : pattern("mmath", "fmod", CMDvarMOD, false, "The fmod(x,y) function computes the remainder of dividing x by y.\nThe return value is x - n * y, where n is the quotient of x / y,\nrounded towards zero to an integer.", args(1,3, arg("",dbl),arg("y",dbl),arg("x",dbl))),
2088 : pattern("calc", "and", CMDvarAND, false, "Return V1 AND V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2089 : pattern("calc", "and", CMDvarAND, false, "Return V1 AND V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2090 : pattern("calc", "and", CMDvarAND, false, "Return V1 AND V2", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
2091 : pattern("calc", "and", CMDvarAND, false, "Return V1 AND V2", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
2092 : pattern("calc", "and", CMDvarAND, false, "Return V1 AND V2", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
2093 : pattern("calc", "or", CMDvarOR, false, "Return V1 OR V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2094 : pattern("calc", "or", CMDvarOR, false, "Return V1 OR V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2095 : pattern("calc", "or", CMDvarOR, false, "Return V1 OR V2", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
2096 : pattern("calc", "or", CMDvarOR, false, "Return V1 OR V2", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
2097 : pattern("calc", "or", CMDvarOR, false, "Return V1 OR V2", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
2098 : pattern("calc", "xor", CMDvarXOR, false, "Return V1 XOR V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2099 : pattern("calc", "xor", CMDvarXOR, false, "Return V1 XOR V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2100 : pattern("calc", "xor", CMDvarXOR, false, "Return V1 XOR V2", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
2101 : pattern("calc", "xor", CMDvarXOR, false, "Return V1 XOR V2", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
2102 : pattern("calc", "xor", CMDvarXOR, false, "Return V1 XOR V2", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
2103 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2104 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",sht))),
2105 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",int))),
2106 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",lng))),
2107 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
2108 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
2109 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",int))),
2110 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",lng))),
2111 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
2112 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
2113 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
2114 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",lng))),
2115 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
2116 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
2117 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
2118 : pattern("calc", "<<", CMDvarLSH, false, "Return V1 << V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
2119 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2120 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",sht))),
2121 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",int))),
2122 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",bte),arg("v1",bte),arg("v2",lng))),
2123 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",bte))),
2124 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",sht))),
2125 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",int))),
2126 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",sht),arg("v1",sht),arg("v2",lng))),
2127 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",bte))),
2128 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",sht))),
2129 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",int))),
2130 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",int),arg("v1",int),arg("v2",lng))),
2131 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",bte))),
2132 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",sht))),
2133 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",int))),
2134 : pattern("calc", ">>", CMDvarRSH, false, "Return V1 >> V2, raise error on out of range second operand", args(1,3, arg("",lng),arg("v1",lng),arg("v2",lng))),
2135 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2136 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",str),arg("v2",str))),
2137 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",blob),arg("v2",blob))),
2138 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",oid),arg("v2",oid))),
2139 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",bte))),
2140 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",sht))),
2141 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",int))),
2142 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",lng))),
2143 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",flt))),
2144 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",dbl))),
2145 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",bte))),
2146 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",sht))),
2147 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",int))),
2148 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",lng))),
2149 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",flt))),
2150 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",dbl))),
2151 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",bte))),
2152 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",sht))),
2153 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",int))),
2154 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",lng))),
2155 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",flt))),
2156 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",dbl))),
2157 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",bte))),
2158 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",sht))),
2159 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",int))),
2160 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",lng))),
2161 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",flt))),
2162 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",dbl))),
2163 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",bte))),
2164 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",sht))),
2165 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",int))),
2166 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",lng))),
2167 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",flt))),
2168 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",dbl))),
2169 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",bte))),
2170 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",sht))),
2171 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",int))),
2172 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",lng))),
2173 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",flt))),
2174 : pattern("calc", "<", CMDvarLT, false, "Return V1 < V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",dbl))),
2175 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2176 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",str),arg("v2",str))),
2177 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",blob),arg("v2",blob))),
2178 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",oid),arg("v2",oid))),
2179 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",bte))),
2180 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",sht))),
2181 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",int))),
2182 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",lng))),
2183 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",flt))),
2184 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",dbl))),
2185 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",bte))),
2186 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",sht))),
2187 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",int))),
2188 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",lng))),
2189 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",flt))),
2190 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",dbl))),
2191 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",bte))),
2192 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",sht))),
2193 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",int))),
2194 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",lng))),
2195 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",flt))),
2196 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",dbl))),
2197 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",bte))),
2198 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",sht))),
2199 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",int))),
2200 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",lng))),
2201 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",flt))),
2202 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",dbl))),
2203 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",bte))),
2204 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",sht))),
2205 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",int))),
2206 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",lng))),
2207 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",flt))),
2208 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",dbl))),
2209 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",bte))),
2210 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",sht))),
2211 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",int))),
2212 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",lng))),
2213 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",flt))),
2214 : pattern("calc", "<=", CMDvarLE, false, "Return V1 <= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",dbl))),
2215 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2216 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",str),arg("v2",str))),
2217 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",blob),arg("v2",blob))),
2218 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",oid),arg("v2",oid))),
2219 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",bte))),
2220 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",sht))),
2221 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",int))),
2222 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",lng))),
2223 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",flt))),
2224 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",dbl))),
2225 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",bte))),
2226 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",sht))),
2227 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",int))),
2228 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",lng))),
2229 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",flt))),
2230 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",dbl))),
2231 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",bte))),
2232 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",sht))),
2233 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",int))),
2234 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",lng))),
2235 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",flt))),
2236 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",dbl))),
2237 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",bte))),
2238 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",sht))),
2239 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",int))),
2240 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",lng))),
2241 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",flt))),
2242 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",dbl))),
2243 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",bte))),
2244 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",sht))),
2245 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",int))),
2246 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",lng))),
2247 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",flt))),
2248 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",dbl))),
2249 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",bte))),
2250 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",sht))),
2251 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",int))),
2252 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",lng))),
2253 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",flt))),
2254 : pattern("calc", ">", CMDvarGT, false, "Return V1 > V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",dbl))),
2255 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2256 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",str),arg("v2",str))),
2257 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",blob),arg("v2",blob))),
2258 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",oid),arg("v2",oid))),
2259 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",bte))),
2260 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",sht))),
2261 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",int))),
2262 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",lng))),
2263 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",flt))),
2264 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",dbl))),
2265 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",bte))),
2266 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",sht))),
2267 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",int))),
2268 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",lng))),
2269 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",flt))),
2270 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",dbl))),
2271 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",bte))),
2272 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",sht))),
2273 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",int))),
2274 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",lng))),
2275 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",flt))),
2276 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",dbl))),
2277 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",bte))),
2278 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",sht))),
2279 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",int))),
2280 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",lng))),
2281 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",flt))),
2282 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",dbl))),
2283 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",bte))),
2284 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",sht))),
2285 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",int))),
2286 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",lng))),
2287 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",flt))),
2288 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",dbl))),
2289 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",bte))),
2290 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",sht))),
2291 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",int))),
2292 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",lng))),
2293 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",flt))),
2294 : pattern("calc", ">=", CMDvarGE, false, "Return V1 >= V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",dbl))),
2295 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2296 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bit),arg("v2",bit),arg("nil_matches",bit))),
2297 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",str),arg("v2",str))),
2298 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",str),arg("v2",str),arg("nil_matches",bit))),
2299 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",blob),arg("v2",blob))),
2300 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",blob),arg("v2",blob),arg("nil_matches",bit))),
2301 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",oid),arg("v2",oid))),
2302 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",oid),arg("v2",oid),arg("nil_matches",bit))),
2303 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",bte))),
2304 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",bte),arg("nil_matches",bit))),
2305 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",sht))),
2306 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",sht),arg("nil_matches",bit))),
2307 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",int))),
2308 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",int),arg("nil_matches",bit))),
2309 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",lng))),
2310 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",lng),arg("nil_matches",bit))),
2311 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",flt))),
2312 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",flt),arg("nil_matches",bit))),
2313 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",dbl))),
2314 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",dbl),arg("nil_matches",bit))),
2315 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",bte))),
2316 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",bte),arg("nil_matches",bit))),
2317 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",sht))),
2318 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",sht),arg("nil_matches",bit))),
2319 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",int))),
2320 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",int),arg("nil_matches",bit))),
2321 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",lng))),
2322 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",lng),arg("nil_matches",bit))),
2323 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",flt))),
2324 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",flt),arg("nil_matches",bit))),
2325 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",dbl))),
2326 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",dbl),arg("nil_matches",bit))),
2327 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",bte))),
2328 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",bte),arg("nil_matches",bit))),
2329 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",sht))),
2330 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",sht),arg("nil_matches",bit))),
2331 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",int))),
2332 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",int),arg("nil_matches",bit))),
2333 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",lng))),
2334 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",lng),arg("nil_matches",bit))),
2335 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",flt))),
2336 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",flt),arg("nil_matches",bit))),
2337 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",dbl))),
2338 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",dbl),arg("nil_matches",bit))),
2339 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",bte))),
2340 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",bte),arg("nil_matches",bit))),
2341 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",sht))),
2342 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",sht),arg("nil_matches",bit))),
2343 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",int))),
2344 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",int),arg("nil_matches",bit))),
2345 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",lng))),
2346 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",lng),arg("nil_matches",bit))),
2347 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",flt))),
2348 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",flt),arg("nil_matches",bit))),
2349 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",dbl))),
2350 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",dbl),arg("nil_matches",bit))),
2351 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",bte))),
2352 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",bte),arg("nil_matches",bit))),
2353 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",sht))),
2354 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",sht),arg("nil_matches",bit))),
2355 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",int))),
2356 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",int),arg("nil_matches",bit))),
2357 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",lng))),
2358 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",lng),arg("nil_matches",bit))),
2359 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",flt))),
2360 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",flt),arg("nil_matches",bit))),
2361 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",dbl))),
2362 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",dbl),arg("nil_matches",bit))),
2363 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",bte))),
2364 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",bte),arg("nil_matches",bit))),
2365 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",sht))),
2366 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",sht),arg("nil_matches",bit))),
2367 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",int))),
2368 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",int),arg("nil_matches",bit))),
2369 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",lng))),
2370 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",lng),arg("nil_matches",bit))),
2371 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",flt))),
2372 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",flt),arg("nil_matches",bit))),
2373 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",dbl))),
2374 : pattern("calc", "==", CMDvarEQ, false, "Return V1 == V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",dbl),arg("nil_matches",bit))),
2375 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bit),arg("v2",bit))),
2376 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bit),arg("v2",bit),arg("nil_matches",bit))),
2377 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",str),arg("v2",str))),
2378 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",str),arg("v2",str),arg("nil_matches",bit))),
2379 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",blob),arg("v2",blob))),
2380 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",blob),arg("v2",blob),arg("nil_matches",bit))),
2381 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",oid),arg("v2",oid))),
2382 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",oid),arg("v2",oid),arg("nil_matches",bit))),
2383 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",bte))),
2384 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",bte),arg("nil_matches",bit))),
2385 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",sht))),
2386 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",sht),arg("nil_matches",bit))),
2387 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",int))),
2388 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",int),arg("nil_matches",bit))),
2389 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",lng))),
2390 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",lng),arg("nil_matches",bit))),
2391 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",flt))),
2392 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",flt),arg("nil_matches",bit))),
2393 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",bte),arg("v2",dbl))),
2394 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",bte),arg("v2",dbl),arg("nil_matches",bit))),
2395 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",bte))),
2396 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",bte),arg("nil_matches",bit))),
2397 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",sht))),
2398 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",sht),arg("nil_matches",bit))),
2399 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",int))),
2400 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",int),arg("nil_matches",bit))),
2401 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",lng))),
2402 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",lng),arg("nil_matches",bit))),
2403 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",flt))),
2404 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",flt),arg("nil_matches",bit))),
2405 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",sht),arg("v2",dbl))),
2406 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",sht),arg("v2",dbl),arg("nil_matches",bit))),
2407 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",bte))),
2408 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",bte),arg("nil_matches",bit))),
2409 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",sht))),
2410 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",sht),arg("nil_matches",bit))),
2411 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",int))),
2412 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",int),arg("nil_matches",bit))),
2413 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",lng))),
2414 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",lng),arg("nil_matches",bit))),
2415 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",flt))),
2416 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",flt),arg("nil_matches",bit))),
2417 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",int),arg("v2",dbl))),
2418 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",int),arg("v2",dbl),arg("nil_matches",bit))),
2419 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",bte))),
2420 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",bte),arg("nil_matches",bit))),
2421 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",sht))),
2422 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",sht),arg("nil_matches",bit))),
2423 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",int))),
2424 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",int),arg("nil_matches",bit))),
2425 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",lng))),
2426 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",lng),arg("nil_matches",bit))),
2427 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",flt))),
2428 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",flt),arg("nil_matches",bit))),
2429 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",lng),arg("v2",dbl))),
2430 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",lng),arg("v2",dbl),arg("nil_matches",bit))),
2431 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",bte))),
2432 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",bte),arg("nil_matches",bit))),
2433 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",sht))),
2434 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",sht),arg("nil_matches",bit))),
2435 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",int))),
2436 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",int),arg("nil_matches",bit))),
2437 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",lng))),
2438 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",lng),arg("nil_matches",bit))),
2439 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",flt))),
2440 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",flt),arg("nil_matches",bit))),
2441 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",flt),arg("v2",dbl))),
2442 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",flt),arg("v2",dbl),arg("nil_matches",bit))),
2443 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",bte))),
2444 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",bte),arg("nil_matches",bit))),
2445 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",sht))),
2446 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",sht),arg("nil_matches",bit))),
2447 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",int))),
2448 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",int),arg("nil_matches",bit))),
2449 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",lng))),
2450 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",lng),arg("nil_matches",bit))),
2451 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",flt))),
2452 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",flt),arg("nil_matches",bit))),
2453 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,3, arg("",bit),arg("v1",dbl),arg("v2",dbl))),
2454 : pattern("calc", "!=", CMDvarNE, false, "Return V1 != V2", args(1,4, arg("",bit),arg("v1",dbl),arg("v2",dbl),arg("nil_matches",bit))),
2455 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bit),arg("v2",bit))),
2456 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",str),arg("v2",str))),
2457 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",oid),arg("v2",oid))),
2458 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",bte))),
2459 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",sht))),
2460 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",int))),
2461 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",lng))),
2462 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",flt))),
2463 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",bte),arg("v2",dbl))),
2464 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",bte))),
2465 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",sht))),
2466 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",int))),
2467 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",lng))),
2468 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",flt))),
2469 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",sht),arg("v2",dbl))),
2470 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",bte))),
2471 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",sht))),
2472 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",int))),
2473 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",lng))),
2474 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",flt))),
2475 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",int),arg("v2",dbl))),
2476 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",bte))),
2477 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",sht))),
2478 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",int))),
2479 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",lng))),
2480 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",flt))),
2481 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",lng),arg("v2",dbl))),
2482 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",bte))),
2483 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",sht))),
2484 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",int))),
2485 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",lng))),
2486 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",flt))),
2487 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",flt),arg("v2",dbl))),
2488 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",bte))),
2489 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",sht))),
2490 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",int))),
2491 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",lng))),
2492 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",flt))),
2493 : pattern("calc", "cmp", CMDvarCMP, false, "Return -1/0/1 if V1 </==/> V2", args(1,3, arg("",bte),arg("v1",dbl),arg("v2",dbl))),
2494 : pattern("calc", "between", CMDvarBETWEEN, false, "B between LO and HI inclusive", args(1,9, arg("",bit),argany("b",1),argany("lo",1),argany("hi",1),arg("sym",bit),arg("linc",bit),arg("hinc",bit),arg("nils_false",bit),arg("anti",bit))),
2495 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",void))),
2496 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",bit))),
2497 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",bte))),
2498 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",sht))),
2499 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",int))),
2500 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",lng))),
2501 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",flt))),
2502 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",dbl))),
2503 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",oid))),
2504 : pattern("calc", "void", CMDvarCONVERT, false, "Cast VALUE to void", args(1,2, arg("",void),arg("v",str))),
2505 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",void))),
2506 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",bit))),
2507 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",bte))),
2508 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",sht))),
2509 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",int))),
2510 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",lng))),
2511 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",flt))),
2512 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",dbl))),
2513 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",oid))),
2514 : pattern("calc", "bit", CMDvarCONVERT, false, "Cast VALUE to bit", args(1,2, arg("",bit),arg("v",str))),
2515 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",void))),
2516 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",bit))),
2517 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",bte))),
2518 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",sht))),
2519 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",int))),
2520 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",lng))),
2521 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",flt))),
2522 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",dbl))),
2523 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",oid))),
2524 : pattern("calc", "bte", CMDvarCONVERT, false, "Cast VALUE to bte", args(1,2, arg("",bte),arg("v",str))),
2525 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",void))),
2526 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",bit))),
2527 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",bte))),
2528 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",sht))),
2529 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",int))),
2530 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",lng))),
2531 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",flt))),
2532 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",dbl))),
2533 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",oid))),
2534 : pattern("calc", "sht", CMDvarCONVERT, false, "Cast VALUE to sht", args(1,2, arg("",sht),arg("v",str))),
2535 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",void))),
2536 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",bit))),
2537 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",bte))),
2538 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",sht))),
2539 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",int))),
2540 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",lng))),
2541 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",flt))),
2542 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",dbl))),
2543 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",oid))),
2544 : pattern("calc", "int", CMDvarCONVERT, false, "Cast VALUE to int", args(1,2, arg("",int),arg("v",str))),
2545 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",void))),
2546 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",bit))),
2547 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",bte))),
2548 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",sht))),
2549 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",int))),
2550 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",lng))),
2551 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",flt))),
2552 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",dbl))),
2553 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",oid))),
2554 : pattern("calc", "lng", CMDvarCONVERT, false, "Cast VALUE to lng", args(1,2, arg("",lng),arg("v",str))),
2555 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",void))),
2556 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",bit))),
2557 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",bte))),
2558 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",sht))),
2559 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",int))),
2560 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",lng))),
2561 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",flt))),
2562 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",dbl))),
2563 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",oid))),
2564 : pattern("calc", "flt", CMDvarCONVERT, false, "Cast VALUE to flt", args(1,2, arg("",flt),arg("v",str))),
2565 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",void))),
2566 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",bit))),
2567 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",bte))),
2568 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",sht))),
2569 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",int))),
2570 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",lng))),
2571 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",flt))),
2572 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",dbl))),
2573 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",oid))),
2574 : pattern("calc", "dbl", CMDvarCONVERT, false, "Cast VALUE to dbl", args(1,2, arg("",dbl),arg("v",str))),
2575 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",void))),
2576 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",bit))),
2577 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",bte))),
2578 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",sht))),
2579 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",int))),
2580 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",lng))),
2581 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",flt))),
2582 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",dbl))),
2583 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",oid))),
2584 : pattern("calc", "oid", CMDvarCONVERT, false, "Cast VALUE to oid", args(1,2, arg("",oid),arg("v",str))),
2585 : pattern("calc", "str", CMDvarCONVERT, false, "Cast VALUE to str", args(1,2, arg("",str),argany("v",0))),
2586 : pattern("calc", "min", CALCmin, false, "Return min of V1 and V2", args(1,3, argany("",1),argany("v1",1),argany("v2",1))),
2587 : pattern("calc", "min_no_nil", CALCmin_no_nil, false, "Return min of V1 and V2, ignoring nil values", args(1,3, argany("",1),argany("v1",1),argany("v2",1))),
2588 : pattern("calc", "max", CALCmax, false, "Return max of V1 and V2", args(1,3, argany("",1),argany("v1",1),argany("v2",1))),
2589 : pattern("calc", "max_no_nil", CALCmax_no_nil, false, "Return max of V1 and V2, ignoring nil values", args(1,3, argany("",1),argany("v1",1),argany("v2",1))),
2590 : command("calc", "ptr", CMDvarCONVERTptr, false, "Cast VALUE to ptr", args(1,2, arg("",ptr),arg("v",ptr))),
2591 : pattern("calc", "ifthenelse", CALCswitchbit, false, "If VALUE is true return MIDDLE else RIGHT", args(1,4, argany("",1),arg("b",bit),argany("t",1),argany("f",1))),
2592 : command("calc", "length", CMDstrlength, false, "Length of STRING", args(1,2, arg("",int),arg("s",str))),
2593 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",bte),batarg("b",msk))),
2594 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",bte),batarg("b",msk),arg("nil_if_empty",bit))),
2595 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",bte),batarg("b",msk),batarg("s",oid))),
2596 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",bte),batarg("b",msk),batarg("s",oid),arg("nil_if_empty",bit))),
2597 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",sht),batarg("b",msk))),
2598 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",sht),batarg("b",msk),arg("nil_if_empty",bit))),
2599 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",sht),batarg("b",msk),batarg("s",oid))),
2600 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",sht),batarg("b",msk),batarg("s",oid),arg("nil_if_empty",bit))),
2601 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",int),batarg("b",msk))),
2602 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",int),batarg("b",msk),arg("nil_if_empty",bit))),
2603 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",int),batarg("b",msk),batarg("s",oid))),
2604 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",int),batarg("b",msk),batarg("s",oid),arg("nil_if_empty",bit))),
2605 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",lng),batarg("b",msk))),
2606 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",lng),batarg("b",msk),arg("nil_if_empty",bit))),
2607 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",lng),batarg("b",msk),batarg("s",oid))),
2608 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",lng),batarg("b",msk),batarg("s",oid),arg("nil_if_empty",bit))),
2609 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",msk))),
2610 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",msk),arg("nil_if_empty",bit))),
2611 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",msk),batarg("s",oid))),
2612 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",msk),batarg("s",oid),arg("nil_if_empty",bit))),
2613 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",bte),batarg("b",bte))),
2614 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",bte),batarg("b",bte),arg("nil_if_empty",bit))),
2615 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",bte),batarg("b",bte),batarg("s",oid))),
2616 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",bte),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2617 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",sht),batarg("b",bte))),
2618 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",sht),batarg("b",bte),arg("nil_if_empty",bit))),
2619 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",sht),batarg("b",bte),batarg("s",oid))),
2620 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",sht),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2621 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",int),batarg("b",bte))),
2622 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",int),batarg("b",bte),arg("nil_if_empty",bit))),
2623 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",int),batarg("b",bte),batarg("s",oid))),
2624 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",int),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2625 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",lng),batarg("b",bte))),
2626 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",lng),batarg("b",bte),arg("nil_if_empty",bit))),
2627 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",lng),batarg("b",bte),batarg("s",oid))),
2628 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",lng),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2629 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",bte))),
2630 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",bte),arg("nil_if_empty",bit))),
2631 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",bte),batarg("s",oid))),
2632 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2633 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",sht),batarg("b",sht))),
2634 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",sht),batarg("b",sht),arg("nil_if_empty",bit))),
2635 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",sht),batarg("b",sht),batarg("s",oid))),
2636 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",sht),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2637 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",int),batarg("b",sht))),
2638 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",int),batarg("b",sht),arg("nil_if_empty",bit))),
2639 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",int),batarg("b",sht),batarg("s",oid))),
2640 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",int),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2641 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",lng),batarg("b",sht))),
2642 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",lng),batarg("b",sht),arg("nil_if_empty",bit))),
2643 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",lng),batarg("b",sht),batarg("s",oid))),
2644 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",lng),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2645 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",sht))),
2646 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",sht),arg("nil_if_empty",bit))),
2647 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",sht),batarg("s",oid))),
2648 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2649 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",int),batarg("b",int))),
2650 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",int),batarg("b",int),arg("nil_if_empty",bit))),
2651 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",int),batarg("b",int),batarg("s",oid))),
2652 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",int),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
2653 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",lng),batarg("b",int))),
2654 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",lng),batarg("b",int),arg("nil_if_empty",bit))),
2655 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",lng),batarg("b",int),batarg("s",oid))),
2656 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",lng),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
2657 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",int))),
2658 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",int),arg("nil_if_empty",bit))),
2659 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",int),batarg("s",oid))),
2660 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
2661 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",lng),batarg("b",lng))),
2662 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",lng),batarg("b",lng),arg("nil_if_empty",bit))),
2663 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",lng),batarg("b",lng),batarg("s",oid))),
2664 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",lng),batarg("b",lng),batarg("s",oid),arg("nil_if_empty",bit))),
2665 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",lng))),
2666 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",lng),arg("nil_if_empty",bit))),
2667 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",lng),batarg("s",oid))),
2668 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",lng),batarg("s",oid),arg("nil_if_empty",bit))),
2669 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",flt),batarg("b",flt))),
2670 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",flt),batarg("b",flt),arg("nil_if_empty",bit))),
2671 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",flt),batarg("b",flt),batarg("s",oid))),
2672 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",flt),batarg("b",flt),batarg("s",oid),arg("nil_if_empty",bit))),
2673 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",flt))),
2674 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",flt),arg("nil_if_empty",bit))),
2675 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",flt),batarg("s",oid))),
2676 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",flt),batarg("s",oid),arg("nil_if_empty",bit))),
2677 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,2, arg("",dbl),batarg("b",dbl))),
2678 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B.", args(1,3, arg("",dbl),batarg("b",dbl),arg("nil_if_empty",bit))),
2679 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,3, arg("",dbl),batarg("b",dbl),batarg("s",oid))),
2680 : pattern("aggr", "sum", CMDBATsum, false, "Calculate aggregate sum of B with candidate list.", args(1,4, arg("",dbl),batarg("b",dbl),batarg("s",oid),arg("nil_if_empty",bit))),
2681 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",bte),batarg("b",bte))),
2682 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",bte),batarg("b",bte),arg("nil_if_empty",bit))),
2683 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",bte),batarg("b",bte),batarg("s",oid))),
2684 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",bte),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2685 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",sht),batarg("b",bte))),
2686 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",sht),batarg("b",bte),arg("nil_if_empty",bit))),
2687 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",sht),batarg("b",bte),batarg("s",oid))),
2688 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",sht),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2689 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",int),batarg("b",bte))),
2690 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",int),batarg("b",bte),arg("nil_if_empty",bit))),
2691 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",int),batarg("b",bte),batarg("s",oid))),
2692 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",int),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2693 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",lng),batarg("b",bte))),
2694 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",lng),batarg("b",bte),arg("nil_if_empty",bit))),
2695 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",lng),batarg("b",bte),batarg("s",oid))),
2696 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",lng),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2697 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",bte))),
2698 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",bte),arg("nil_if_empty",bit))),
2699 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",bte),batarg("s",oid))),
2700 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",bte),batarg("s",oid),arg("nil_if_empty",bit))),
2701 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",sht),batarg("b",sht))),
2702 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",sht),batarg("b",sht),arg("nil_if_empty",bit))),
2703 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",sht),batarg("b",sht),batarg("s",oid))),
2704 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",sht),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2705 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",int),batarg("b",sht))),
2706 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",int),batarg("b",sht),arg("nil_if_empty",bit))),
2707 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",int),batarg("b",sht),batarg("s",oid))),
2708 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",int),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2709 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",lng),batarg("b",sht))),
2710 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",lng),batarg("b",sht),arg("nil_if_empty",bit))),
2711 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",lng),batarg("b",sht),batarg("s",oid))),
2712 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",lng),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2713 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",sht))),
2714 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",sht),arg("nil_if_empty",bit))),
2715 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",sht),batarg("s",oid))),
2716 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",sht),batarg("s",oid),arg("nil_if_empty",bit))),
2717 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",int),batarg("b",int))),
2718 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",int),batarg("b",int),arg("nil_if_empty",bit))),
2719 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",int),batarg("b",int),batarg("s",oid))),
2720 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",int),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
2721 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",lng),batarg("b",int))),
2722 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",lng),batarg("b",int),arg("nil_if_empty",bit))),
2723 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",lng),batarg("b",int),batarg("s",oid))),
2724 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",lng),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
2725 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",int))),
2726 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",int),arg("nil_if_empty",bit))),
2727 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",int),batarg("s",oid))),
2728 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",int),batarg("s",oid),arg("nil_if_empty",bit))),
2729 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",lng),batarg("b",lng))),
2730 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",lng),batarg("b",lng),arg("nil_if_empty",bit))),
2731 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",lng),batarg("b",lng),batarg("s",oid))),
2732 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",lng),batarg("b",lng),batarg("s",oid),arg("nil_if_empty",bit))),
2733 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",lng))),
2734 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",lng),arg("nil_if_empty",bit))),
2735 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",lng),batarg("s",oid))),
2736 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",lng),batarg("s",oid),arg("nil_if_empty",bit))),
2737 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",flt),batarg("b",flt))),
2738 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",flt),batarg("b",flt),arg("nil_if_empty",bit))),
2739 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",flt),batarg("b",flt),batarg("s",oid))),
2740 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",flt),batarg("b",flt),batarg("s",oid),arg("nil_if_empty",bit))),
2741 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",flt))),
2742 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",flt),arg("nil_if_empty",bit))),
2743 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",flt),batarg("s",oid))),
2744 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",flt),batarg("s",oid),arg("nil_if_empty",bit))),
2745 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,2, arg("",dbl),batarg("b",dbl))),
2746 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B.", args(1,3, arg("",dbl),batarg("b",dbl),arg("nil_if_empty",bit))),
2747 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,3, arg("",dbl),batarg("b",dbl),batarg("s",oid))),
2748 : pattern("aggr", "prod", CMDBATprod, false, "Calculate aggregate product of B with candidate list.", args(1,4, arg("",dbl),batarg("b",dbl),batarg("s",oid),arg("nil_if_empty",bit))),
2749 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B.", args(1,2, arg("",str),batarg("b",str))),
2750 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B.", args(1,3, arg("",str),batarg("b",str),arg("nil_if_empty",bit))),
2751 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B with candidate list.", args(1,3, arg("",str),batarg("b",str),batarg("s",oid))),
2752 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B with candidate list.", args(1,4, arg("",str),batarg("b",str),batarg("s",oid),arg("nil_if_empty",bit))),
2753 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B with separator SEP.", args(1,3, arg("",str),batarg("b",str),batarg("sep",str))),
2754 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B with separator SEP.", args(1,4, arg("",str),batarg("b",str),batarg("sep",str),arg("nil_if_empty",bit))),
2755 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B with candidate list and separator SEP.", args(1,4, arg("",str),batarg("b",str),batarg("sep",str),batarg("s",oid))),
2756 : pattern("aggr", "str_group_concat", CMDBATstr_group_concat, false, "Calculate aggregate string concatenate of B with candidate list and separator SEP.", args(1,5, arg("",str),batarg("b",str),batarg("sep",str),batarg("s",oid),arg("nil_if_empty",bit))),
2757 : //from sql
2758 : pattern("aggr", "anyequal", CMDvarEQ, false, "", args(1,3, arg("",bit),argany("l",1),argany("r",1))),
2759 : pattern("aggr", "not_anyequal", CMDvarNE, false, "", args(1,3, arg("",bit),argany("l",1),argany("r",1))),
2760 : { .imp=NULL }
2761 : };
2762 : #include "mal_import.h"
2763 : #ifdef _MSC_VER
2764 : #undef read
2765 : #pragma section(".CRT$XCU",read)
2766 : #endif
2767 308 : LIB_STARTUP_FUNC(init_calc_mal)
2768 308 : { mal_module("calc", NULL, calc_init_funcs); }
|