diff options
Diffstat (limited to 'packages/nonworking/kgrok')
-rw-r--r-- | packages/nonworking/kgrok/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/nonworking/kgrok/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/nonworking/kgrok/files/mediabutton.patch | 15 | ||||
-rw-r--r-- | packages/nonworking/kgrok/files/parser_yacc.cpp | 2048 | ||||
-rw-r--r-- | packages/nonworking/kgrok/files/parser_yacc.h | 92 | ||||
-rw-r--r-- | packages/nonworking/kgrok/kgrok_1.5.bb | 37 |
6 files changed, 2192 insertions, 0 deletions
diff --git a/packages/nonworking/kgrok/.mtn2git_empty b/packages/nonworking/kgrok/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/nonworking/kgrok/.mtn2git_empty diff --git a/packages/nonworking/kgrok/files/.mtn2git_empty b/packages/nonworking/kgrok/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/nonworking/kgrok/files/.mtn2git_empty diff --git a/packages/nonworking/kgrok/files/mediabutton.patch b/packages/nonworking/kgrok/files/mediabutton.patch index e69de29bb2..ce2c70e936 100644 --- a/packages/nonworking/kgrok/files/mediabutton.patch +++ b/packages/nonworking/kgrok/files/mediabutton.patch @@ -0,0 +1,15 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- src/mediabutton.C~mediabutton ++++ src/mediabutton.C +@@ -23,6 +23,7 @@ + #include <qwidget.h> + #include <qdrawutil.h> + #include "bluebutton.h" ++#include "mediabutton.h" + + extern QApplication *app; + diff --git a/packages/nonworking/kgrok/files/parser_yacc.cpp b/packages/nonworking/kgrok/files/parser_yacc.cpp index e69de29bb2..7078dced62 100644 --- a/packages/nonworking/kgrok/files/parser_yacc.cpp +++ b/packages/nonworking/kgrok/files/parser_yacc.cpp @@ -0,0 +1,2048 @@ +#ifndef lint +static const char yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93"; +#endif +#define YYBYACC 1 +#define YYMAJOR 1 +#define YYMINOR 9 +#define yyclearin (yychar=(-1)) +#define yyerrok (yyerrflag=0) +#define YYRECOVERING (yyerrflag!=0) +extern int yyparse(void); +#define yyparse parserparse +#define yylex parserlex +#define yyerror parsererror +#define yychar parserchar +#define yyval parserval +#define yylval parserlval +#define yydebug parserdebug +#define yynerrs parsernerrs +#define yyerrflag parsererrflag +#define yyss parserss +#define yyssp parserssp +#define yyvs parservs +#define yyvsp parservsp +#define yylhs parserlhs +#define yylen parserlen +#define yydefred parserdefred +#define yydgoto parserdgoto +#define yysindex parsersindex +#define yyrindex parserrindex +#define yygindex parsergindex +#define yytable parsertable +#define yycheck parsercheck +#define yyname parsername +#define yyrule parserrule +#define YYPREFIX "parser" +#line 2 "parser.y" +/**/ +/* (C) Copyright 2001 by Thomas Driemeyer <thomas@bitrot.de> www.bitrot.de.*/ +/**/ +/* This is free software; you can redistribute it and/or modify it under the*/ +/* terms of the GNU Library General Public License as published by the Free*/ +/* Software Foundation; either version 2 of the License, or (at your option)*/ +/* any later version. This library is distributed in the hope that it will*/ +/* be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of*/ +/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library*/ +/* General Public License for more details.*/ +/**/ +/* expression language grammar, compiled to parser.C by yacc*/ +/**/ + +#include <stdio.h> +#include <stdlib.h> +#include <unistd.h> +#include <string.h> +#include <time.h> +#include <math.h> +#include <qmessagebox.h> +#include "form.h" +#include "section.h" +#include "database.h" +#include "evaluate.h" +#include "util.h" + +#define yyparse Evaluate::yyeparse +#line 32 "parser.y" +typedef union { int ival; double dval; char *sval; Arg *aval; } YYSTYPE; +#line 68 "y.tab.c" +#define NUMBER 257 +#define STRING 258 +#define SYMBOL 259 +#define FIELD 260 +#define VAR 261 +#define EQ 262 +#define NEQ 263 +#define LE 264 +#define GE 265 +#define SHR 266 +#define SHL 267 +#define AND 268 +#define OR 269 +#define IN 270 +#define PLA 271 +#define MIA 272 +#define MUA 273 +#define MOA 274 +#define DVA 275 +#define ANA 276 +#define ORA 277 +#define INC 278 +#define DEC_ 279 +#define APP 280 +#define AVG 281 +#define DEV 282 +#define AMIN 283 +#define AMAX 284 +#define SUM 285 +#define QAVG 286 +#define QDEV 287 +#define QMIN_ 288 +#define QMAX_ 289 +#define QSUM 290 +#define SAVG 291 +#define SDEV 292 +#define SMIN 293 +#define SMAX 294 +#define SSUM 295 +#define ABS 296 +#define INT 297 +#define BOUND 298 +#define LEN 299 +#define CHOP 300 +#define TR 301 +#define SUBSTR 302 +#define SQRT 303 +#define EXP 304 +#define LOG 305 +#define LN 306 +#define POW 307 +#define RANDOM 308 +#define SIN 309 +#define COS 310 +#define TAN 311 +#define ASIN 312 +#define ACOS 313 +#define ATAN 314 +#define ATAN2 315 +#define DATE 316 +#define TIME 317 +#define DURATION 318 +#define EXPAND 319 +#define YEAR 320 +#define MONTH 321 +#define DAY 322 +#define HOUR 323 +#define MINUTE 324 +#define SECOND 325 +#define LEAP 326 +#define JULIAN 327 +#define SECTION_ 328 +#define DBASE_ 329 +#define FORM_ 330 +#define PREVFORM 331 +#define SWITCH 332 +#define THIS 333 +#define LAST 334 +#define DISP 335 +#define FOREACH 336 +#define HOST 337 +#define USER 338 +#define UID 339 +#define GID 340 +#define SYSTEM 341 +#define ACCESS 342 +#define BEEP 343 +#define ERROR 344 +#define PRINTF 345 +#define UMINUS 346 +#define YYERRCODE 256 +short parserlhs[] = { -1, + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 3, 3, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, +}; +short parserlen[] = { 2, + 1, 1, 3, 3, 3, 1, 3, 3, 3, 5, + 3, 3, 3, 3, 3, 3, 3, 1, 4, 3, + 6, 4, 2, 4, 6, 8, 1, 1, 1, 1, + 4, 1, 1, 6, 4, 6, 1, 1, 4, 4, + 4, 4, 7, 4, 1, 4, 1, 3, 1, 3, + 3, 1, 4, 3, 6, 1, 3, 3, 3, 3, + 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, + 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, + 3, 1, 1, 1, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 8, 4, 4, 4, 4, 4, 6, 1, 4, + 4, 4, 4, 4, 4, 6, 1, 4, 1, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 1, 1, 6, +}; +short parserdefred[] = { 0, + 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 33, 32, 29, 0, 0, 27, 28, 0, 45, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 119, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 92, 93, 94, 141, 142, 0, + 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 65, 66, 0, 67, 68, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 69, 70, 71, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, + 0, 24, 0, 0, 40, 39, 41, 42, 0, 31, + 0, 0, 35, 22, 0, 46, 44, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 50, 51, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 80, 81, 77, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 95, 96, 97, 98, 99, 100, 101, 102, + 103, 104, 105, 106, 107, 108, 109, 110, 111, 0, + 113, 114, 115, 116, 117, 0, 120, 121, 122, 123, + 124, 125, 0, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 140, 139, 128, 0, 0, 0, 0, 25, + 0, 0, 34, 36, 0, 0, 0, 0, 0, 0, + 0, 43, 0, 0, 118, 126, 143, 26, 0, 112, +}; +short parserdgoto[] = { 26, + 106, 133, 134, +}; +short parsersindex[] = { 230, + 0, -59, -52, -36, -35, -28, -25, -18, -11, -3, + -75, 0, 0, 0, 16, 28, 0, 0, 38, 0, + 39, 49, 230, 159, -231, 0, 3062, 230, 159, 230, + 230, 230, 230, 230, 159, 159, 159, -217, 159, 230, + 230, 230, 230, 230, 263, 0, -50, 235, -178, -170, + 53, 54, 55, 56, 64, 65, 66, 67, 80, 82, + 83, 84, 85, 87, 88, 89, 90, 91, 93, 94, + 96, 114, 115, 126, 0, 128, 156, 160, 162, 163, + 166, 168, 173, 175, 178, 180, 186, 187, 189, 190, + 195, 196, 197, 26, 0, 0, 0, 0, 0, 208, + 159, 159, 159, 230, 159, 727, 0, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 147, 968, 147, + 147, 846, 1194, 2176, 979, 1006, 1033, -38, 1044, 3031, + 614, 1408, 3062, -17, 3, 0, 159, 159, 159, 159, + 159, 159, 159, 159, 159, 0, 0, 159, 0, 0, + -4, -2, -1, 2, 5, 7, 9, 12, 21, 23, + 24, 29, 30, 31, 34, 159, 159, 159, 230, 159, + 159, 159, 159, 159, 159, 159, 159, 159, 159, 159, + 159, 230, 230, 230, 159, 159, 159, 159, 159, 159, + 159, 159, 159, 230, 0, 0, 0, 1701, 1128, 159, + 159, 159, 159, 159, 159, 159, 159, 159, 159, 159, + 159, 159, 159, 159, 159, 159, 159, 159, 159, 0, + 15, 15, 203, 203, 107, 594, 2956, 203, 203, 0, + 199, 0, 230, 159, 0, 0, 0, 0, 159, 0, + 230, 230, 0, 0, 230, 0, 0, 2528, 1277, 2528, + 2528, 2528, 2528, 2528, 2528, 2528, 2528, 216, 220, 227, + 233, 247, 257, 270, 271, 272, 274, 275, 277, 279, + 283, 287, 1155, 1288, 2203, 1926, 1315, 1342, 1388, 1400, + 2256, 1436, 1472, 1582, 1648, 1683, 1711, 2330, 2937, 2971, + 2980, 1738, 1749, 1776, 1834, 1845, 2010, 2021, 2079, 2093, + 3095, 0, 0, 1882, 1882, 20, 20, 43, 43, 2886, + 2727, 2517, 2120, -12, 2917, 2278, 20, 20, 50, 50, + 0, 0, 0, 230, 230, 2991, 2365, 2132, 3011, 3022, + 3062, 268, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, + 0, 0, 0, 0, 0, 159, 0, 0, 0, 0, + 0, 0, 159, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 159, 159, 594, 147, 0, + 159, 289, 0, 0, 159, 2517, 2415, 2443, 2168, 2517, + 2454, 0, 2528, 159, 0, 0, 0, 0, 2489, 0, +}; +short parserrindex[] = { 0, + 0, 273, 459, 0, 0, 0, 539, 550, 0, 0, + 570, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 337, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -24, 699, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 856, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 883, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 747, 0, 911, + 1219, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1, 234, 590, 603, 40, 577, 0, 626, 672, 0, + 579, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 299, 0, 300, + 320, 338, 736, 737, 787, 1071, 1118, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2864, 2874, 2760, 2797, 1223, 2609, 153, + 154, 310, 0, 77, 336, 8, 2841, 2851, 2563, 2601, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 14, 941, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 659, 1558, 0, + 0, 0, 0, 0, 0, 294, 294, 294, 0, 346, + 294, 0, 1119, 0, 0, 0, 0, 0, 294, 0, +}; +short parsergindex[] = { 0, + -29, 191, 295, +}; +#define YYTABLESIZE 3365 +short parsertable[] = { 119, + 13, 28, 238, 32, 33, 125, 126, 127, 31, 129, + 137, 34, 52, 52, 35, 39, 52, 52, 52, 52, + 52, 36, 52, 246, 219, 212, 245, 107, 37, 217, + 216, 29, 215, 52, 218, 52, 38, 52, 52, 17, + 138, 13, 128, 247, 13, 72, 245, 213, 72, 214, + 47, 72, 239, 47, 48, 40, 219, 48, 13, 13, + 117, 217, 216, 13, 215, 72, 218, 41, 52, 52, + 72, 195, 196, 197, 115, 199, 116, 42, 43, 219, + 17, 211, 149, 17, 217, 216, 219, 215, 44, 218, + 150, 217, 151, 152, 153, 154, 218, 17, 17, 52, + 72, 72, 17, 155, 156, 157, 158, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 193, 74, 257, 159, + 74, 160, 161, 162, 163, 13, 164, 165, 166, 167, + 168, 72, 169, 170, 74, 171, 273, 274, 275, 74, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 117, 172, 173, 292, 293, 294, 295, 296, + 297, 298, 299, 300, 17, 174, 115, 175, 116, 74, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 27, 102, 117, 88, 89, 176, 88, 89, 105, 177, + 74, 178, 179, 101, 327, 180, 115, 181, 116, 328, + 88, 89, 182, 45, 183, 88, 89, 184, 118, 185, + 120, 121, 122, 123, 124, 186, 187, 30, 188, 189, + 130, 131, 132, 14, 190, 191, 192, 52, 52, 52, + 52, 52, 52, 52, 52, 88, 89, 194, 117, 200, + 201, 202, 203, 204, 205, 258, 333, 259, 260, 325, + 334, 261, 13, 13, 262, 25, 263, 335, 264, 24, + 13, 265, 18, 336, 14, 72, 72, 14, 110, 111, + 266, 104, 267, 268, 103, 204, 205, 337, 269, 270, + 271, 14, 14, 272, 198, 148, 14, 338, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 117, 17, + 339, 340, 341, 18, 342, 343, 18, 344, 18, 345, + 386, 113, 115, 346, 116, 114, 387, 347, 385, 392, + 18, 18, 18, 388, 18, 18, 1, 91, 135, 54, + 58, 0, 54, 58, 74, 74, 389, 390, 0, 0, + 91, 391, 23, 91, 0, 393, 54, 58, 14, 276, + 59, 54, 58, 59, 399, 0, 0, 91, 108, 109, + 110, 111, 289, 290, 291, 0, 73, 59, 60, 73, + 0, 60, 59, 0, 301, 0, 90, 136, 0, 90, + 0, 54, 58, 73, 0, 60, 0, 18, 73, 0, + 60, 0, 91, 90, 0, 0, 0, 0, 108, 109, + 110, 111, 59, 0, 0, 46, 112, 0, 47, 48, + 88, 88, 89, 326, 0, 0, 0, 0, 73, 73, + 60, 329, 330, 0, 0, 331, 49, 50, 90, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 6, 73, + 0, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 0, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 1, 0, 2, + 3, 95, 96, 97, 0, 14, 14, 98, 99, 6, + 100, 0, 6, 14, 6, 139, 140, 141, 142, 143, + 144, 145, 146, 147, 378, 379, 6, 6, 6, 0, + 6, 6, 0, 0, 108, 109, 110, 111, 0, 4, + 5, 6, 112, 0, 18, 18, 18, 18, 38, 0, + 0, 0, 18, 0, 0, 7, 8, 9, 10, 37, + 0, 0, 0, 0, 0, 0, 0, 11, 12, 13, + 14, 15, 0, 0, 0, 16, 17, 18, 0, 30, + 19, 0, 20, 21, 22, 0, 4, 0, 19, 38, + 0, 0, 38, 6, 38, 0, 0, 0, 0, 15, + 37, 0, 0, 37, 0, 37, 38, 38, 38, 0, + 38, 38, 16, 73, 73, 0, 0, 37, 37, 37, + 30, 37, 37, 30, 0, 30, 0, 4, 0, 19, + 4, 0, 19, 0, 19, 11, 0, 30, 30, 30, + 15, 30, 30, 15, 4, 4, 19, 19, 19, 117, + 19, 19, 0, 16, 0, 0, 16, 15, 15, 15, + 0, 15, 15, 115, 243, 116, 114, 242, 10, 117, + 16, 16, 16, 38, 16, 16, 11, 0, 0, 11, + 0, 12, 113, 115, 37, 116, 114, 0, 0, 0, + 0, 0, 0, 11, 11, 11, 0, 11, 11, 0, + 0, 0, 0, 0, 30, 0, 0, 0, 0, 10, + 0, 4, 10, 19, 0, 0, 0, 0, 0, 0, + 0, 0, 12, 0, 15, 12, 10, 10, 0, 0, + 6, 6, 6, 6, 0, 0, 0, 16, 6, 12, + 12, 12, 0, 12, 12, 56, 56, 0, 0, 56, + 56, 56, 56, 56, 0, 56, 20, 0, 0, 0, + 11, 0, 0, 0, 0, 0, 56, 0, 56, 0, + 56, 56, 0, 219, 212, 0, 0, 220, 217, 216, + 208, 215, 0, 218, 0, 0, 62, 61, 0, 62, + 61, 0, 0, 10, 0, 0, 213, 20, 214, 209, + 20, 56, 56, 62, 61, 0, 12, 0, 62, 61, + 38, 38, 38, 38, 20, 20, 0, 0, 38, 20, + 0, 37, 37, 37, 37, 0, 0, 0, 0, 37, + 211, 0, 56, 0, 0, 0, 0, 63, 62, 61, + 63, 30, 30, 30, 30, 0, 0, 0, 0, 30, + 19, 19, 19, 19, 63, 0, 0, 0, 19, 63, + 210, 15, 15, 15, 15, 108, 109, 110, 111, 15, + 0, 0, 0, 112, 16, 16, 16, 16, 0, 0, + 0, 20, 16, 0, 0, 108, 109, 110, 111, 63, + 0, 0, 0, 112, 0, 0, 232, 11, 11, 11, + 11, 117, 129, 129, 0, 11, 129, 129, 129, 129, + 129, 0, 129, 0, 113, 115, 0, 116, 114, 0, + 7, 0, 0, 129, 0, 129, 0, 129, 129, 127, + 127, 0, 0, 127, 127, 127, 127, 127, 0, 127, + 0, 0, 0, 12, 12, 12, 12, 0, 0, 0, + 127, 12, 127, 0, 127, 127, 0, 0, 129, 129, + 0, 7, 0, 0, 7, 0, 0, 0, 0, 0, + 56, 56, 56, 56, 56, 56, 56, 56, 7, 7, + 0, 0, 0, 7, 0, 127, 127, 53, 53, 129, + 0, 53, 53, 53, 53, 53, 0, 53, 200, 201, + 202, 203, 204, 205, 206, 207, 0, 0, 53, 0, + 53, 0, 53, 53, 219, 212, 127, 0, 0, 217, + 216, 208, 215, 0, 218, 219, 212, 0, 0, 235, + 217, 216, 208, 215, 0, 218, 0, 213, 0, 214, + 209, 0, 0, 53, 53, 7, 0, 0, 213, 0, + 214, 209, 219, 212, 0, 0, 236, 217, 216, 208, + 215, 0, 218, 0, 0, 0, 0, 0, 0, 0, + 231, 211, 0, 0, 53, 213, 0, 214, 209, 219, + 212, 0, 211, 237, 217, 216, 208, 215, 0, 218, + 219, 212, 0, 0, 0, 217, 216, 208, 215, 0, + 218, 210, 213, 0, 214, 209, 0, 0, 0, 211, + 0, 0, 210, 213, 0, 214, 209, 108, 109, 110, + 111, 64, 0, 0, 64, 112, 0, 129, 129, 129, + 129, 129, 129, 129, 129, 0, 211, 0, 64, 210, + 0, 0, 0, 64, 0, 0, 240, 211, 0, 0, + 0, 0, 0, 0, 127, 127, 127, 127, 127, 127, + 127, 127, 0, 0, 0, 0, 210, 0, 57, 55, + 0, 57, 55, 64, 219, 212, 0, 210, 303, 217, + 216, 208, 215, 0, 218, 57, 55, 0, 0, 0, + 57, 55, 0, 0, 0, 0, 0, 213, 0, 214, + 209, 219, 212, 0, 0, 348, 217, 216, 208, 215, + 0, 218, 53, 53, 53, 53, 53, 53, 53, 53, + 57, 55, 0, 0, 213, 0, 214, 209, 8, 0, + 0, 211, 0, 0, 0, 0, 0, 0, 0, 200, + 201, 202, 203, 204, 205, 206, 207, 233, 0, 117, + 200, 201, 202, 203, 204, 205, 206, 207, 211, 0, + 0, 210, 113, 115, 0, 116, 114, 0, 0, 8, + 76, 0, 8, 76, 0, 0, 76, 200, 201, 202, + 203, 204, 205, 206, 207, 0, 8, 8, 210, 0, + 76, 8, 76, 0, 76, 76, 0, 0, 0, 0, + 0, 0, 0, 0, 200, 201, 202, 203, 204, 205, + 206, 207, 0, 0, 0, 200, 201, 202, 203, 204, + 205, 206, 207, 219, 212, 76, 76, 0, 217, 216, + 208, 215, 0, 218, 219, 212, 0, 0, 349, 217, + 216, 208, 215, 0, 218, 0, 213, 0, 214, 209, + 0, 0, 0, 8, 0, 0, 76, 213, 0, 214, + 209, 219, 212, 0, 0, 352, 217, 216, 208, 215, + 0, 218, 0, 0, 0, 0, 0, 0, 0, 332, + 211, 0, 0, 0, 213, 0, 214, 209, 219, 212, + 0, 211, 353, 217, 216, 208, 215, 0, 218, 200, + 201, 202, 203, 204, 205, 206, 207, 0, 0, 0, + 210, 213, 0, 214, 209, 0, 0, 0, 211, 0, + 0, 210, 0, 0, 0, 0, 200, 201, 202, 203, + 204, 205, 206, 207, 219, 212, 0, 0, 354, 217, + 216, 208, 215, 0, 218, 211, 219, 212, 210, 0, + 355, 217, 216, 208, 215, 0, 218, 213, 244, 214, + 209, 0, 0, 117, 0, 108, 109, 110, 111, 213, + 0, 214, 209, 112, 0, 210, 113, 115, 0, 116, + 114, 0, 219, 212, 0, 0, 357, 217, 216, 208, + 215, 211, 218, 0, 76, 76, 76, 76, 76, 76, + 76, 76, 0, 211, 0, 213, 0, 214, 209, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 219, 212, + 0, 210, 358, 217, 216, 208, 215, 0, 218, 0, + 0, 0, 0, 210, 0, 0, 0, 0, 0, 211, + 0, 213, 0, 214, 209, 0, 0, 0, 200, 201, + 202, 203, 204, 205, 206, 207, 0, 0, 0, 200, + 201, 202, 203, 204, 205, 206, 207, 21, 0, 210, + 0, 0, 0, 0, 0, 211, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 200, 201, 202, 203, + 204, 205, 206, 207, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 210, 0, 0, 21, 0, + 0, 21, 0, 200, 201, 202, 203, 204, 205, 206, + 207, 0, 0, 0, 0, 21, 21, 0, 219, 212, + 21, 0, 359, 217, 216, 208, 215, 0, 218, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 213, 0, 214, 209, 0, 0, 0, 0, 200, + 201, 202, 203, 204, 205, 206, 207, 0, 0, 0, + 0, 200, 201, 202, 203, 204, 205, 206, 207, 108, + 109, 110, 111, 0, 0, 211, 0, 112, 0, 0, + 0, 0, 21, 0, 219, 212, 0, 0, 360, 217, + 216, 208, 215, 0, 218, 0, 0, 200, 201, 202, + 203, 204, 205, 206, 207, 210, 0, 213, 0, 214, + 209, 0, 0, 0, 0, 0, 0, 0, 0, 219, + 212, 0, 0, 361, 217, 216, 208, 215, 0, 218, + 0, 0, 0, 200, 201, 202, 203, 204, 205, 206, + 207, 211, 213, 0, 214, 209, 117, 219, 212, 0, + 0, 362, 217, 216, 208, 215, 0, 218, 0, 113, + 115, 0, 116, 114, 0, 0, 0, 0, 0, 0, + 213, 210, 214, 209, 219, 212, 211, 0, 367, 217, + 216, 208, 215, 0, 218, 219, 212, 0, 0, 368, + 217, 216, 208, 215, 0, 218, 0, 213, 0, 214, + 209, 0, 0, 0, 211, 0, 210, 0, 213, 0, + 214, 209, 219, 212, 0, 0, 369, 217, 216, 208, + 215, 0, 218, 0, 0, 302, 0, 0, 0, 0, + 0, 211, 0, 0, 210, 213, 0, 214, 209, 0, + 0, 0, 211, 200, 201, 202, 203, 204, 205, 206, + 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 210, 0, 0, 0, 0, 0, 0, 0, 211, + 219, 212, 210, 0, 370, 217, 216, 208, 215, 0, + 218, 219, 212, 0, 0, 371, 217, 216, 208, 215, + 0, 218, 0, 213, 0, 214, 209, 0, 0, 210, + 0, 0, 0, 0, 213, 0, 214, 209, 0, 200, + 201, 202, 203, 204, 205, 206, 207, 0, 219, 0, + 0, 0, 0, 217, 216, 0, 215, 211, 218, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 211, 0, + 0, 213, 0, 214, 200, 201, 202, 203, 204, 205, + 206, 207, 0, 0, 0, 0, 0, 210, 0, 0, + 0, 0, 108, 109, 110, 111, 351, 0, 210, 0, + 112, 117, 200, 201, 202, 203, 204, 205, 206, 207, + 0, 0, 0, 0, 113, 115, 0, 116, 114, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 200, + 201, 202, 203, 204, 205, 206, 207, 0, 0, 0, + 200, 201, 202, 203, 204, 205, 206, 207, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 200, 201, 202, + 203, 204, 205, 206, 207, 0, 219, 212, 0, 0, + 372, 217, 216, 208, 215, 0, 218, 219, 212, 0, + 0, 373, 217, 216, 208, 215, 0, 218, 0, 213, + 0, 214, 209, 0, 0, 0, 0, 0, 0, 0, + 213, 0, 214, 209, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 200, 201, 202, 203, 204, + 205, 206, 207, 211, 0, 0, 200, 201, 202, 203, + 204, 205, 206, 207, 211, 219, 212, 0, 0, 374, + 217, 216, 208, 215, 0, 218, 0, 0, 0, 219, + 212, 0, 0, 210, 217, 216, 208, 215, 213, 218, + 214, 209, 0, 0, 210, 202, 203, 204, 205, 0, + 0, 0, 213, 0, 214, 209, 219, 212, 0, 0, + 0, 217, 216, 208, 215, 0, 218, 0, 219, 212, + 0, 0, 211, 217, 216, 208, 215, 377, 218, 213, + 0, 214, 209, 0, 0, 375, 211, 108, 109, 110, + 111, 213, 0, 214, 209, 112, 0, 0, 0, 0, + 0, 0, 210, 0, 219, 212, 0, 0, 397, 217, + 216, 208, 215, 211, 218, 0, 210, 0, 0, 234, + 0, 117, 0, 0, 382, 211, 0, 213, 0, 214, + 209, 0, 0, 0, 113, 115, 0, 116, 114, 219, + 212, 0, 0, 210, 217, 216, 350, 215, 0, 218, + 0, 0, 0, 0, 0, 210, 0, 0, 0, 0, + 0, 211, 213, 0, 214, 209, 0, 0, 0, 0, + 0, 200, 201, 202, 203, 204, 205, 206, 207, 0, + 0, 0, 200, 201, 202, 203, 204, 205, 206, 207, + 0, 210, 219, 212, 0, 0, 211, 217, 216, 356, + 215, 0, 218, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 219, 213, 0, 214, 209, 217, + 216, 0, 215, 0, 218, 0, 210, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 213, 0, 214, + 200, 201, 202, 203, 204, 205, 206, 207, 0, 211, + 0, 0, 0, 0, 200, 201, 202, 203, 204, 205, + 206, 207, 0, 0, 0, 0, 219, 212, 0, 0, + 0, 217, 216, 363, 215, 0, 218, 0, 0, 210, + 0, 200, 201, 202, 203, 204, 205, 206, 207, 213, + 0, 214, 209, 200, 201, 202, 203, 204, 205, 206, + 207, 219, 212, 0, 0, 0, 217, 216, 381, 215, + 0, 218, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 211, 213, 0, 214, 209, 0, 200, + 201, 202, 203, 204, 205, 206, 207, 108, 109, 110, + 111, 0, 0, 0, 0, 112, 0, 0, 0, 0, + 0, 219, 212, 210, 0, 395, 217, 216, 211, 215, + 0, 218, 0, 0, 200, 201, 202, 203, 204, 205, + 206, 207, 0, 0, 213, 0, 214, 209, 0, 219, + 212, 0, 0, 396, 217, 216, 0, 215, 210, 218, + 219, 212, 0, 0, 398, 217, 216, 0, 215, 0, + 218, 0, 213, 0, 214, 209, 0, 0, 211, 0, + 0, 0, 0, 213, 0, 214, 209, 200, 201, 202, + 203, 204, 205, 206, 207, 219, 212, 0, 0, 400, + 217, 216, 0, 215, 0, 218, 211, 0, 210, 200, + 201, 202, 203, 204, 205, 0, 0, 211, 213, 0, + 214, 209, 0, 219, 212, 0, 0, 0, 217, 216, + 0, 215, 0, 218, 219, 212, 210, 0, 0, 217, + 216, 0, 215, 0, 218, 0, 213, 210, 214, 209, + 0, 0, 211, 0, 0, 0, 0, 213, 0, 214, + 0, 200, 201, 202, 203, 204, 205, 206, 207, 0, + 79, 0, 0, 79, 0, 79, 79, 79, 0, 0, + 211, 0, 210, 0, 0, 0, 0, 0, 0, 0, + 79, 211, 79, 0, 79, 79, 200, 201, 202, 203, + 204, 205, 206, 207, 0, 0, 0, 0, 78, 0, + 210, 78, 0, 78, 78, 78, 75, 0, 0, 75, + 0, 210, 75, 0, 0, 79, 79, 0, 78, 0, + 78, 0, 78, 78, 0, 0, 75, 0, 75, 0, + 75, 75, 0, 0, 0, 0, 200, 201, 202, 203, + 204, 205, 206, 207, 0, 0, 79, 0, 0, 0, + 0, 0, 0, 78, 78, 0, 0, 0, 0, 0, + 0, 75, 75, 0, 200, 201, 202, 203, 204, 205, + 206, 207, 0, 0, 0, 200, 201, 202, 203, 204, + 205, 206, 207, 0, 78, 0, 0, 0, 0, 0, + 0, 0, 75, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 200, 201, 202, 203, 204, 205, 206, 207, 0, 0, + 0, 0, 0, 219, 212, 0, 0, 0, 217, 216, + 0, 215, 0, 218, 0, 0, 0, 0, 200, 201, + 202, 203, 204, 205, 206, 207, 213, 0, 214, 200, + 201, 202, 203, 204, 205, 206, 207, 86, 0, 0, + 86, 0, 0, 86, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 86, 0, 86, + 211, 86, 86, 0, 79, 79, 79, 79, 79, 79, + 79, 79, 0, 0, 87, 0, 0, 87, 0, 0, + 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 210, 0, 86, 86, 87, 0, 87, 0, 87, 87, + 0, 0, 78, 78, 78, 78, 78, 78, 78, 78, + 75, 75, 75, 75, 75, 75, 75, 75, 82, 0, + 0, 82, 0, 86, 82, 0, 0, 0, 83, 87, + 87, 83, 0, 0, 83, 0, 0, 0, 82, 0, + 82, 84, 82, 82, 84, 0, 0, 84, 83, 0, + 83, 85, 83, 83, 85, 0, 0, 85, 0, 0, + 87, 84, 219, 212, 0, 0, 84, 217, 216, 0, + 215, 85, 218, 82, 82, 0, 85, 0, 0, 0, + 0, 0, 0, 83, 83, 213, 0, 214, 0, 0, + 0, 0, 0, 219, 212, 0, 84, 84, 217, 216, + 0, 215, 0, 218, 82, 0, 85, 85, 0, 0, + 0, 0, 0, 0, 83, 0, 213, 364, 214, 211, + 0, 0, 117, 0, 0, 0, 0, 84, 200, 201, + 202, 203, 204, 205, 206, 113, 115, 85, 116, 114, + 0, 117, 0, 0, 0, 0, 0, 0, 0, 210, + 0, 365, 0, 324, 113, 115, 117, 116, 114, 0, + 366, 86, 86, 86, 86, 117, 0, 86, 86, 113, + 115, 380, 116, 114, 0, 0, 117, 0, 113, 115, + 0, 116, 114, 0, 0, 0, 0, 0, 0, 113, + 115, 383, 116, 114, 0, 0, 117, 0, 87, 87, + 87, 87, 384, 0, 87, 87, 0, 117, 0, 113, + 115, 0, 116, 114, 241, 0, 117, 0, 0, 0, + 113, 115, 0, 116, 114, 0, 0, 0, 0, 113, + 115, 0, 116, 114, 0, 0, 0, 0, 0, 0, + 0, 0, 82, 82, 82, 82, 0, 117, 82, 82, + 0, 0, 83, 83, 83, 83, 0, 0, 83, 83, + 113, 115, 0, 116, 114, 84, 84, 0, 0, 0, + 0, 84, 84, 0, 0, 85, 85, 0, 376, 0, + 117, 85, 85, 0, 0, 0, 0, 200, 201, 202, + 203, 204, 205, 113, 115, 0, 116, 114, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 200, 201, + 202, 203, 204, 205, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 108, 109, + 110, 111, 0, 0, 0, 0, 112, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 108, 109, 110, + 111, 0, 0, 0, 0, 112, 0, 0, 0, 0, + 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, + 112, 108, 109, 110, 111, 0, 0, 0, 0, 112, + 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, + 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, + 112, 0, 0, 108, 109, 110, 111, 0, 0, 0, + 0, 112, 108, 109, 110, 111, 0, 0, 0, 0, + 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 108, 109, 110, 111, 0, 0, 0, + 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 108, 109, 110, 111, + 0, 0, 0, 0, 112, +}; +short parsercheck[] = { 29, + 0, 61, 41, 40, 40, 35, 36, 37, 61, 39, + 61, 40, 37, 38, 40, 91, 41, 42, 43, 44, + 45, 40, 47, 41, 37, 38, 44, 259, 40, 42, + 43, 91, 45, 58, 47, 60, 40, 62, 63, 0, + 91, 41, 260, 41, 44, 38, 44, 60, 41, 62, + 41, 44, 91, 44, 41, 40, 37, 44, 58, 59, + 46, 42, 43, 63, 45, 58, 47, 40, 93, 94, + 63, 101, 102, 103, 60, 105, 62, 40, 40, 37, + 41, 94, 261, 44, 42, 43, 37, 45, 40, 47, + 261, 42, 40, 40, 40, 40, 47, 58, 59, 124, + 93, 94, 63, 40, 40, 40, 40, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 91, 41, 148, 40, + 44, 40, 40, 40, 40, 125, 40, 40, 40, 40, + 40, 124, 40, 40, 58, 40, 166, 167, 168, 63, + 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, + 180, 181, 46, 40, 40, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 125, 40, 60, 40, 62, 93, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, + 0, 33, 46, 41, 41, 40, 44, 44, 40, 40, + 124, 40, 40, 45, 234, 40, 60, 40, 62, 239, + 58, 58, 40, 23, 40, 63, 63, 40, 28, 40, + 30, 31, 32, 33, 34, 40, 40, 280, 40, 40, + 40, 41, 42, 0, 40, 40, 40, 262, 263, 264, + 265, 266, 267, 268, 269, 93, 93, 40, 46, 262, + 263, 264, 265, 266, 267, 260, 41, 260, 260, 61, + 41, 260, 262, 263, 260, 36, 260, 41, 260, 40, + 270, 260, 0, 41, 41, 268, 269, 44, 264, 265, + 260, 123, 260, 260, 126, 266, 267, 41, 260, 260, + 260, 58, 59, 260, 104, 61, 63, 41, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 46, 270, + 41, 41, 41, 41, 41, 41, 44, 41, 46, 41, + 350, 59, 60, 41, 62, 63, 356, 41, 61, 41, + 58, 59, 60, 363, 62, 63, 0, 44, 44, 41, + 41, -1, 44, 44, 268, 269, 376, 377, -1, -1, + 41, 381, 123, 44, -1, 385, 58, 58, 125, 169, + 41, 63, 63, 44, 394, -1, -1, 58, 262, 263, + 264, 265, 182, 183, 184, -1, 41, 58, 41, 44, + -1, 44, 63, -1, 194, -1, 41, 125, -1, 44, + -1, 93, 93, 58, -1, 58, -1, 125, 63, -1, + 63, -1, 93, 58, -1, -1, -1, -1, 262, 263, + 264, 265, 93, -1, -1, 257, 270, -1, 260, 261, + 268, 269, 269, 233, -1, -1, -1, -1, 93, 94, + 93, 241, 242, -1, -1, 245, 278, 279, 93, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 0, 124, + -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, -1, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 258, -1, 260, + 261, 333, 334, 335, -1, 262, 263, 339, 340, 41, + 342, -1, 44, 270, 46, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 324, 325, 58, 59, 60, -1, + 62, 63, -1, -1, 262, 263, 264, 265, -1, 300, + 301, 302, 270, -1, 262, 263, 264, 265, 0, -1, + -1, -1, 270, -1, -1, 316, 317, 318, 319, 0, + -1, -1, -1, -1, -1, -1, -1, 328, 329, 330, + 331, 332, -1, -1, -1, 336, 337, 338, -1, 0, + 341, -1, 343, 344, 345, -1, 0, -1, 0, 41, + -1, -1, 44, 125, 46, -1, -1, -1, -1, 0, + 41, -1, -1, 44, -1, 46, 58, 59, 60, -1, + 62, 63, 0, 268, 269, -1, -1, 58, 59, 60, + 41, 62, 63, 44, -1, 46, -1, 41, -1, 41, + 44, -1, 44, -1, 46, 0, -1, 58, 59, 60, + 41, 62, 63, 44, 58, 59, 58, 59, 60, 46, + 62, 63, -1, 41, -1, -1, 44, 58, 59, 60, + -1, 62, 63, 60, 41, 62, 63, 44, 0, 46, + 58, 59, 60, 125, 62, 63, 41, -1, -1, 44, + -1, 0, 59, 60, 125, 62, 63, -1, -1, -1, + -1, -1, -1, 58, 59, 60, -1, 62, 63, -1, + -1, -1, -1, -1, 125, -1, -1, -1, -1, 41, + -1, 125, 44, 125, -1, -1, -1, -1, -1, -1, + -1, -1, 41, -1, 125, 44, 58, 59, -1, -1, + 262, 263, 264, 265, -1, -1, -1, 125, 270, 58, + 59, 60, -1, 62, 63, 37, 38, -1, -1, 41, + 42, 43, 44, 45, -1, 47, 0, -1, -1, -1, + 125, -1, -1, -1, -1, -1, 58, -1, 60, -1, + 62, 63, -1, 37, 38, -1, -1, 41, 42, 43, + 44, 45, -1, 47, -1, -1, 41, 41, -1, 44, + 44, -1, -1, 125, -1, -1, 60, 41, 62, 63, + 44, 93, 94, 58, 58, -1, 125, -1, 63, 63, + 262, 263, 264, 265, 58, 59, -1, -1, 270, 63, + -1, 262, 263, 264, 265, -1, -1, -1, -1, 270, + 94, -1, 124, -1, -1, -1, -1, 41, 93, 93, + 44, 262, 263, 264, 265, -1, -1, -1, -1, 270, + 262, 263, 264, 265, 58, -1, -1, -1, 270, 63, + 124, 262, 263, 264, 265, 262, 263, 264, 265, 270, + -1, -1, -1, 270, 262, 263, 264, 265, -1, -1, + -1, 125, 270, -1, -1, 262, 263, 264, 265, 93, + -1, -1, -1, 270, -1, -1, 41, 262, 263, 264, + 265, 46, 37, 38, -1, 270, 41, 42, 43, 44, + 45, -1, 47, -1, 59, 60, -1, 62, 63, -1, + 0, -1, -1, 58, -1, 60, -1, 62, 63, 37, + 38, -1, -1, 41, 42, 43, 44, 45, -1, 47, + -1, -1, -1, 262, 263, 264, 265, -1, -1, -1, + 58, 270, 60, -1, 62, 63, -1, -1, 93, 94, + -1, 41, -1, -1, 44, -1, -1, -1, -1, -1, + 262, 263, 264, 265, 266, 267, 268, 269, 58, 59, + -1, -1, -1, 63, -1, 93, 94, 37, 38, 124, + -1, 41, 42, 43, 44, 45, -1, 47, 262, 263, + 264, 265, 266, 267, 268, 269, -1, -1, 58, -1, + 60, -1, 62, 63, 37, 38, 124, -1, -1, 42, + 43, 44, 45, -1, 47, 37, 38, -1, -1, 41, + 42, 43, 44, 45, -1, 47, -1, 60, -1, 62, + 63, -1, -1, 93, 94, 125, -1, -1, 60, -1, + 62, 63, 37, 38, -1, -1, 41, 42, 43, 44, + 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, + 93, 94, -1, -1, 124, 60, -1, 62, 63, 37, + 38, -1, 94, 41, 42, 43, 44, 45, -1, 47, + 37, 38, -1, -1, -1, 42, 43, 44, 45, -1, + 47, 124, 60, -1, 62, 63, -1, -1, -1, 94, + -1, -1, 124, 60, -1, 62, 63, 262, 263, 264, + 265, 41, -1, -1, 44, 270, -1, 262, 263, 264, + 265, 266, 267, 268, 269, -1, 94, -1, 58, 124, + -1, -1, -1, 63, -1, -1, 93, 94, -1, -1, + -1, -1, -1, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, -1, -1, 124, -1, 41, 41, + -1, 44, 44, 93, 37, 38, -1, 124, 41, 42, + 43, 44, 45, -1, 47, 58, 58, -1, -1, -1, + 63, 63, -1, -1, -1, -1, -1, 60, -1, 62, + 63, 37, 38, -1, -1, 41, 42, 43, 44, 45, + -1, 47, 262, 263, 264, 265, 266, 267, 268, 269, + 93, 93, -1, -1, 60, -1, 62, 63, 0, -1, + -1, 94, -1, -1, -1, -1, -1, -1, -1, 262, + 263, 264, 265, 266, 267, 268, 269, 44, -1, 46, + 262, 263, 264, 265, 266, 267, 268, 269, 94, -1, + -1, 124, 59, 60, -1, 62, 63, -1, -1, 41, + 38, -1, 44, 41, -1, -1, 44, 262, 263, 264, + 265, 266, 267, 268, 269, -1, 58, 59, 124, -1, + 58, 63, 60, -1, 62, 63, -1, -1, -1, -1, + -1, -1, -1, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, -1, 262, 263, 264, 265, 266, + 267, 268, 269, 37, 38, 93, 94, -1, 42, 43, + 44, 45, -1, 47, 37, 38, -1, -1, 41, 42, + 43, 44, 45, -1, 47, -1, 60, -1, 62, 63, + -1, -1, -1, 125, -1, -1, 124, 60, -1, 62, + 63, 37, 38, -1, -1, 41, 42, 43, 44, 45, + -1, 47, -1, -1, -1, -1, -1, -1, -1, 93, + 94, -1, -1, -1, 60, -1, 62, 63, 37, 38, + -1, 94, 41, 42, 43, 44, 45, -1, 47, 262, + 263, 264, 265, 266, 267, 268, 269, -1, -1, -1, + 124, 60, -1, 62, 63, -1, -1, -1, 94, -1, + -1, 124, -1, -1, -1, -1, 262, 263, 264, 265, + 266, 267, 268, 269, 37, 38, -1, -1, 41, 42, + 43, 44, 45, -1, 47, 94, 37, 38, 124, -1, + 41, 42, 43, 44, 45, -1, 47, 60, 41, 62, + 63, -1, -1, 46, -1, 262, 263, 264, 265, 60, + -1, 62, 63, 270, -1, 124, 59, 60, -1, 62, + 63, -1, 37, 38, -1, -1, 41, 42, 43, 44, + 45, 94, 47, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, 94, -1, 60, -1, 62, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 37, 38, + -1, 124, 41, 42, 43, 44, 45, -1, 47, -1, + -1, -1, -1, 124, -1, -1, -1, -1, -1, 94, + -1, 60, -1, 62, 63, -1, -1, -1, 262, 263, + 264, 265, 266, 267, 268, 269, -1, -1, -1, 262, + 263, 264, 265, 266, 267, 268, 269, 0, -1, 124, + -1, -1, -1, -1, -1, 94, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 262, 263, 264, 265, + 266, 267, 268, 269, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 124, -1, -1, 41, -1, + -1, 44, -1, 262, 263, 264, 265, 266, 267, 268, + 269, -1, -1, -1, -1, 58, 59, -1, 37, 38, + 63, -1, 41, 42, 43, 44, 45, -1, 47, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 60, -1, 62, 63, -1, -1, -1, -1, 262, + 263, 264, 265, 266, 267, 268, 269, -1, -1, -1, + -1, 262, 263, 264, 265, 266, 267, 268, 269, 262, + 263, 264, 265, -1, -1, 94, -1, 270, -1, -1, + -1, -1, 125, -1, 37, 38, -1, -1, 41, 42, + 43, 44, 45, -1, 47, -1, -1, 262, 263, 264, + 265, 266, 267, 268, 269, 124, -1, 60, -1, 62, + 63, -1, -1, -1, -1, -1, -1, -1, -1, 37, + 38, -1, -1, 41, 42, 43, 44, 45, -1, 47, + -1, -1, -1, 262, 263, 264, 265, 266, 267, 268, + 269, 94, 60, -1, 62, 63, 46, 37, 38, -1, + -1, 41, 42, 43, 44, 45, -1, 47, -1, 59, + 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, + 60, 124, 62, 63, 37, 38, 94, -1, 41, 42, + 43, 44, 45, -1, 47, 37, 38, -1, -1, 41, + 42, 43, 44, 45, -1, 47, -1, 60, -1, 62, + 63, -1, -1, -1, 94, -1, 124, -1, 60, -1, + 62, 63, 37, 38, -1, -1, 41, 42, 43, 44, + 45, -1, 47, -1, -1, 125, -1, -1, -1, -1, + -1, 94, -1, -1, 124, 60, -1, 62, 63, -1, + -1, -1, 94, 262, 263, 264, 265, 266, 267, 268, + 269, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 124, -1, -1, -1, -1, -1, -1, -1, 94, + 37, 38, 124, -1, 41, 42, 43, 44, 45, -1, + 47, 37, 38, -1, -1, 41, 42, 43, 44, 45, + -1, 47, -1, 60, -1, 62, 63, -1, -1, 124, + -1, -1, -1, -1, 60, -1, 62, 63, -1, 262, + 263, 264, 265, 266, 267, 268, 269, -1, 37, -1, + -1, -1, -1, 42, 43, -1, 45, 94, 47, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 94, -1, + -1, 60, -1, 62, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, -1, -1, -1, 124, -1, -1, + -1, -1, 262, 263, 264, 265, 41, -1, 124, -1, + 270, 46, 262, 263, 264, 265, 266, 267, 268, 269, + -1, -1, -1, -1, 59, 60, -1, 62, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 262, + 263, 264, 265, 266, 267, 268, 269, -1, -1, -1, + 262, 263, 264, 265, 266, 267, 268, 269, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 262, 263, 264, + 265, 266, 267, 268, 269, -1, 37, 38, -1, -1, + 41, 42, 43, 44, 45, -1, 47, 37, 38, -1, + -1, 41, 42, 43, 44, 45, -1, 47, -1, 60, + -1, 62, 63, -1, -1, -1, -1, -1, -1, -1, + 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 262, 263, 264, 265, 266, + 267, 268, 269, 94, -1, -1, 262, 263, 264, 265, + 266, 267, 268, 269, 94, 37, 38, -1, -1, 41, + 42, 43, 44, 45, -1, 47, -1, -1, -1, 37, + 38, -1, -1, 124, 42, 43, 44, 45, 60, 47, + 62, 63, -1, -1, 124, 264, 265, 266, 267, -1, + -1, -1, 60, -1, 62, 63, 37, 38, -1, -1, + -1, 42, 43, 44, 45, -1, 47, -1, 37, 38, + -1, -1, 94, 42, 43, 44, 45, 58, 47, 60, + -1, 62, 63, -1, -1, 93, 94, 262, 263, 264, + 265, 60, -1, 62, 63, 270, -1, -1, -1, -1, + -1, -1, 124, -1, 37, 38, -1, -1, 41, 42, + 43, 44, 45, 94, 47, -1, 124, -1, -1, 44, + -1, 46, -1, -1, 93, 94, -1, 60, -1, 62, + 63, -1, -1, -1, 59, 60, -1, 62, 63, 37, + 38, -1, -1, 124, 42, 43, 44, 45, -1, 47, + -1, -1, -1, -1, -1, 124, -1, -1, -1, -1, + -1, 94, 60, -1, 62, 63, -1, -1, -1, -1, + -1, 262, 263, 264, 265, 266, 267, 268, 269, -1, + -1, -1, 262, 263, 264, 265, 266, 267, 268, 269, + -1, 124, 37, 38, -1, -1, 94, 42, 43, 44, + 45, -1, 47, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 37, 60, -1, 62, 63, 42, + 43, -1, 45, -1, 47, -1, 124, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 60, -1, 62, + 262, 263, 264, 265, 266, 267, 268, 269, -1, 94, + -1, -1, -1, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, -1, -1, 37, 38, -1, -1, + -1, 42, 43, 44, 45, -1, 47, -1, -1, 124, + -1, 262, 263, 264, 265, 266, 267, 268, 269, 60, + -1, 62, 63, 262, 263, 264, 265, 266, 267, 268, + 269, 37, 38, -1, -1, -1, 42, 43, 44, 45, + -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 94, 60, -1, 62, 63, -1, 262, + 263, 264, 265, 266, 267, 268, 269, 262, 263, 264, + 265, -1, -1, -1, -1, 270, -1, -1, -1, -1, + -1, 37, 38, 124, -1, 41, 42, 43, 94, 45, + -1, 47, -1, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, 60, -1, 62, 63, -1, 37, + 38, -1, -1, 41, 42, 43, -1, 45, 124, 47, + 37, 38, -1, -1, 41, 42, 43, -1, 45, -1, + 47, -1, 60, -1, 62, 63, -1, -1, 94, -1, + -1, -1, -1, 60, -1, 62, 63, 262, 263, 264, + 265, 266, 267, 268, 269, 37, 38, -1, -1, 41, + 42, 43, -1, 45, -1, 47, 94, -1, 124, 262, + 263, 264, 265, 266, 267, -1, -1, 94, 60, -1, + 62, 63, -1, 37, 38, -1, -1, -1, 42, 43, + -1, 45, -1, 47, 37, 38, 124, -1, -1, 42, + 43, -1, 45, -1, 47, -1, 60, 124, 62, 63, + -1, -1, 94, -1, -1, -1, -1, 60, -1, 62, + -1, 262, 263, 264, 265, 266, 267, 268, 269, -1, + 38, -1, -1, 41, -1, 43, 44, 45, -1, -1, + 94, -1, 124, -1, -1, -1, -1, -1, -1, -1, + 58, 94, 60, -1, 62, 63, 262, 263, 264, 265, + 266, 267, 268, 269, -1, -1, -1, -1, 38, -1, + 124, 41, -1, 43, 44, 45, 38, -1, -1, 41, + -1, 124, 44, -1, -1, 93, 94, -1, 58, -1, + 60, -1, 62, 63, -1, -1, 58, -1, 60, -1, + 62, 63, -1, -1, -1, -1, 262, 263, 264, 265, + 266, 267, 268, 269, -1, -1, 124, -1, -1, -1, + -1, -1, -1, 93, 94, -1, -1, -1, -1, -1, + -1, 93, 94, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, -1, 262, 263, 264, 265, 266, + 267, 268, 269, -1, 124, -1, -1, -1, -1, -1, + -1, -1, 124, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 262, 263, 264, 265, 266, 267, 268, 269, -1, -1, + -1, -1, -1, 37, 38, -1, -1, -1, 42, 43, + -1, 45, -1, 47, -1, -1, -1, -1, 262, 263, + 264, 265, 266, 267, 268, 269, 60, -1, 62, 262, + 263, 264, 265, 266, 267, 268, 269, 38, -1, -1, + 41, -1, -1, 44, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 58, -1, 60, + 94, 62, 63, -1, 262, 263, 264, 265, 266, 267, + 268, 269, -1, -1, 38, -1, -1, 41, -1, -1, + 44, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 124, -1, 93, 94, 58, -1, 60, -1, 62, 63, + -1, -1, 262, 263, 264, 265, 266, 267, 268, 269, + 262, 263, 264, 265, 266, 267, 268, 269, 38, -1, + -1, 41, -1, 124, 44, -1, -1, -1, 38, 93, + 94, 41, -1, -1, 44, -1, -1, -1, 58, -1, + 60, 38, 62, 63, 41, -1, -1, 44, 58, -1, + 60, 38, 62, 63, 41, -1, -1, 44, -1, -1, + 124, 58, 37, 38, -1, -1, 63, 42, 43, -1, + 45, 58, 47, 93, 94, -1, 63, -1, -1, -1, + -1, -1, -1, 93, 94, 60, -1, 62, -1, -1, + -1, -1, -1, 37, 38, -1, 93, 94, 42, 43, + -1, 45, -1, 47, 124, -1, 93, 94, -1, -1, + -1, -1, -1, -1, 124, -1, 60, 41, 62, 94, + -1, -1, 46, -1, -1, -1, -1, 124, 262, 263, + 264, 265, 266, 267, 268, 59, 60, 124, 62, 63, + -1, 46, -1, -1, -1, -1, -1, -1, -1, 124, + -1, 41, -1, 58, 59, 60, 46, 62, 63, -1, + 41, 262, 263, 264, 265, 46, -1, 268, 269, 59, + 60, 41, 62, 63, -1, -1, 46, -1, 59, 60, + -1, 62, 63, -1, -1, -1, -1, -1, -1, 59, + 60, 41, 62, 63, -1, -1, 46, -1, 262, 263, + 264, 265, 41, -1, 268, 269, -1, 46, -1, 59, + 60, -1, 62, 63, 44, -1, 46, -1, -1, -1, + 59, 60, -1, 62, 63, -1, -1, -1, -1, 59, + 60, -1, 62, 63, -1, -1, -1, -1, -1, -1, + -1, -1, 262, 263, 264, 265, -1, 46, 268, 269, + -1, -1, 262, 263, 264, 265, -1, -1, 268, 269, + 59, 60, -1, 62, 63, 262, 263, -1, -1, -1, + -1, 268, 269, -1, -1, 262, 263, -1, 44, -1, + 46, 268, 269, -1, -1, -1, -1, 262, 263, 264, + 265, 266, 267, 59, 60, -1, 62, 63, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 262, 263, + 264, 265, 266, 267, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 262, 263, + 264, 265, -1, -1, -1, -1, 270, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 262, 263, 264, + 265, -1, -1, -1, -1, 270, -1, -1, -1, -1, + -1, -1, 262, 263, 264, 265, -1, -1, -1, -1, + 270, 262, 263, 264, 265, -1, -1, -1, -1, 270, + -1, -1, 262, 263, 264, 265, -1, -1, -1, -1, + 270, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 262, 263, 264, 265, -1, -1, -1, -1, + 270, -1, -1, 262, 263, 264, 265, -1, -1, -1, + -1, 270, 262, 263, 264, 265, -1, -1, -1, -1, + 270, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 262, 263, 264, 265, -1, -1, -1, + -1, 270, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 262, 263, 264, 265, + -1, -1, -1, -1, 270, +}; +#define YYFINAL 26 +#ifndef YYDEBUG +#define YYDEBUG 0 +#endif +#define YYMAXTOKEN 346 +#if YYDEBUG +char *parsername[] = { +"end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +"'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'","'.'","'/'",0, +0,0,0,0,0,0,0,0,0,"':'","';'","'<'","'='","'>'","'?'",0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,"'['",0,"']'","'^'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,"'{'","'|'","'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"NUMBER", +"STRING","SYMBOL","FIELD","VAR","EQ","NEQ","LE","GE","SHR","SHL","AND","OR", +"IN","PLA","MIA","MUA","MOA","DVA","ANA","ORA","INC","DEC_","APP","AVG","DEV", +"AMIN","AMAX","SUM","QAVG","QDEV","QMIN_","QMAX_","QSUM","SAVG","SDEV","SMIN", +"SMAX","SSUM","ABS","INT","BOUND","LEN","CHOP","TR","SUBSTR","SQRT","EXP","LOG", +"LN","POW","RANDOM","SIN","COS","TAN","ASIN","ACOS","ATAN","ATAN2","DATE", +"TIME","DURATION","EXPAND","YEAR","MONTH","DAY","HOUR","MINUTE","SECOND","LEAP", +"JULIAN","SECTION_","DBASE_","FORM_","PREVFORM","SWITCH","THIS","LAST","DISP", +"FOREACH","HOST","USER","UID","GID","SYSTEM","ACCESS","BEEP","ERROR","PRINTF", +"UMINUS", +}; +char *parserrule[] = { +"$accept : stmt", +"stmt : string", +"string : STRING", +"string : '{' string '}'", +"string : string ';' string", +"string : string '.' string", +"string : VAR", +"string : VAR APP string", +"string : VAR '=' string", +"string : '(' number ')'", +"string : string '?' string ':' string", +"string : string '<' string", +"string : string '>' string", +"string : string EQ string", +"string : string NEQ string", +"string : string LE string", +"string : string GE string", +"string : string IN string", +"string : FIELD", +"string : FIELD '[' number ']'", +"string : FIELD '=' string", +"string : FIELD '[' number ']' '=' string", +"string : SYSTEM '(' string ')'", +"string : '$' SYMBOL", +"string : CHOP '(' string ')'", +"string : TR '(' string ',' string ')'", +"string : SUBSTR '(' string ',' number ',' number ')'", +"string : HOST", +"string : USER", +"string : PREVFORM", +"string : SECTION_", +"string : SECTION_ '[' number ']'", +"string : FORM_", +"string : DBASE_", +"string : SWITCH '(' string ',' string ')'", +"string : FOREACH '(' string ')'", +"string : FOREACH '(' string ',' string ')'", +"string : TIME", +"string : DATE", +"string : TIME '(' number ')'", +"string : DATE '(' number ')'", +"string : DURATION '(' number ')'", +"string : EXPAND '(' FIELD ')'", +"string : EXPAND '(' FIELD '[' number ']' ')'", +"string : PRINTF '(' args ')'", +"string : BEEP", +"string : ERROR '(' args ')'", +"args : string", +"args : args ',' string", +"number : NUMBER", +"number : '{' string '}'", +"number : '(' number ')'", +"number : FIELD", +"number : FIELD '[' number ']'", +"number : FIELD '=' number", +"number : FIELD '[' number ']' '=' number", +"number : VAR", +"number : VAR '=' number", +"number : VAR PLA number", +"number : VAR MIA number", +"number : VAR MUA number", +"number : VAR DVA number", +"number : VAR MOA number", +"number : VAR ANA number", +"number : VAR ORA number", +"number : VAR INC", +"number : VAR DEC_", +"number : INC VAR", +"number : DEC_ VAR", +"number : '-' number", +"number : '!' number", +"number : '~' number", +"number : number '&' number", +"number : number '^' number", +"number : number '|' number", +"number : number SHL number", +"number : number SHR number", +"number : number '%' number", +"number : number '+' number", +"number : number '-' number", +"number : number '*' number", +"number : number '/' number", +"number : number '<' number", +"number : number '>' number", +"number : number EQ number", +"number : number NEQ number", +"number : number LE number", +"number : number GE number", +"number : number AND number", +"number : number OR number", +"number : number '?' number ':' number", +"number : number ',' number", +"number : THIS", +"number : LAST", +"number : DISP", +"number : AVG '(' FIELD ')'", +"number : DEV '(' FIELD ')'", +"number : AMIN '(' FIELD ')'", +"number : AMAX '(' FIELD ')'", +"number : SUM '(' FIELD ')'", +"number : QAVG '(' FIELD ')'", +"number : QDEV '(' FIELD ')'", +"number : QMIN_ '(' FIELD ')'", +"number : QMAX_ '(' FIELD ')'", +"number : QSUM '(' FIELD ')'", +"number : SAVG '(' FIELD ')'", +"number : SDEV '(' FIELD ')'", +"number : SMIN '(' FIELD ')'", +"number : SMAX '(' FIELD ')'", +"number : SSUM '(' FIELD ')'", +"number : ABS '(' number ')'", +"number : INT '(' number ')'", +"number : BOUND '(' number ',' number ',' number ')'", +"number : LEN '(' string ')'", +"number : SQRT '(' number ')'", +"number : EXP '(' number ')'", +"number : LOG '(' number ')'", +"number : LN '(' number ')'", +"number : POW '(' number ',' number ')'", +"number : RANDOM", +"number : SIN '(' number ')'", +"number : COS '(' number ')'", +"number : TAN '(' number ')'", +"number : ASIN '(' number ')'", +"number : ACOS '(' number ')'", +"number : ATAN '(' number ')'", +"number : ATAN2 '(' number ',' number ')'", +"number : SECTION_", +"number : SECTION_ '[' number ']'", +"number : DATE", +"number : DATE '(' string ')'", +"number : TIME '(' string ')'", +"number : DURATION '(' string ')'", +"number : YEAR '(' number ')'", +"number : MONTH '(' number ')'", +"number : DAY '(' number ')'", +"number : HOUR '(' number ')'", +"number : MINUTE '(' number ')'", +"number : SECOND '(' number ')'", +"number : JULIAN '(' number ')'", +"number : LEAP '(' number ')'", +"number : UID", +"number : GID", +"number : ACCESS '(' string ',' number ')'", +}; +#endif +#ifdef YYSTACKSIZE +#undef YYMAXDEPTH +#define YYMAXDEPTH YYSTACKSIZE +#else +#ifdef YYMAXDEPTH +#define YYSTACKSIZE YYMAXDEPTH +#else +#define YYSTACKSIZE 500 +#define YYMAXDEPTH 500 +#endif +#endif +int yydebug; +int yynerrs; +int yyerrflag; +int yychar; +short *yyssp; +YYSTYPE *yyvsp; +YYSTYPE yyval; +YYSTYPE yylval; +short yyss[YYSTACKSIZE]; +YYSTYPE yyvs[YYSTACKSIZE]; +#define yystacksize YYSTACKSIZE +#define YYABORT goto yyabort +#define YYREJECT goto yyabort +#define YYACCEPT goto yyaccept +#define YYERROR goto yyerrlab +int +yyparse(void) +{ + register int yym, yyn, yystate; +#if YYDEBUG + register char *yys; + extern char *getenv(); + + if (yys = getenv("YYDEBUG")) + { + yyn = *yys; + if (yyn >= '0' && yyn <= '9') + yydebug = yyn - '0'; + } +#endif + + yynerrs = 0; + yyerrflag = 0; + yychar = (-1); + + yyssp = yyss; + yyvsp = yyvs; + *yyssp = yystate = 0; + +yyloop: + if ((yyn = yydefred[yystate]) != 0) goto yyreduce; + if (yychar < 0) + { + if ((yychar = yylex()) < 0) yychar = 0; +#if YYDEBUG + if (yydebug) + { + yys = 0; + if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; + if (!yys) yys = "illegal-symbol"; + printf("%sdebug: state %d, reading %d (%s)\n", + YYPREFIX, yystate, yychar, yys); + } +#endif + } + if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == yychar) + { +#if YYDEBUG + if (yydebug) + printf("%sdebug: state %d, shifting to state %d\n", + YYPREFIX, yystate, yytable[yyn]); +#endif + if (yyssp >= yyss + yystacksize - 1) + { + goto yyoverflow; + } + *++yyssp = yystate = yytable[yyn]; + *++yyvsp = yylval; + yychar = (-1); + if (yyerrflag > 0) --yyerrflag; + goto yyloop; + } + if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == yychar) + { + yyn = yytable[yyn]; + goto yyreduce; + } + if (yyerrflag) goto yyinrecovery; +#ifdef lint + goto yynewerror; +#endif +yynewerror: + yyerror("syntax error"); +#ifdef lint + goto yyerrlab; +#endif +yyerrlab: + ++yynerrs; +yyinrecovery: + if (yyerrflag < 3) + { + yyerrflag = 3; + for (;;) + { + if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE) + { +#if YYDEBUG + if (yydebug) + printf("%sdebug: state %d, error recovery shifting\ + to state %d\n", YYPREFIX, *yyssp, yytable[yyn]); +#endif + if (yyssp >= yyss + yystacksize - 1) + { + goto yyoverflow; + } + *++yyssp = yystate = yytable[yyn]; + *++yyvsp = yylval; + goto yyloop; + } + else + { +#if YYDEBUG + if (yydebug) + printf("%sdebug: error recovery discarding state %d\n", + YYPREFIX, *yyssp); +#endif + if (yyssp <= yyss) goto yyabort; + --yyssp; + --yyvsp; + } + } + } + else + { + if (yychar == 0) goto yyabort; +#if YYDEBUG + if (yydebug) + { + yys = 0; + if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; + if (!yys) yys = "illegal-symbol"; + printf("%sdebug: state %d, error recovery discards token %d (%s)\n", + YYPREFIX, yystate, yychar, yys); + } +#endif + yychar = (-1); + goto yyloop; + } +yyreduce: +#if YYDEBUG + if (yydebug) + printf("%sdebug: state %d, reducing by rule %d (%s)\n", + YYPREFIX, yystate, yyn, yyrule[yyn]); +#endif + yym = yylen[yyn]; + yyval = yyvsp[1-yym]; + switch (yyn) + { +case 1: +#line 71 "parser.y" +{ yyret = yyvsp[0].sval; } +break; +case 2: +#line 74 "parser.y" +{ yyval.sval = yyvsp[0].sval; } +break; +case 3: +#line 75 "parser.y" +{ yyval.sval = yyvsp[-1].sval; } +break; +case 4: +#line 76 "parser.y" +{ yyval.sval = yyvsp[0].sval; f_free(yyvsp[-2].sval); } +break; +case 5: +#line 77 "parser.y" +{ char *s=yyvsp[-2].sval, *t=yyvsp[0].sval, *r=new + char[f_len(s)+f_len(t)+1]; *r=0; + if (s) strcpy(r, s); f_free(s); + if (t) strcat(r, t); f_free(t); + yyval.sval = r; } +break; +case 6: +#line 82 "parser.y" +{ yyval.sval = f_getsvar(yyvsp[0].ival); } +break; +case 7: +#line 83 "parser.y" +{ int v=yyvsp[-2].ival; + char *s=f_getsvar(v), *t=yyvsp[0].sval, *r=new + char[f_len(s)+f_len(t)+1]; *r=0; + if (s) strcpy(r, s); f_free(s); + if (t) strcat(r, t); f_free(t); + yyval.sval = f_setsvar(v, r); } +break; +case 8: +#line 89 "parser.y" +{ yyval.sval = f_setsvar(yyvsp[-2].ival, yyvsp[0].sval);} +break; +case 9: +#line 90 "parser.y" +{ yyval.sval = f_str(yyvsp[-1].dval); } +break; +case 10: +#line 91 "parser.y" +{ yyval.sval = f_num(yyvsp[-4].sval) ? yyvsp[-2].sval : yyvsp[0].sval; } +break; +case 11: +#line 92 "parser.y" +{ yyval.sval = f_str((double) + (f_cmp(yyvsp[-2].sval, yyvsp[0].sval) < 0));} +break; +case 12: +#line 94 "parser.y" +{ yyval.sval = f_str((double) + (f_cmp(yyvsp[-2].sval, yyvsp[0].sval) > 0));} +break; +case 13: +#line 96 "parser.y" +{ yyval.sval = f_str((double) + (f_cmp(yyvsp[-2].sval, yyvsp[0].sval) == 0));} +break; +case 14: +#line 98 "parser.y" +{ yyval.sval = f_str((double) + (f_cmp(yyvsp[-2].sval, yyvsp[0].sval) != 0));} +break; +case 15: +#line 100 "parser.y" +{ yyval.sval = f_str((double) + (f_cmp(yyvsp[-2].sval, yyvsp[0].sval) <= 0));} +break; +case 16: +#line 102 "parser.y" +{ yyval.sval = f_str((double) + (f_cmp(yyvsp[-2].sval, yyvsp[0].sval) >= 0));} +break; +case 17: +#line 104 "parser.y" +{ yyval.sval = f_str((double)f_instr(yyvsp[-2].sval, yyvsp[0].sval));} +break; +case 18: +#line 105 "parser.y" +{ yyval.sval = f_field(yyvsp[0].ival,database->getrow());} +break; +case 19: +#line 106 "parser.y" +{ yyval.sval = f_field(yyvsp[-3].ival, (int)yyvsp[-1].dval); } +break; +case 20: +#line 107 "parser.y" +{ yyval.sval = f_assign(yyvsp[-2].ival, + database->getrow(), yyvsp[0].sval); + assigned = 1; } +break; +case 21: +#line 111 "parser.y" +{ yyval.sval = f_assign(yyvsp[-5].ival, (int)yyvsp[-3].dval, yyvsp[0].sval); + assigned = 1; } +break; +case 22: +#line 113 "parser.y" +{ yyval.sval = f_system(yyvsp[-1].sval); } +break; +case 23: +#line 114 "parser.y" +{ yyval.sval = copystring(getenv(yyvsp[0].sval)); } +break; +case 24: +#line 115 "parser.y" +{ char *s=yyvsp[-1].sval; if (s) { int n=strlen(s); + if (n && s[n-1]=='\n') s[n-1] = 0; } + yyval.sval = s; } +break; +case 25: +#line 118 "parser.y" +{ yyval.sval = f_tr(yyvsp[-3].sval, yyvsp[-1].sval); } +break; +case 26: +#line 120 "parser.y" +{ yyval.sval = f_substr(yyvsp[-5].sval, (int)yyvsp[-3].dval, (int)yyvsp[-1].dval);} +break; +case 27: +#line 121 "parser.y" +{ char s[80]; if (gethostname(s, 80)) + *s=0; s[80-1]=0; yyval.sval = copystring(s);} +break; +case 28: +#line 123 "parser.y" +{ yyval.sval = copystring(getenv("USER")); } +break; +case 29: +#line 124 "parser.y" +{ yyval.sval = copystring(prev_form); } +break; +case 30: +#line 125 "parser.y" +{ yyval.sval = !database ? 0 : copystring( + sections->at(sections->curr())->name);} +break; +case 31: +#line 127 "parser.y" +{ yyval.sval = copystring(sections->at( + f_section((int)yyvsp[-1].dval))->name);} +break; +case 32: +#line 129 "parser.y" +{ yyval.sval = form && form->name ? + copystring(resolve_tilde + (form->memindex, + form->name, "gf")):0;} +break; +case 33: +#line 133 "parser.y" +{ yyval.sval = form && form->dbase ? + copystring(resolve_tilde + (form->memindex, + form->dbase, + form->proc ? + 0 : "db")) :0;} +break; +case 34: +#line 140 "parser.y" +{ char *name = yyvsp[-3].sval, *expr = yyvsp[-1].sval; + f_free(switch_name); + f_free(switch_expr); + switch_name = copystring(name); + switch_expr = copystring(expr); + f_free(name); f_free(expr); yyval.sval = 0; } +break; +case 35: +#line 146 "parser.y" +{ f_foreach(0, yyvsp[-1].sval); yyval.sval = 0; } +break; +case 36: +#line 148 "parser.y" +{ f_foreach(yyvsp[-3].sval, yyvsp[-1].sval); yyval.sval = 0; } +break; +case 37: +#line 149 "parser.y" +{ yyval.sval = copystring(mktimestring + (time(0), FALSE)); } +break; +case 38: +#line 151 "parser.y" +{ yyval.sval = copystring(mkdatestring + (time(0))); } +break; +case 39: +#line 153 "parser.y" +{ yyval.sval = copystring(mktimestring + ((time_t)yyvsp[-1].dval, FALSE)); } +break; +case 40: +#line 155 "parser.y" +{ yyval.sval = copystring(mkdatestring + ((time_t)yyvsp[-1].dval)); } +break; +case 41: +#line 157 "parser.y" +{ yyval.sval = copystring(mktimestring + ((time_t)yyvsp[-1].dval, TRUE)); } +break; +case 42: +#line 159 "parser.y" +{ yyval.sval = f_expand(yyvsp[-1].ival, + database->getrow()); } +break; +case 43: +#line 162 "parser.y" +{ yyval.sval = f_expand(yyvsp[-4].ival, (int)yyvsp[-2].dval); } +break; +case 44: +#line 163 "parser.y" +{ yyval.sval = f_printf(yyvsp[-1].aval); } +break; +case 45: +#line 164 "parser.y" +{ /*<<< XBell(display, 0);*/ yyval.sval = 0; } +break; +case 46: +#line 165 "parser.y" +{ char *s = f_printf(yyvsp[-1].aval); + QMessageBox::warning(0, "KGrok", s); + f_free(s); yyval.sval = 0; } +break; +case 47: +#line 170 "parser.y" +{ yyval.aval = f_addarg(0, yyvsp[0].sval); } +break; +case 48: +#line 171 "parser.y" +{ yyval.aval = f_addarg(yyvsp[-2].aval, yyvsp[0].sval); } +break; +case 49: +#line 174 "parser.y" +{ yyval.dval = yyvsp[0].dval; } +break; +case 50: +#line 175 "parser.y" +{ yyval.dval = f_num(yyvsp[-1].sval); } +break; +case 51: +#line 176 "parser.y" +{ yyval.dval = yyvsp[-1].dval; } +break; +case 52: +#line 177 "parser.y" +{ yyval.dval = f_num(f_field(yyvsp[0].ival, + database->getrow())); } +break; +case 53: +#line 179 "parser.y" +{ yyval.dval = f_num(f_field(yyvsp[-3].ival, (int)yyvsp[-1].dval)); } +break; +case 54: +#line 180 "parser.y" +{ f_free(f_assign(yyvsp[-2].ival, database-> + getrow(), f_str(yyval.dval = yyvsp[0].dval))); + assigned = 1; } +break; +case 55: +#line 184 "parser.y" +{ f_free(f_assign(yyvsp[-5].ival, (int)yyvsp[-3].dval, + f_str(yyval.dval = yyvsp[0].dval))); assigned = 1; } +break; +case 56: +#line 186 "parser.y" +{ yyval.dval = f_getnvar(yyvsp[0].ival); } +break; +case 57: +#line 187 "parser.y" +{ yyval.dval = f_setnvar(yyvsp[-2].ival, yyvsp[0].dval); } +break; +case 58: +#line 188 "parser.y" +{ int v = yyvsp[-2].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)+yyvsp[0].dval); } +break; +case 59: +#line 190 "parser.y" +{ int v = yyvsp[-2].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)-yyvsp[0].dval); } +break; +case 60: +#line 192 "parser.y" +{ int v = yyvsp[-2].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)*yyvsp[0].dval); } +break; +case 61: +#line 194 "parser.y" +{ int v = yyvsp[-2].ival; double d=yyvsp[0].dval; if(d==0)d=1; + yyval.dval = f_setnvar(v, f_getnvar(v)/d); } +break; +case 62: +#line 196 "parser.y" +{ int v = yyvsp[-2].ival; double d=yyvsp[0].dval; if(d==0)d=1; + yyval.dval = f_setnvar(v, (double)((int) + f_getnvar(v)%(int)d));} +break; +case 63: +#line 199 "parser.y" +{ int v = yyvsp[-2].ival; + yyval.dval = f_setnvar(v, (double)((int)yyvsp[0].dval & + (int)f_getnvar(v)));} +break; +case 64: +#line 202 "parser.y" +{ int v = yyvsp[-2].ival; + yyval.dval = f_setnvar(v, (double)((int)yyvsp[0].dval | + (int)f_getnvar(v)));} +break; +case 65: +#line 205 "parser.y" +{ int v = yyvsp[-1].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)+1)-1;} +break; +case 66: +#line 207 "parser.y" +{ int v = yyvsp[-1].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)-1)+1;} +break; +case 67: +#line 209 "parser.y" +{ int v = yyvsp[0].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)+1); } +break; +case 68: +#line 211 "parser.y" +{ int v = yyvsp[0].ival; + yyval.dval = f_setnvar(v, f_getnvar(v)-1); } +break; +case 69: +#line 213 "parser.y" +{ yyval.dval = - yyvsp[0].dval; } +break; +case 70: +#line 214 "parser.y" +{ yyval.dval = ! yyvsp[0].dval; } +break; +case 71: +#line 215 "parser.y" +{ yyval.dval = ~ (int)yyvsp[0].dval; } +break; +case 72: +#line 216 "parser.y" +{ yyval.dval = (int)yyvsp[-2].dval & (int)yyvsp[0].dval; } +break; +case 73: +#line 217 "parser.y" +{ yyval.dval = (int)yyvsp[-2].dval ^ (int)yyvsp[0].dval; } +break; +case 74: +#line 218 "parser.y" +{ yyval.dval = (int)yyvsp[-2].dval | (int)yyvsp[0].dval; } +break; +case 75: +#line 219 "parser.y" +{ yyval.dval = (int)yyvsp[-2].dval << (int)yyvsp[0].dval; } +break; +case 76: +#line 220 "parser.y" +{ yyval.dval = (int)yyvsp[-2].dval >> (int)yyvsp[0].dval; } +break; +case 77: +#line 221 "parser.y" +{ int i=(int)yyvsp[0].dval; if (i==0) i=1; + yyval.dval = (int)yyvsp[-2].dval % i; } +break; +case 78: +#line 223 "parser.y" +{ yyval.dval = yyvsp[-2].dval + yyvsp[0].dval; } +break; +case 79: +#line 224 "parser.y" +{ yyval.dval = yyvsp[-2].dval - yyvsp[0].dval; } +break; +case 80: +#line 225 "parser.y" +{ yyval.dval = yyvsp[-2].dval * yyvsp[0].dval; } +break; +case 81: +#line 226 "parser.y" +{ double d=yyvsp[0].dval; if (d==0) d=1; + yyval.dval = yyvsp[-2].dval / d; } +break; +case 82: +#line 228 "parser.y" +{ yyval.dval = yyvsp[-2].dval < yyvsp[0].dval; } +break; +case 83: +#line 229 "parser.y" +{ yyval.dval = yyvsp[-2].dval > yyvsp[0].dval; } +break; +case 84: +#line 230 "parser.y" +{ yyval.dval = yyvsp[-2].dval == yyvsp[0].dval; } +break; +case 85: +#line 231 "parser.y" +{ yyval.dval = yyvsp[-2].dval != yyvsp[0].dval; } +break; +case 86: +#line 232 "parser.y" +{ yyval.dval = yyvsp[-2].dval <= yyvsp[0].dval; } +break; +case 87: +#line 233 "parser.y" +{ yyval.dval = yyvsp[-2].dval >= yyvsp[0].dval; } +break; +case 88: +#line 234 "parser.y" +{ yyval.dval = yyvsp[-2].dval && yyvsp[0].dval; } +break; +case 89: +#line 235 "parser.y" +{ yyval.dval = yyvsp[-2].dval || yyvsp[0].dval; } +break; +case 90: +#line 236 "parser.y" +{ yyval.dval = yyvsp[-4].dval ? yyvsp[-2].dval : yyvsp[0].dval; } +break; +case 91: +#line 237 "parser.y" +{ yyval.dval = yyvsp[0].dval; } +break; +case 92: +#line 238 "parser.y" +{ yyval.dval = database->getrow() > 0 ? + database->getrow() : 0; } +break; +case 93: +#line 240 "parser.y" +{ yyval.dval = database ? + database->rowcount() - 1 : -1; } +break; +case 94: +#line 242 "parser.y" +{ /*<<<$$ = database && card->disprow >= 0 + && card->disprow < + database->rowcount() + ? card->disprow : -1; <<<*/ } +break; +case 95: +#line 246 "parser.y" +{ yyval.dval = f_avg(yyvsp[-1].ival); } +break; +case 96: +#line 247 "parser.y" +{ yyval.dval = f_dev(yyvsp[-1].ival); } +break; +case 97: +#line 248 "parser.y" +{ yyval.dval = f_min(yyvsp[-1].ival); } +break; +case 98: +#line 249 "parser.y" +{ yyval.dval = f_max(yyvsp[-1].ival); } +break; +case 99: +#line 250 "parser.y" +{ yyval.dval = f_sum(yyvsp[-1].ival); } +break; +case 100: +#line 251 "parser.y" +{ yyval.dval = f_qavg(yyvsp[-1].ival); } +break; +case 101: +#line 252 "parser.y" +{ yyval.dval = f_qdev(yyvsp[-1].ival); } +break; +case 102: +#line 253 "parser.y" +{ yyval.dval = f_qmin(yyvsp[-1].ival); } +break; +case 103: +#line 254 "parser.y" +{ yyval.dval = f_qmax(yyvsp[-1].ival); } +break; +case 104: +#line 255 "parser.y" +{ yyval.dval = f_qsum(yyvsp[-1].ival); } +break; +case 105: +#line 256 "parser.y" +{ yyval.dval = f_savg(yyvsp[-1].ival); } +break; +case 106: +#line 257 "parser.y" +{ yyval.dval = f_sdev(yyvsp[-1].ival); } +break; +case 107: +#line 258 "parser.y" +{ yyval.dval = f_smin(yyvsp[-1].ival); } +break; +case 108: +#line 259 "parser.y" +{ yyval.dval = f_smax(yyvsp[-1].ival); } +break; +case 109: +#line 260 "parser.y" +{ yyval.dval = f_ssum(yyvsp[-1].ival); } +break; +case 110: +#line 261 "parser.y" +{ yyval.dval = fabs(yyvsp[-1].dval); } +break; +case 111: +#line 262 "parser.y" +{ yyval.dval = (int)(yyvsp[-1].dval); } +break; +case 112: +#line 264 "parser.y" +{ register double a=yyvsp[-5].dval, b=yyvsp[-3].dval, c=yyvsp[-1].dval; + yyval.dval = a < b ? b : a > c ? c : a; } +break; +case 113: +#line 266 "parser.y" +{ char *a=yyvsp[-1].sval; yyval.dval = a ? f_len(a) : 0; + f_free(a); } +break; +case 114: +#line 268 "parser.y" +{ yyval.dval = sqrt(fabs(yyvsp[-1].dval)); } +break; +case 115: +#line 269 "parser.y" +{ yyval.dval = exp(yyvsp[-1].dval); } +break; +case 116: +#line 270 "parser.y" +{ double a=yyvsp[-1].dval; yyval.dval = a<=0 ? 0:log10(a);} +break; +case 117: +#line 271 "parser.y" +{ double a=yyvsp[-1].dval; yyval.dval = a<=0 ? 0:log(a); } +break; +case 118: +#line 273 "parser.y" +{ yyval.dval = pow(yyvsp[-3].dval, yyvsp[-1].dval); } +break; +case 119: +#line 274 "parser.y" +{ yyval.dval = drand48(); } +break; +case 120: +#line 275 "parser.y" +{ yyval.dval = sin(yyvsp[-1].dval); } +break; +case 121: +#line 276 "parser.y" +{ yyval.dval = cos(yyvsp[-1].dval); } +break; +case 122: +#line 277 "parser.y" +{ yyval.dval = tan(yyvsp[-1].dval); } +break; +case 123: +#line 278 "parser.y" +{ yyval.dval = asin(yyvsp[-1].dval); } +break; +case 124: +#line 279 "parser.y" +{ yyval.dval = acos(yyvsp[-1].dval); } +break; +case 125: +#line 280 "parser.y" +{ yyval.dval = atan(yyvsp[-1].dval); } +break; +case 126: +#line 282 "parser.y" +{ yyval.dval = atan2(yyvsp[-3].dval, yyvsp[-1].dval); } +break; +case 127: +#line 283 "parser.y" +{ yyval.dval = database ? sections->curr() :0;} +break; +case 128: +#line 284 "parser.y" +{ yyval.dval = f_section((int)yyvsp[-1].dval); } +break; +case 129: +#line 285 "parser.y" +{ yyval.dval = time(0); } +break; +case 130: +#line 286 "parser.y" +{ yyval.dval = parse_datetimestring(yyvsp[-1].sval); } +break; +case 131: +#line 287 "parser.y" +{ yyval.dval = parse_timestring(yyvsp[-1].sval, FALSE); } +break; +case 132: +#line 288 "parser.y" +{ yyval.dval = parse_timestring(yyvsp[-1].sval, TRUE); } +break; +case 133: +#line 289 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_year; } +break; +case 134: +#line 291 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_mon+1; } +break; +case 135: +#line 293 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_mday; } +break; +case 136: +#line 295 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_hour; } +break; +case 137: +#line 297 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_min; } +break; +case 138: +#line 299 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_sec; } +break; +case 139: +#line 301 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + yyval.dval = localtime(&t)->tm_yday; } +break; +case 140: +#line 303 "parser.y" +{ const time_t t = (time_t)yyvsp[-1].dval; + int y=localtime(&t)->tm_year; + yyval.dval = !(y%4) ^ !(y%100) ^ !(y%400); } +break; +case 141: +#line 306 "parser.y" +{ yyval.dval = getuid(); } +break; +case 142: +#line 307 "parser.y" +{ yyval.dval = getgid(); } +break; +case 143: +#line 309 "parser.y" +{ char *a = yyvsp[-3].sval; + yyval.dval = a ? access(a, (int)yyvsp[-1].dval) : 0; + f_free(a); } +break; +#line 1993 "y.tab.c" + } + yyssp -= yym; + yystate = *yyssp; + yyvsp -= yym; + yym = yylhs[yyn]; + if (yystate == 0 && yym == 0) + { +#if YYDEBUG + if (yydebug) + printf("%sdebug: after reduction, shifting from state 0 to\ + state %d\n", YYPREFIX, YYFINAL); +#endif + yystate = YYFINAL; + *++yyssp = YYFINAL; + *++yyvsp = yyval; + if (yychar < 0) + { + if ((yychar = yylex()) < 0) yychar = 0; +#if YYDEBUG + if (yydebug) + { + yys = 0; + if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; + if (!yys) yys = "illegal-symbol"; + printf("%sdebug: state %d, reading %d (%s)\n", + YYPREFIX, YYFINAL, yychar, yys); + } +#endif + } + if (yychar == 0) goto yyaccept; + goto yyloop; + } + if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == yystate) + yystate = yytable[yyn]; + else + yystate = yydgoto[yym]; +#if YYDEBUG + if (yydebug) + printf("%sdebug: after reduction, shifting from state %d \ +to state %d\n", YYPREFIX, *yyssp, yystate); +#endif + if (yyssp >= yyss + yystacksize - 1) + { + goto yyoverflow; + } + *++yyssp = yystate; + *++yyvsp = yyval; + goto yyloop; +yyoverflow: + yyerror("yacc stack overflow"); +yyabort: + return (1); +yyaccept: + return (0); +} diff --git a/packages/nonworking/kgrok/files/parser_yacc.h b/packages/nonworking/kgrok/files/parser_yacc.h index e69de29bb2..d673cedaf5 100644 --- a/packages/nonworking/kgrok/files/parser_yacc.h +++ b/packages/nonworking/kgrok/files/parser_yacc.h @@ -0,0 +1,92 @@ +#define NUMBER 257 +#define STRING 258 +#define SYMBOL 259 +#define FIELD 260 +#define VAR 261 +#define EQ 262 +#define NEQ 263 +#define LE 264 +#define GE 265 +#define SHR 266 +#define SHL 267 +#define AND 268 +#define OR 269 +#define IN 270 +#define PLA 271 +#define MIA 272 +#define MUA 273 +#define MOA 274 +#define DVA 275 +#define ANA 276 +#define ORA 277 +#define INC 278 +#define DEC_ 279 +#define APP 280 +#define AVG 281 +#define DEV 282 +#define AMIN 283 +#define AMAX 284 +#define SUM 285 +#define QAVG 286 +#define QDEV 287 +#define QMIN_ 288 +#define QMAX_ 289 +#define QSUM 290 +#define SAVG 291 +#define SDEV 292 +#define SMIN 293 +#define SMAX 294 +#define SSUM 295 +#define ABS 296 +#define INT 297 +#define BOUND 298 +#define LEN 299 +#define CHOP 300 +#define TR 301 +#define SUBSTR 302 +#define SQRT 303 +#define EXP 304 +#define LOG 305 +#define LN 306 +#define POW 307 +#define RANDOM 308 +#define SIN 309 +#define COS 310 +#define TAN 311 +#define ASIN 312 +#define ACOS 313 +#define ATAN 314 +#define ATAN2 315 +#define DATE 316 +#define TIME 317 +#define DURATION 318 +#define EXPAND 319 +#define YEAR 320 +#define MONTH 321 +#define DAY 322 +#define HOUR 323 +#define MINUTE 324 +#define SECOND 325 +#define LEAP 326 +#define JULIAN 327 +#define SECTION_ 328 +#define DBASE_ 329 +#define FORM_ 330 +#define PREVFORM 331 +#define SWITCH 332 +#define THIS 333 +#define LAST 334 +#define DISP 335 +#define FOREACH 336 +#define HOST 337 +#define USER 338 +#define UID 339 +#define GID 340 +#define SYSTEM 341 +#define ACCESS 342 +#define BEEP 343 +#define ERROR 344 +#define PRINTF 345 +#define UMINUS 346 +typedef union { int ival; double dval; char *sval; Arg *aval; } YYSTYPE; +extern YYSTYPE parserlval; diff --git a/packages/nonworking/kgrok/kgrok_1.5.bb b/packages/nonworking/kgrok/kgrok_1.5.bb index e69de29bb2..f70e46a30c 100644 --- a/packages/nonworking/kgrok/kgrok_1.5.bb +++ b/packages/nonworking/kgrok/kgrok_1.5.bb @@ -0,0 +1,37 @@ +DESCRIPTION = "Palmtop Data Manager \ +KGrok is a shared flatfile database visualization engine. Simple application \ +scripts turn it into a phone list, todo list, notepad, and others. Encryption \ +optionally secures personal data." +SECTION = "opie/applications" +PRIORITY = "optional" +MAINTAINER = "Marcin Juszkiewicz <openembedded@hrw.one.pl>" +LICENSE = "GPL" +AUTHOR = "Thomas Driemeyer <thomas@bitrot.de>" +HOMEPAGE = "http://www.bitrot.de/pda_kgrok.html" +APPNAME = "kgrok" +APPTYPE = "binary" +APPDESKTOP = "${S}/apps/KGrok" + +SRC_URI = "ftp://ftp.bitrot.de/pub/kgrok/kgrok-src_1.5.tar.gz \ + file://parser_yacc.* \ + file://mediabutton.patch;patch=1" +S = "${WORKDIR}/src/" + +inherit opie + +EXTRA_QMAKEVARS_POST += "DEFINES+=ORDER_DCBA YACCSOURCES= SOURCES+=parser_yacc.cpp" +QMAKE_PROFILES = "src.pro" + +do_configure_prepend() { + cd ${S} && qmake -project +} + +do_compile_prepend() { + install -m 0655 ${WORKDIR}/parser_yacc.* ${S} +} + +do_install () { + install -d ${D}/${palmtopdir}/pics/ + install -m 0644 src/temtor.png ${D}/${palmtopdir}/pics/ +} + |