48 #define YYBISON_VERSION "2.4.3"
51 #define YYSKELETON_NAME "yacc.c"
63 #define YYLSP_NEEDED 0
117 const char *nn=
v->
name;
124 else Print(
"`%s` not found in IDROOT\n",nn);
136 else Print(
"%s::%s not found\n",r->
id,nn);
166 #define YYMAXDEPTH MAX_INT_VAL
177 #define TESTSETINT(a,i) \
178 if ((a).Typ() != INT_CMD) \
180 WerrorS("no int expression"); \
183 (i) = (int)((long)(a).Data());(a).CleanUp()
185 #define MYYERROR(a) { WerrorS(a); YYERROR; }
201 && (strncmp(fmt,
"parse",5)!=0)
202 && (strncmp(fmt,
"syntax",6)!=0))
204 Werror(
"error occurred in or before %s line %d: `%s`"
212 Werror(
"expected %s-expression. type \'help %s;\'",
s,
s);
216 Werror(
"wrong type declaration. type \'help %s;\'",
s);
240 #line 241 "grammar.cc"
248 #ifdef YYERROR_VERBOSE
249 # undef YYERROR_VERBOSE
250 # define YYERROR_VERBOSE 1
252 # define YYERROR_VERBOSE 0
256 #ifndef YYTOKEN_TABLE
257 # define YYTOKEN_TABLE 0
355 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
357 # define yystype YYSTYPE
358 # define YYSTYPE_IS_DECLARED 1
366 #line 367 "grammar.cc"
380 #elif (defined __STDC__ || defined __C99__FUNC__ \
381 || defined __cplusplus || defined _MSC_VER)
400 # ifdef __SIZE_TYPE__
401 # define YYSIZE_T __SIZE_TYPE__
402 # elif defined size_t
403 # define YYSIZE_T size_t
404 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
405 || defined __cplusplus || defined _MSC_VER)
407 # define YYSIZE_T size_t
409 # define YYSIZE_T unsigned int
413 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
416 # if defined YYENABLE_NLS && YYENABLE_NLS
418 # include <libintl.h>
419 # define YY_(msgid) dgettext ("bison-runtime", msgid)
423 # define YY_(msgid) msgid
428 #if ! defined lint || defined __GNUC__
429 # define YYUSE(e) ((void) (e))
438 #if (defined __STDC__ || defined __C99__FUNC__ \
439 || defined __cplusplus || defined _MSC_VER)
452 #if ! defined yyoverflow || YYERROR_VERBOSE
456 # ifdef YYSTACK_USE_ALLOCA
457 # if YYSTACK_USE_ALLOCA
459 # define YYSTACK_ALLOC __builtin_alloca
460 # elif defined __BUILTIN_VA_ARG_INCR
463 # define YYSTACK_ALLOC __alloca
464 # elif defined _MSC_VER
466 # define alloca _alloca
468 # define YYSTACK_ALLOC alloca
469 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
470 || defined __cplusplus || defined _MSC_VER)
480 # ifdef YYSTACK_ALLOC
482 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
483 # ifndef YYSTACK_ALLOC_MAXIMUM
488 # define YYSTACK_ALLOC_MAXIMUM 4032
491 # define YYSTACK_ALLOC YYMALLOC
492 # define YYSTACK_FREE YYFREE
493 # ifndef YYSTACK_ALLOC_MAXIMUM
494 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
496 # if (defined __cplusplus && ! defined _STDLIB_H \
497 && ! ((defined YYMALLOC || defined malloc) \
498 && (defined YYFREE || defined free)))
505 # define YYMALLOC malloc
506 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
507 || defined __cplusplus || defined _MSC_VER)
513 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
514 || defined __cplusplus || defined _MSC_VER)
522 #if (! defined yyoverflow \
523 && (! defined __cplusplus \
524 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
534 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
538 # define YYSTACK_BYTES(N) \
539 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
540 + YYSTACK_GAP_MAXIMUM)
545 # if defined __GNUC__ && 1 < __GNUC__
546 # define YYCOPY(To, From, Count) \
547 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
549 # define YYCOPY(To, From, Count) \
553 for (yyi = 0; yyi < (Count); yyi++) \
554 (To)[yyi] = (From)[yyi]; \
565 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
568 YYSIZE_T yynewbytes; \
569 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
570 Stack = &yyptr->Stack_alloc; \
571 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
572 yyptr += yynewbytes / sizeof (*yyptr); \
584 #define YYNTOKENS 102
590 #define YYNSTATES 397
594 #define YYMAXUTOK 340
596 #define YYTRANSLATE(YYX) \
597 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
602 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
603 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
604 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
605 2, 2, 2, 2, 2, 2, 2, 2, 95, 2,
606 98, 99, 2, 87, 93, 88, 100, 89, 2, 2,
607 2, 2, 2, 2, 2, 2, 2, 2, 96, 94,
608 86, 85, 2, 2, 2, 2, 2, 2, 2, 2,
609 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
610 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
611 2, 90, 2, 91, 92, 2, 101, 2, 2, 2,
612 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
613 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
614 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
615 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
616 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
617 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
618 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
619 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
620 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
621 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
622 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
623 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
624 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
625 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
626 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
627 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
628 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
629 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
630 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
631 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
632 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
633 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
634 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
635 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
644 0, 0, 3, 4, 7, 9, 12, 15, 17, 19,
645 21, 24, 26, 28, 30, 32, 34, 36, 38, 40,
646 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
647 64, 66, 68, 72, 76, 80, 85, 89, 91, 93,
648 95, 100, 105, 110, 114, 119, 124, 128, 133, 138,
649 143, 148, 155, 162, 169, 176, 185, 194, 203, 212,
650 216, 221, 230, 235, 244, 249, 253, 257, 261, 263,
651 265, 267, 274, 279, 286, 293, 300, 307, 314, 321,
652 325, 331, 337, 338, 344, 347, 350, 352, 355, 358,
653 362, 366, 370, 374, 378, 382, 386, 390, 394, 398,
654 401, 404, 407, 410, 412, 416, 419, 422, 425, 428,
655 437, 440, 444, 447, 449, 451, 457, 459, 461, 466,
656 468, 472, 474, 478, 480, 482, 484, 486, 489, 493,
657 496, 500, 503, 506, 510, 515, 520, 525, 530, 535,
658 540, 545, 550, 557, 564, 571, 578, 585, 592, 599,
659 603, 605, 614, 617, 622, 630, 633, 635, 637, 640,
660 643, 645, 651, 654, 660, 662, 664, 668, 674, 678,
661 682, 687, 690, 693, 698
667 103, 0, -1, -1, 103, 104, -1, 105, -1, 107,
668 94, -1, 119, 94, -1, 145, -1, 80, -1, 94,
669 -1, 1, 94, -1, 140, -1, 141, -1, 106, -1,
670 142, -1, 143, -1, 128, -1, 129, -1, 130, -1,
671 57, 66, -1, 108, -1, 131, -1, 132, -1, 133,
672 -1, 144, -1, 135, -1, 136, -1, 138, -1, 139,
673 -1, 117, 110, -1, 69, -1, 118, -1, 109, 11,
674 109, -1, 111, 100, 109, -1, 109, 98, 99, -1,
675 109, 98, 110, 99, -1, 90, 110, 91, -1, 67,
676 -1, 84, -1, 120, -1, 16, 98, 111, 99, -1,
677 53, 98, 111, 99, -1, 54, 98, 110, 99, -1,
678 54, 98, 99, -1, 55, 98, 111, 99, -1, 56,
679 98, 110, 99, -1, 56, 98, 99, -1, 45, 98,
680 111, 99, -1, 48, 98, 111, 99, -1, 49, 98,
681 111, 99, -1, 51, 98, 111, 99, -1, 46, 98,
682 111, 93, 111, 99, -1, 48, 98, 111, 93, 111,
683 99, -1, 50, 98, 111, 93, 111, 99, -1, 51,
684 98, 111, 93, 111, 99, -1, 47, 98, 111, 93,
685 111, 93, 111, 99, -1, 49, 98, 111, 93, 111,
686 93, 111, 99, -1, 50, 98, 111, 93, 111, 93,
687 111, 99, -1, 51, 98, 111, 93, 111, 93, 111,
688 99, -1, 52, 98, 99, -1, 52, 98, 110, 99,
689 -1, 127, 98, 111, 93, 111, 93, 111, 99, -1,
690 127, 98, 111, 99, -1, 17, 98, 121, 93, 121,
691 93, 125, 99, -1, 17, 98, 111, 99, -1, 118,
692 12, 66, -1, 98, 110, 99, -1, 110, 93, 111,
693 -1, 111, -1, 116, -1, 109, -1, 111, 90, 111,
694 93, 111, 91, -1, 111, 90, 111, 91, -1, 71,
695 98, 111, 93, 45, 99, -1, 71, 98, 111, 93,
696 48, 99, -1, 71, 98, 111, 93, 49, 99, -1,
697 71, 98, 111, 93, 51, 99, -1, 71, 98, 111,
698 93, 52, 99, -1, 71, 98, 111, 93, 111, 99,
699 -1, 113, 111, 115, -1, 113, 111, 85, 111, 115,
700 -1, 114, 111, 93, 111, 115, -1, -1, 76, 98,
701 112, 111, 99, -1, 77, 98, -1, 72, 98, -1,
702 99, -1, 111, 10, -1, 111, 7, -1, 111, 87,
703 111, -1, 111, 88, 111, -1, 111, 89, 111, -1,
704 111, 92, 111, -1, 111, 86, 111, -1, 111, 95,
705 111, -1, 111, 9, 111, -1, 111, 4, 111, -1,
706 111, 3, 111, -1, 111, 96, 111, -1, 8, 111,
707 -1, 88, 111, -1, 119, 126, -1, 110, 85, -1,
708 68, -1, 101, 111, 101, -1, 53, 109, -1, 54,
709 109, -1, 55, 109, -1, 56, 109, -1, 127, 109,
710 90, 111, 91, 90, 111, 91, -1, 127, 109, -1,
711 119, 93, 109, -1, 16, 109, -1, 65, -1, 111,
712 -1, 98, 111, 93, 110, 99, -1, 68, -1, 122,
713 -1, 122, 98, 110, 99, -1, 123, -1, 123, 93,
714 124, -1, 123, -1, 98, 124, 99, -1, 85, -1,
715 21, -1, 15, -1, 14, -1, 86, 120, -1, 59,
716 65, 94, -1, 59, 94, -1, 57, 65, 94, -1,
717 58, 110, -1, 60, 109, -1, 132, 93, 109, -1,
718 62, 98, 53, 99, -1, 62, 98, 54, 99, -1,
719 62, 98, 55, 99, -1, 62, 98, 56, 99, -1,
720 62, 98, 17, 99, -1, 62, 98, 127, 99, -1,
721 62, 98, 16, 99, -1, 62, 98, 109, 99, -1,
722 62, 98, 109, 93, 53, 99, -1, 62, 98, 109,
723 93, 54, 99, -1, 62, 98, 109, 93, 55, 99,
724 -1, 62, 98, 109, 93, 56, 99, -1, 62, 98,
725 109, 93, 17, 99, -1, 62, 98, 109, 93, 127,
726 99, -1, 62, 98, 109, 93, 16, 99, -1, 62,
727 98, 99, -1, 17, -1, 134, 109, 126, 121, 93,
728 121, 93, 125, -1, 134, 109, -1, 134, 109, 126,
729 109, -1, 134, 109, 126, 109, 90, 110, 91, -1,
730 84, 120, -1, 63, -1, 31, -1, 137, 111, -1,
731 64, 111, -1, 110, -1, 79, 98, 111, 99, 66,
732 -1, 75, 66, -1, 79, 98, 111, 99, 73, -1,
733 73, -1, 74, -1, 81, 65, 66, -1, 78, 65,
734 65, 65, 66, -1, 16, 118, 66, -1, 70, 65,
735 66, -1, 70, 65, 65, 66, -1, 83, 119, -1,
736 83, 111, -1, 82, 98, 110, 99, -1, 82, 98,
743 0, 316, 316, 318, 352, 353, 355, 357, 361, 366,
744 368, 419, 420, 421, 422, 423, 424, 425, 426, 430,
745 433, 434, 435, 436, 437, 438, 439, 440, 441, 444,
746 451, 456, 460, 464, 468, 472, 486, 514, 538, 544,
747 550, 554, 558, 562, 566, 570, 574, 578, 582, 586,
748 590, 594, 598, 602, 606, 610, 614, 618, 622, 626,
749 630, 636, 640, 644, 648, 652, 657, 661, 672, 678,
750 683, 684, 688, 692, 696, 700, 704, 708, 712, 716,
751 720, 737, 744, 743, 761, 769, 777, 786, 790, 794,
752 798, 802, 806, 810, 814, 818, 822, 826, 830, 834,
753 846, 853, 854, 873, 874, 886, 891, 896, 900, 904,
754 940, 966, 987, 995, 999, 1000, 1014, 1022, 1031, 1076,
755 1077, 1086, 1087, 1093, 1100, 1102, 1104, 1113, 1118, 1123,
756 1130, 1138, 1150, 1167, 1187, 1191, 1195, 1200, 1204, 1208,
757 1212, 1216, 1221, 1227, 1233, 1239, 1245, 1251, 1257, 1269,
758 1276, 1280, 1317, 1324, 1329, 1342, 1349, 1349, 1352, 1420,
759 1424, 1453, 1466, 1483, 1492, 1497, 1505, 1517, 1536, 1546,
760 1565, 1588, 1594, 1606, 1612
764 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
769 "$end",
"error",
"$undefined",
"DOTDOT",
"EQUAL_EQUAL",
"GE",
"LE",
770 "MINUSMINUS",
"NOT",
"NOTEQUAL",
"PLUSPLUS",
"COLONCOLON",
"ARROW",
771 "GRING_CMD",
"BIGINTMAT_CMD",
"INTMAT_CMD",
"PROC_CMD",
"RING_CMD",
772 "BEGIN_RING",
"IDEAL_CMD",
"MAP_CMD",
"MATRIX_CMD",
"MODUL_CMD",
773 "NUMBER_CMD",
"POLY_CMD",
"RESOLUTION_CMD",
"VECTOR_CMD",
"BETTI_CMD",
774 "E_CMD",
"FETCH_CMD",
"FREEMODULE_CMD",
"KEEPRING_CMD",
"IMAP_CMD",
775 "KOSZUL_CMD",
"MAXID_CMD",
"MONOM_CMD",
"PAR_CMD",
"PREIMAGE_CMD",
776 "VAR_CMD",
"VALTVARS",
"VMAXDEG",
"VMAXMULT",
"VNOETHER",
"VMINPOLY",
777 "END_RING",
"CMD_1",
"CMD_2",
"CMD_3",
"CMD_12",
"CMD_13",
"CMD_23",
778 "CMD_123",
"CMD_M",
"ROOT_DECL",
"ROOT_DECL_LIST",
"RING_DECL",
779 "RING_DECL_LIST",
"EXAMPLE_CMD",
"EXPORT_CMD",
"HELP_CMD",
"KILL_CMD",
780 "LIB_CMD",
"LISTVAR_CMD",
"SETRING_CMD",
"TYPE_CMD",
"STRINGTOK",
781 "BLOCKTOK",
"INT_CONST",
"UNKNOWN_IDENT",
"RINGVAR",
"PROC_DEF",
"APPLY",
782 "ASSUME_CMD",
"BREAK_CMD",
"CONTINUE_CMD",
"ELSE_CMD",
"EVAL",
"QUOTE",
783 "FOR_CMD",
"IF_CMD",
"SYS_BREAK",
"WHILE_CMD",
"RETURN",
"PARAMETER",
784 "SYSVAR",
"'='",
"'<'",
"'+'",
"'-'",
"'/'",
"'['",
"']'",
"'^'",
"','",
785 "';'",
"'&'",
"':'",
"UMINUS",
"'('",
"')'",
"'.'",
"'`'",
"$accept",
786 "lines",
"pprompt",
"flowctrl",
"example_dummy",
"command",
"assign",
787 "elemexpr",
"exprlist",
"expr",
"$@1",
"quote_start",
"assume_start",
788 "quote_end",
"expr_arithmetic",
"left_value",
"extendedid",
789 "declare_ip_variable",
"stringexpr",
"rlist",
"ordername",
"orderelem",
790 "OrderingList",
"ordering",
"cmdeq",
"mat_cmd",
"filecmd",
"helpcmd",
791 "examplecmd",
"exportcmd",
"killcmd",
"listcmd",
"ringcmd1",
"ringcmd",
792 "scriptcmd",
"setrings",
"setringcmd",
"typecmd",
"ifcmd",
"whilecmd",
793 "forcmd",
"proccmd",
"parametercmd",
"returncmd", 0
802 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
803 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
804 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
805 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
806 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
807 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
808 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
809 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
810 335, 336, 337, 338, 339, 61, 60, 43, 45, 47,
811 91, 93, 94, 44, 59, 38, 58, 340, 40, 41,
819 0, 102, 103, 103, 104, 104, 104, 104, 104, 104,
820 104, 105, 105, 105, 105, 105, 105, 105, 105, 106,
821 107, 107, 107, 107, 107, 107, 107, 107, 107, 108,
822 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
823 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
824 109, 109, 109, 109, 109, 109, 109, 109, 109, 109,
825 109, 109, 109, 109, 109, 109, 109, 110, 110, 111,
826 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,
827 111, 111, 112, 111, 113, 114, 115, 116, 116, 116,
828 116, 116, 116, 116, 116, 116, 116, 116, 116, 116,
829 116, 117, 117, 118, 118, 119, 119, 119, 119, 119,
830 119, 119, 119, 120, 121, 121, 122, 123, 123, 124,
831 124, 125, 125, 126, 127, 127, 127, 128, 129, 129,
832 130, 131, 132, 132, 133, 133, 133, 133, 133, 133,
833 133, 133, 133, 133, 133, 133, 133, 133, 133, 133,
834 134, 135, 135, 135, 135, 136, 137, 137, 138, 139,
835 139, 140, 140, 140, 140, 140, 141, 142, 143, 143,
836 143, 144, 144, 145, 145
842 0, 2, 0, 2, 1, 2, 2, 1, 1, 1,
843 2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
844 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
845 1, 1, 3, 3, 3, 4, 3, 1, 1, 1,
846 4, 4, 4, 3, 4, 4, 3, 4, 4, 4,
847 4, 6, 6, 6, 6, 8, 8, 8, 8, 3,
848 4, 8, 4, 8, 4, 3, 3, 3, 1, 1,
849 1, 6, 4, 6, 6, 6, 6, 6, 6, 3,
850 5, 5, 0, 5, 2, 2, 1, 2, 2, 3,
851 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
852 2, 2, 2, 1, 3, 2, 2, 2, 2, 8,
853 2, 3, 2, 1, 1, 5, 1, 1, 4, 1,
854 3, 1, 3, 1, 1, 1, 1, 2, 3, 2,
855 3, 2, 2, 3, 4, 4, 4, 4, 4, 4,
856 4, 4, 6, 6, 6, 6, 6, 6, 6, 3,
857 1, 8, 2, 4, 7, 2, 1, 1, 2, 2,
858 1, 5, 2, 5, 1, 1, 3, 5, 3, 3,
867 2, 0, 1, 0, 0, 126, 125, 0, 150, 124,
868 157, 0, 0, 0, 0, 0, 0, 0, 0, 0,
869 0, 0, 0, 0, 0, 0, 0, 0, 156, 0,
870 113, 37, 103, 30, 0, 0, 0, 164, 165, 0,
871 0, 0, 0, 0, 8, 0, 0, 0, 38, 0,
872 0, 0, 9, 0, 0, 3, 4, 13, 0, 20,
873 70, 160, 68, 0, 0, 69, 0, 31, 0, 39,
874 0, 16, 17, 18, 21, 22, 23, 0, 25, 26,
875 0, 27, 28, 11, 12, 14, 15, 24, 7, 10,
876 0, 0, 0, 0, 0, 0, 38, 99, 0, 0,
877 70, 0, 31, 0, 0, 0, 0, 0, 0, 0,
878 0, 0, 0, 70, 0, 70, 0, 70, 0, 70,
879 0, 19, 131, 0, 129, 70, 0, 159, 0, 0,
880 85, 162, 82, 84, 0, 0, 0, 0, 0, 172,
881 171, 155, 127, 100, 0, 0, 0, 5, 0, 0,
882 102, 0, 0, 0, 88, 0, 87, 0, 0, 0,
883 0, 0, 0, 0, 0, 0, 0, 0, 29, 0,
884 123, 0, 6, 101, 0, 70, 0, 70, 158, 0,
885 0, 0, 0, 0, 0, 68, 168, 0, 114, 0,
886 0, 0, 0, 0, 0, 0, 0, 59, 0, 68,
887 43, 0, 68, 46, 0, 130, 128, 0, 0, 0,
888 0, 0, 0, 149, 70, 0, 0, 169, 0, 0,
889 0, 0, 166, 174, 0, 36, 66, 104, 32, 34,
890 0, 67, 97, 96, 95, 93, 89, 90, 91, 0,
891 92, 94, 98, 33, 0, 86, 79, 0, 65, 70,
892 0, 0, 70, 0, 0, 0, 0, 0, 0, 0,
893 40, 68, 64, 0, 47, 0, 0, 0, 48, 0,
894 49, 0, 0, 50, 60, 41, 42, 44, 45, 140,
895 138, 134, 135, 136, 137, 0, 141, 139, 170, 0,
896 0, 0, 0, 173, 35, 72, 0, 0, 0, 0,
897 62, 0, 70, 114, 0, 42, 45, 0, 0, 0,
898 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
899 0, 0, 0, 0, 0, 0, 0, 0, 83, 167,
900 161, 163, 0, 80, 81, 0, 0, 0, 0, 0,
901 0, 51, 0, 52, 0, 0, 53, 0, 54, 148,
902 146, 142, 143, 144, 145, 147, 73, 74, 75, 76,
903 77, 78, 71, 0, 0, 0, 0, 115, 116, 0,
904 117, 121, 0, 0, 0, 0, 0, 0, 0, 154,
905 0, 119, 0, 0, 63, 55, 56, 57, 58, 61,
906 109, 151, 0, 122, 0, 120, 118
912 -1, 1, 55, 56, 57, 58, 59, 60, 145, 62,
913 219, 63, 64, 246, 65, 66, 67, 68, 69, 189,
914 370, 371, 382, 372, 173, 98, 71, 72, 73, 74,
915 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
921 #define YYPACT_NINF -361
924 -361, 383, -361, -84, 1874, -361, -361, 1939, -47, -361,
925 -361, -34, -27, -23, -19, -15, 5, 32, 37, 2004,
926 2069, 2134, 2199, -26, 1874, -61, 1874, 45, -361, 1874,
927 -361, -361, -361, -361, 22, 51, 65, -361, -361, 100,
928 73, 92, 130, 94, -361, 139, 118, 2264, 153, 153,
929 1874, 1874, -361, 1874, 1874, -361, -361, -361, 3, -361,
930 10, -73, 1368, 1874, 1874, -361, 1874, 211, -48, -361,
931 2329, -361, -361, -361, -361, 128, -361, 1874, -361, -361,
932 1874, -361, -361, -361, -361, -361, -361, -361, -361, -361,
933 131, -47, 133, 145, 150, 152, -361, 24, 159, 1874,
934 104, 1368, -7, 2394, 1874, 1874, 1874, 1874, 1874, 1874,
935 1874, 1484, 1874, 209, 1549, 248, 1874, 258, 1614, 264,
936 187, -361, 167, 196, -361, 170, 1679, 1368, 113, 1874,
937 -361, -361, -361, -361, 213, 1874, 227, 1744, 1939, 1368,
938 204, -361, -361, 24, -66, -69, 4, -361, 1874, 1809,
939 -361, 1874, 1874, 1874, -361, 1874, -361, 1874, 1874, 1874,
940 1874, 1874, 1874, 1874, 1874, 1874, 166, 553, 167, 239,
941 -361, 1874, -361, -361, 1874, -9, 1874, 47, 1368, 1874,
942 1874, 1549, 1874, 1614, 1874, 568, -361, 1874, 583, 217,
943 677, 692, 707, 184, 235, 722, 399, -361, -51, 737,
944 -361, -50, 752, -361, -37, -361, -361, 86, 116, 127,
945 135, 138, 142, -361, 8, 148, 246, -361, 846, 1874,
946 251, 861, -361, -361, -21, -361, -361, -361, -361, -361,
947 -13, 1368, 50, 279, 279, 1397, 31, 31, 24, 414,
948 19, 1383, 31, -361, 1874, -361, -361, 1874, -361, 287,
949 508, 1874, 280, 2394, 568, 737, -11, 752, 34, 508,
950 -361, 876, -361, 2394, -361, 1874, 1874, 1874, -361, 1874,
951 -361, 1874, 1874, -361, -361, -361, -361, -361, -361, -361,
952 -361, -361, -361, -361, -361, 1367, -361, -361, -361, 2459,
953 891, 252, -38, -361, -361, -361, 1874, 906, 906, 1874,
954 -361, 921, 206, 1368, 233, -361, -361, 1874, 236, 1015,
955 1030, 1045, 1060, 523, 538, 241, 249, 256, 262, 271,
956 288, 289, 189, 210, 240, 255, 261, 1075, -361, -361,
957 -361, -361, 1090, -361, -361, 1184, 242, 1874, 2394, 66,
958 -62, -361, 1874, -361, 1874, 1874, -361, 1874, -361, -361,
959 -361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
960 -361, -361, -361, 1874, 1874, -30, 257, -361, -361, 277,
961 291, -361, 295, 1199, 1214, 1229, 1244, 1259, 1353, -361,
962 -62, 303, 302, 1874, -361, -361, -361, -361, -361, -361,
963 -361, -361, 277, -361, 69, -361, -361
969 -361, -361, -361, -361, -361, -361, -361, -4, -1, 48,
970 -361, -361, -361, 79, -361, -361, 398, 360, 315, -209,
971 -361, -360, 18, 33, 238, 0, -361, -361, -361, -361,
972 -361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
973 -361, -361, -361, -361
980 #define YYTABLE_NINF -154
983 61, 70, 148, 100, 123, 169, 368, 152, 153, 381,
984 89, 154, 150, 155, 156, 113, 115, 117, 119, 148,
985 151, 148, 125, 122, 151, 225, 154, 151, 330, 156,
986 226, 154, 381, 124, 156, 331, 369, 170, 154, 120,
987 121, 156, 151, 151, 304, 171, 172, 70, 274, 276,
988 144, 103, 97, -154, 308, 101, 151, 154, 148, 186,
989 156, 379, 278, 151, 104, 168, 175, 101, 101, 101,
990 101, 105, 151, 177, 101, 106, -110, 127, 293, 107,
991 151, 251, 151, 108, -110, -110, 294, 128, 305, 149,
992 157, 158, 159, 160, 161, 139, 162, 147, 143, 163,
993 164, 285, 146, 109, 165, 227, 149, 286, 149, 161,
994 198, 166, 167, 201, 161, 148, 162, 204, 101, 165,
995 160, 161, 214, 162, 165, 101, 215, 151, 178, 366,
996 110, 165, 170, 306, 100, 111, 224, 158, 159, 160,
997 161, -152, 162, 126, 228, 149, 164, 185, 230, 129,
998 165, 188, 190, 191, 192, 193, 194, 195, 196, 151,
999 199, 243, 151, 130, 202, 367, 131, 249, 396, 152,
1000 153, 132, 252, 154, 101, 155, 156, 218, 216, 217,
1001 256, 148, 258, 221, 179, 279, 101, 152, 153, -112,
1002 133, 154, 135, 155, 156, 134, 101, -112, -112, 231,
1003 232, 233, 149, 234, 136, 235, 236, 237, 238, 239,
1004 240, 241, 242, 101, 103, 280, 137, 148, 30, 101,
1005 148, 176, 250, 169, 101, 180, 281, 254, 255, 179,
1006 257, 180, 259, 181, 282, 261, 182, 283, 152, 153,
1007 183, 284, 154, 181, 155, 156, 184, 287, 182, 302,
1008 183, 244, 157, 158, 159, 160, 161, 184, 162, 148,
1009 151, 163, 164, -132, -132, 245, 165, 290, 149, 148,
1010 157, 158, 159, 160, 161, 148, 162, 267, 220, 163,
1011 164, 205, 152, 268, 165, 321, 154, 104, 356, 156,
1012 206, 148, 297, 222, -105, 298, 337, 171, 148, 301,
1013 -153, 303, -105, -105, 149, 248, 339, 149, 107, 357,
1014 263, 303, 288, 309, 310, 311, 291, 312, 329, 313,
1015 314, 157, 158, 159, 160, 161, 338, 162, 269, 340,
1016 163, 164, 364, -106, 270, 165, 365, 327, 108, 358,
1017 349, -106, -106, -107, 332, 368, 149, 335, 350, -108,
1018 380, -107, -107, 110, 359, 351, 149, -108, -108, 111,
1019 360, 352, 149, 141, 142, 157, 158, 159, 160, 161,
1020 353, 162, -111, -133, -133, 164, 333, 334, 149, 165,
1021 -111, -111, 394, 2, 3, 149, 303, 354, 355, 383,
1022 373, 4, 374, 375, 384, 376, 392, 5, 6, 7,
1023 8, 393, 152, 153, 9, 102, 154, 140, 155, 156,
1024 395, 377, 378, 391, 10, 253, 0, 152, 153, 0,
1025 0, 154, 0, 155, 156, 0, 0, 0, 11, 12,
1026 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1027 23, 24, 25, 26, 0, 27, 28, 29, 30, 0,
1028 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1029 41, 42, 43, 44, 45, 46, 47, 48, 0, 49,
1030 0, 50, 0, 51, 0, 0, 0, 52, 0, 0,
1031 0, 53, 0, 0, 54, 157, 158, 159, 160, 161,
1032 0, 162, 272, 0, 163, 164, 0, 0, 273, 165,
1033 157, 158, 159, 160, 161, 295, 162, 296, 0, 163,
1034 164, 152, 153, 0, 165, 154, 0, 155, 156, 0,
1035 0, 0, 0, 0, 0, 0, 152, 153, 0, 0,
1036 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1037 0, 152, 153, 0, 0, 154, 0, 155, 156, 0,
1038 0, 0, 0, 0, 0, 0, 152, 153, 0, 0,
1039 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1040 0, 152, 153, 0, 0, 154, 0, 155, 156, 0,
1041 0, 0, 0, 0, 0, 0, 152, 153, 0, 0,
1042 154, 0, 155, 156, 157, 158, 159, 160, 161, 0,
1043 162, 299, 0, 163, 164, 0, 0, 300, 165, 157,
1044 158, 159, 160, 161, 0, 162, 345, 0, 163, 164,
1045 0, 0, 346, 165, 157, 158, 159, 160, 161, 0,
1046 162, 347, 0, 163, 164, 0, 0, 348, 165, 157,
1047 158, 159, 160, 161, 0, 162, 247, 0, 163, 164,
1048 0, 0, 0, 165, 157, 158, 159, 160, 161, 0,
1049 162, 0, 0, 163, 164, 0, 0, 260, 165, 157,
1050 158, 159, 160, 161, 0, 162, 0, 0, 163, 164,
1051 152, 153, 262, 165, 154, 0, 155, 156, 0, 0,
1052 0, 0, 0, 0, 0, 152, 153, 0, 0, 154,
1053 0, 155, 156, 0, 0, 0, 0, 0, 0, 0,
1054 152, 153, 0, 0, 154, 0, 155, 156, 0, 0,
1055 0, 0, 0, 0, 0, 152, 153, 0, 0, 154,
1056 0, 155, 156, 0, 0, 0, 0, 0, 0, 0,
1057 152, 153, 0, 0, 154, 0, 155, 156, 0, 0,
1058 0, 0, 0, 0, 0, 152, 153, 0, 0, 154,
1059 0, 155, 156, 157, 158, 159, 160, 161, 0, 162,
1060 0, 0, 163, 164, 0, 0, 264, 165, 157, 158,
1061 159, 160, 161, 0, 162, 265, 0, 163, 164, 0,
1062 0, 0, 165, 157, 158, 159, 160, 161, 0, 162,
1063 266, 0, 163, 164, 0, 0, 0, 165, 157, 158,
1064 159, 160, 161, 0, 162, 271, 0, 163, 164, 0,
1065 0, 0, 165, 157, 158, 159, 160, 161, 0, 162,
1066 0, 0, 163, 164, 0, 0, 275, 165, 157, 158,
1067 159, 160, 161, 0, 162, 0, 0, 163, 164, 152,
1068 153, 277, 165, 154, 0, 155, 156, 0, 0, 0,
1069 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1070 155, 156, 0, 0, 0, 0, 0, 0, 0, 152,
1071 153, 0, 0, 154, 0, 155, 156, 0, 0, 0,
1072 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1073 155, 156, 0, 0, 0, 0, 0, 0, 0, 152,
1074 153, 0, 0, 154, 0, 155, 156, 0, 0, 0,
1075 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1076 155, 156, 157, 158, 159, 160, 161, 0, 162, 289,
1077 0, 163, 164, 0, 0, 0, 165, 157, 158, 159,
1078 160, 161, 0, 162, 0, 0, 163, 164, 0, 0,
1079 292, 165, 157, 158, 159, 160, 161, 0, 162, 307,
1080 0, 163, 164, 0, 0, 0, 165, 157, 158, 159,
1081 160, 161, 0, 162, 0, 0, 163, 164, 0, 0,
1082 328, 165, 157, 158, 159, 160, 161, 0, 162, 0,
1083 0, 163, 164, 0, 0, 245, 165, 157, 158, 159,
1084 160, 161, 336, 162, 0, 0, 163, 164, 152, 153,
1085 0, 165, 154, 0, 155, 156, 0, 0, 0, 0,
1086 0, 0, 0, 152, 153, 0, 0, 154, 0, 155,
1087 156, 0, 0, 0, 0, 0, 0, 0, 152, 153,
1088 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1089 0, 0, 0, 152, 153, 0, 0, 154, 0, 155,
1090 156, 0, 0, 0, 0, 0, 0, 0, 152, 153,
1091 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1092 0, 0, 0, 152, 153, 0, 0, 154, 0, 155,
1093 156, 157, 158, 159, 160, 161, 0, 162, 0, 0,
1094 163, 164, 0, 0, 341, 165, 157, 158, 159, 160,
1095 161, 0, 162, 342, 0, 163, 164, 0, 0, 0,
1096 165, 157, 158, 159, 160, 161, 0, 162, 0, 0,
1097 163, 164, 0, 0, 343, 165, 157, 158, 159, 160,
1098 161, 0, 162, 344, 0, 163, 164, 0, 0, 0,
1099 165, 157, 158, 159, 160, 161, 0, 162, 0, 0,
1100 163, 164, 0, 0, 361, 165, 157, 158, 159, 160,
1101 161, 362, 162, 0, 0, 163, 164, 152, 153, 0,
1102 165, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1103 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1104 0, 0, 0, 0, 0, 0, 0, 152, 153, 0,
1105 0, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1106 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1107 0, 0, 0, 0, 0, 0, 0, 152, 153, 0,
1108 0, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1109 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1110 157, 158, 159, 160, 161, 0, 162, 363, 0, 163,
1111 164, 0, 0, 0, 165, 157, 158, 159, 160, 161,
1112 0, 162, 0, 0, 163, 164, 0, 0, 385, 165,
1113 157, 158, 159, 160, 161, 0, 162, 0, 0, 163,
1114 164, 0, 0, 386, 165, 157, 158, 159, 160, 161,
1115 0, 162, 0, 0, 163, 164, 0, 0, 387, 165,
1116 157, 158, 159, 160, 161, 0, 162, 0, 0, 163,
1117 164, 0, 0, 388, 165, 157, 158, 159, 160, 161,
1118 0, 162, 0, 0, 163, 164, 152, 153, 389, 165,
1119 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1120 0, 152, 153, 0, 0, 154, 0, 155, 156, 0,
1121 0, 5, 6, 315, 316, 0, 152, 153, 9, 0,
1122 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1123 152, 0, 0, 0, 154, 0, 0, 156, 0, 0,
1124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1125 317, 318, 319, 320, 0, 0, 0, 0, 0, 0,
1126 0, 0, 0, 0, 0, 0, 0, 0, 0, 157,
1127 158, 159, 160, 161, 390, 162, 0, 0, 163, 164,
1128 0, 0, 0, 165, 157, 158, 159, 160, 161, 0,
1129 162, 0, 0, 163, 164, 0, 0, 0, 165, 157,
1130 158, 159, 160, 161, 0, 162, 0, 0, 0, 164,
1131 0, 0, 0, 165, 158, 159, 160, 161, 0, 162,
1132 0, 0, 4, 164, 0, 0, 0, 165, 5, 6,
1133 90, 91, 0, 0, 0, 9, 0, 0, 0, 0,
1134 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1136 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1137 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1138 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1139 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1140 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1141 0, 0, 53, 197, 0, 54, 0, 0, 0, 0,
1142 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1143 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1144 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1145 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1146 90, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1147 0, 0, 0, 0, 0, 0, 0, 53, 200, 0,
1148 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1149 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1150 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1151 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1152 40, 41, 0, 5, 6, 207, 208, 0, 96, 0,
1153 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1154 0, 0, 53, 203, 0, 54, 0, 0, 0, 0,
1155 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1156 17, 18, 209, 210, 211, 212, 0, 0, 0, 0,
1157 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1158 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1159 90, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1160 0, 0, 0, 0, 0, 0, 0, 53, 213, 0,
1161 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1162 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1163 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1164 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1165 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1166 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1167 0, 0, 53, 223, 0, 54, 0, 0, 0, 0,
1168 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1169 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1170 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1171 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1172 90, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1173 0, 0, 0, 0, 0, 0, 0, 53, 229, 0,
1174 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1175 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1176 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1177 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1178 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1179 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1180 0, 0, 53, 0, 0, 54, 0, 0, 0, 0,
1181 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1182 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1183 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1184 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1185 90, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1186 0, 0, 0, 0, 0, 0, 0, 99, 0, 0,
1187 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1188 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1189 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1190 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1191 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1192 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1193 0, 0, 112, 0, 0, 54, 0, 0, 0, 0,
1194 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1195 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1196 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1197 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1198 90, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1199 0, 0, 0, 0, 0, 0, 0, 114, 0, 0,
1200 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1201 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1202 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1203 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1204 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1205 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1206 0, 0, 116, 0, 0, 54, 0, 0, 0, 0,
1207 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1208 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1209 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1210 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1211 138, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1212 0, 0, 0, 0, 0, 0, 0, 118, 0, 0,
1213 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1214 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1215 22, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1216 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1217 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1218 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1219 0, 0, 53, 0, 0, 54, 0, 0, 0, 0,
1220 0, 0, 0, 0, 11, 12, 13, 14, 15, 16,
1221 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1222 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1223 35, 36, 4, 0, 0, 40, 41, 0, 5, 6,
1224 90, 91, 0, 96, 0, 9, 0, 50, 0, 51,
1225 0, 0, 0, 0, 0, 0, 0, 174, 0, 0,
1226 54, 0, 0, 0, 0, 0, 0, 0, 0, 11,
1227 12, 13, 14, 15, 16, 17, 18, 92, 93, 94,
1228 95, 0, 0, 0, 0, 0, 0, 0, 0, 30,
1229 0, 31, 32, 33, 0, 35, 36, 4, 0, 0,
1230 40, 41, 0, 5, 6, 90, 91, 0, 96, 0,
1231 9, 0, 50, 0, 51, 0, 0, 0, 0, 0,
1232 0, 0, 187, 0, 0, 54, 0, 0, 0, 0,
1233 0, 0, 0, 0, 322, 12, 13, 323, 324, 16,
1234 325, 326, 92, 93, 94, 95, 0, 0, 0, 0,
1235 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1236 35, 36, 0, 0, 0, 40, 41, 0, 0, 0,
1237 0, 0, 0, 96, 0, 0, 0, 50, 0, 51,
1238 0, 0, 0, 0, 0, 0, 0, 53, 0, 0,
1244 1, 1, 11, 7, 65, 12, 68, 3, 4, 369,
1245 94, 7, 85, 9, 10, 19, 20, 21, 22, 11,
1246 93, 11, 26, 24, 93, 91, 7, 93, 66, 10,
1247 99, 7, 392, 94, 10, 73, 98, 85, 7, 65,
1248 66, 10, 93, 93, 253, 93, 94, 47, 99, 99,
1249 51, 98, 4, 3, 263, 7, 93, 7, 11, 66,
1250 10, 91, 99, 93, 98, 66, 70, 19, 20, 21,
1251 22, 98, 93, 77, 26, 98, 85, 29, 99, 98,
1252 93, 90, 93, 98, 93, 94, 99, 65, 99, 98,
1253 86, 87, 88, 89, 90, 47, 92, 94, 50, 95,
1254 96, 93, 54, 98, 100, 101, 98, 99, 98, 90,
1255 111, 63, 64, 114, 90, 11, 92, 118, 70, 100,
1256 89, 90, 126, 92, 100, 77, 126, 93, 80, 338,
1257 98, 100, 85, 99, 138, 98, 137, 87, 88, 89,
1258 90, 94, 92, 98, 148, 98, 96, 99, 149, 98,
1259 100, 103, 104, 105, 106, 107, 108, 109, 110, 93,
1260 112, 165, 93, 98, 116, 99, 66, 171, 99, 3,
1261 4, 98, 176, 7, 126, 9, 10, 129, 65, 66,
1262 181, 11, 183, 135, 98, 99, 138, 3, 4, 85,
1263 98, 7, 98, 9, 10, 65, 148, 93, 94, 151,
1264 152, 153, 98, 155, 65, 157, 158, 159, 160, 161,
1265 162, 163, 164, 165, 98, 99, 98, 11, 65, 171,
1266 11, 93, 174, 12, 176, 98, 99, 179, 180, 98,
1267 182, 98, 184, 98, 99, 187, 98, 99, 3, 4,
1268 98, 99, 7, 98, 9, 10, 98, 99, 98, 253,
1269 98, 85, 86, 87, 88, 89, 90, 98, 92, 11,
1270 93, 95, 96, 93, 94, 99, 100, 219, 98, 11,
1271 86, 87, 88, 89, 90, 11, 92, 93, 65, 95,
1272 96, 94, 3, 99, 100, 285, 7, 98, 99, 10,
1273 94, 11, 244, 66, 85, 247, 90, 93, 11, 251,
1274 94, 253, 93, 94, 98, 66, 307, 98, 98, 99,
1275 93, 263, 66, 265, 266, 267, 65, 269, 66, 271,
1276 272, 86, 87, 88, 89, 90, 93, 92, 93, 93,
1277 95, 96, 90, 85, 99, 100, 337, 289, 98, 99,
1278 99, 93, 94, 85, 296, 68, 98, 299, 99, 85,
1279 93, 93, 94, 98, 99, 99, 98, 93, 94, 98,
1280 99, 99, 98, 48, 49, 86, 87, 88, 89, 90,
1281 99, 92, 85, 93, 94, 96, 297, 298, 98, 100,
1282 93, 94, 383, 0, 1, 98, 338, 99, 99, 98,
1283 342, 8, 344, 345, 99, 347, 93, 14, 15, 16,
1284 17, 99, 3, 4, 21, 7, 7, 47, 9, 10,
1285 392, 363, 364, 380, 31, 177, -1, 3, 4, -1,
1286 -1, 7, -1, 9, 10, -1, -1, -1, 45, 46,
1287 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1288 57, 58, 59, 60, -1, 62, 63, 64, 65, -1,
1289 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1290 77, 78, 79, 80, 81, 82, 83, 84, -1, 86,
1291 -1, 88, -1, 90, -1, -1, -1, 94, -1, -1,
1292 -1, 98, -1, -1, 101, 86, 87, 88, 89, 90,
1293 -1, 92, 93, -1, 95, 96, -1, -1, 99, 100,
1294 86, 87, 88, 89, 90, 91, 92, 93, -1, 95,
1295 96, 3, 4, -1, 100, 7, -1, 9, 10, -1,
1296 -1, -1, -1, -1, -1, -1, 3, 4, -1, -1,
1297 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1298 -1, 3, 4, -1, -1, 7, -1, 9, 10, -1,
1299 -1, -1, -1, -1, -1, -1, 3, 4, -1, -1,
1300 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1301 -1, 3, 4, -1, -1, 7, -1, 9, 10, -1,
1302 -1, -1, -1, -1, -1, -1, 3, 4, -1, -1,
1303 7, -1, 9, 10, 86, 87, 88, 89, 90, -1,
1304 92, 93, -1, 95, 96, -1, -1, 99, 100, 86,
1305 87, 88, 89, 90, -1, 92, 93, -1, 95, 96,
1306 -1, -1, 99, 100, 86, 87, 88, 89, 90, -1,
1307 92, 93, -1, 95, 96, -1, -1, 99, 100, 86,
1308 87, 88, 89, 90, -1, 92, 93, -1, 95, 96,
1309 -1, -1, -1, 100, 86, 87, 88, 89, 90, -1,
1310 92, -1, -1, 95, 96, -1, -1, 99, 100, 86,
1311 87, 88, 89, 90, -1, 92, -1, -1, 95, 96,
1312 3, 4, 99, 100, 7, -1, 9, 10, -1, -1,
1313 -1, -1, -1, -1, -1, 3, 4, -1, -1, 7,
1314 -1, 9, 10, -1, -1, -1, -1, -1, -1, -1,
1315 3, 4, -1, -1, 7, -1, 9, 10, -1, -1,
1316 -1, -1, -1, -1, -1, 3, 4, -1, -1, 7,
1317 -1, 9, 10, -1, -1, -1, -1, -1, -1, -1,
1318 3, 4, -1, -1, 7, -1, 9, 10, -1, -1,
1319 -1, -1, -1, -1, -1, 3, 4, -1, -1, 7,
1320 -1, 9, 10, 86, 87, 88, 89, 90, -1, 92,
1321 -1, -1, 95, 96, -1, -1, 99, 100, 86, 87,
1322 88, 89, 90, -1, 92, 93, -1, 95, 96, -1,
1323 -1, -1, 100, 86, 87, 88, 89, 90, -1, 92,
1324 93, -1, 95, 96, -1, -1, -1, 100, 86, 87,
1325 88, 89, 90, -1, 92, 93, -1, 95, 96, -1,
1326 -1, -1, 100, 86, 87, 88, 89, 90, -1, 92,
1327 -1, -1, 95, 96, -1, -1, 99, 100, 86, 87,
1328 88, 89, 90, -1, 92, -1, -1, 95, 96, 3,
1329 4, 99, 100, 7, -1, 9, 10, -1, -1, -1,
1330 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1331 9, 10, -1, -1, -1, -1, -1, -1, -1, 3,
1332 4, -1, -1, 7, -1, 9, 10, -1, -1, -1,
1333 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1334 9, 10, -1, -1, -1, -1, -1, -1, -1, 3,
1335 4, -1, -1, 7, -1, 9, 10, -1, -1, -1,
1336 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1337 9, 10, 86, 87, 88, 89, 90, -1, 92, 93,
1338 -1, 95, 96, -1, -1, -1, 100, 86, 87, 88,
1339 89, 90, -1, 92, -1, -1, 95, 96, -1, -1,
1340 99, 100, 86, 87, 88, 89, 90, -1, 92, 93,
1341 -1, 95, 96, -1, -1, -1, 100, 86, 87, 88,
1342 89, 90, -1, 92, -1, -1, 95, 96, -1, -1,
1343 99, 100, 86, 87, 88, 89, 90, -1, 92, -1,
1344 -1, 95, 96, -1, -1, 99, 100, 86, 87, 88,
1345 89, 90, 91, 92, -1, -1, 95, 96, 3, 4,
1346 -1, 100, 7, -1, 9, 10, -1, -1, -1, -1,
1347 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1348 10, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1349 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1350 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1351 10, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1352 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1353 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1354 10, 86, 87, 88, 89, 90, -1, 92, -1, -1,
1355 95, 96, -1, -1, 99, 100, 86, 87, 88, 89,
1356 90, -1, 92, 93, -1, 95, 96, -1, -1, -1,
1357 100, 86, 87, 88, 89, 90, -1, 92, -1, -1,
1358 95, 96, -1, -1, 99, 100, 86, 87, 88, 89,
1359 90, -1, 92, 93, -1, 95, 96, -1, -1, -1,
1360 100, 86, 87, 88, 89, 90, -1, 92, -1, -1,
1361 95, 96, -1, -1, 99, 100, 86, 87, 88, 89,
1362 90, 91, 92, -1, -1, 95, 96, 3, 4, -1,
1363 100, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1364 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1365 -1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1366 -1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1367 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1368 -1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1369 -1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1370 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1371 86, 87, 88, 89, 90, -1, 92, 93, -1, 95,
1372 96, -1, -1, -1, 100, 86, 87, 88, 89, 90,
1373 -1, 92, -1, -1, 95, 96, -1, -1, 99, 100,
1374 86, 87, 88, 89, 90, -1, 92, -1, -1, 95,
1375 96, -1, -1, 99, 100, 86, 87, 88, 89, 90,
1376 -1, 92, -1, -1, 95, 96, -1, -1, 99, 100,
1377 86, 87, 88, 89, 90, -1, 92, -1, -1, 95,
1378 96, -1, -1, 99, 100, 86, 87, 88, 89, 90,
1379 -1, 92, -1, -1, 95, 96, 3, 4, 99, 100,
1380 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1381 -1, 3, 4, -1, -1, 7, -1, 9, 10, -1,
1382 -1, 14, 15, 16, 17, -1, 3, 4, 21, -1,
1383 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1384 3, -1, -1, -1, 7, -1, -1, 10, -1, -1,
1385 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1386 53, 54, 55, 56, -1, -1, -1, -1, -1, -1,
1387 -1, -1, -1, -1, -1, -1, -1, -1, -1, 86,
1388 87, 88, 89, 90, 91, 92, -1, -1, 95, 96,
1389 -1, -1, -1, 100, 86, 87, 88, 89, 90, -1,
1390 92, -1, -1, 95, 96, -1, -1, -1, 100, 86,
1391 87, 88, 89, 90, -1, 92, -1, -1, -1, 96,
1392 -1, -1, -1, 100, 87, 88, 89, 90, -1, 92,
1393 -1, -1, 8, 96, -1, -1, -1, 100, 14, 15,
1394 16, 17, -1, -1, -1, 21, -1, -1, -1, -1,
1395 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1396 -1, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1397 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1398 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1399 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1400 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1401 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1402 -1, -1, 98, 99, -1, 101, -1, -1, -1, -1,
1403 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1404 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1405 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1406 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1407 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1408 -1, -1, -1, -1, -1, -1, -1, 98, 99, -1,
1409 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1410 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1411 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1412 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1413 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1414 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1415 -1, -1, 98, 99, -1, 101, -1, -1, -1, -1,
1416 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1417 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1418 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1419 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1420 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1421 -1, -1, -1, -1, -1, -1, -1, 98, 99, -1,
1422 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1423 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1424 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1425 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1426 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1427 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1428 -1, -1, 98, 99, -1, 101, -1, -1, -1, -1,
1429 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1430 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1431 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1432 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1433 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1434 -1, -1, -1, -1, -1, -1, -1, 98, 99, -1,
1435 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1436 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1437 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1438 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1439 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1440 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1441 -1, -1, 98, -1, -1, 101, -1, -1, -1, -1,
1442 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1443 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1444 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1445 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1446 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1447 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
1448 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1449 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1450 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1451 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1452 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1453 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1454 -1, -1, 98, -1, -1, 101, -1, -1, -1, -1,
1455 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1456 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1457 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1458 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1459 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1460 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
1461 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1462 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1463 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1464 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1465 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1466 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1467 -1, -1, 98, -1, -1, 101, -1, -1, -1, -1,
1468 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1469 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1470 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1471 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1472 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1473 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
1474 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1475 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1476 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1477 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1478 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1479 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1480 -1, -1, 98, -1, -1, 101, -1, -1, -1, -1,
1481 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1482 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1483 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1484 71, 72, 8, -1, -1, 76, 77, -1, 14, 15,
1485 16, 17, -1, 84, -1, 21, -1, 88, -1, 90,
1486 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
1487 101, -1, -1, -1, -1, -1, -1, -1, -1, 45,
1488 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1489 56, -1, -1, -1, -1, -1, -1, -1, -1, 65,
1490 -1, 67, 68, 69, -1, 71, 72, 8, -1, -1,
1491 76, 77, -1, 14, 15, 16, 17, -1, 84, -1,
1492 21, -1, 88, -1, 90, -1, -1, -1, -1, -1,
1493 -1, -1, 98, -1, -1, 101, -1, -1, -1, -1,
1494 -1, -1, -1, -1, 45, 46, 47, 48, 49, 50,
1495 51, 52, 53, 54, 55, 56, -1, -1, -1, -1,
1496 -1, -1, -1, -1, 65, -1, 67, 68, 69, -1,
1497 71, 72, -1, -1, -1, 76, 77, -1, -1, -1,
1498 -1, -1, -1, 84, -1, -1, -1, 88, -1, 90,
1499 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
1507 0, 103, 0, 1, 8, 14, 15, 16, 17, 21,
1508 31, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1509 54, 55, 56, 57, 58, 59, 60, 62, 63, 64,
1510 65, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1511 76, 77, 78, 79, 80, 81, 82, 83, 84, 86,
1512 88, 90, 94, 98, 101, 104, 105, 106, 107, 108,
1513 109, 110, 111, 113, 114, 116, 117, 118, 119, 120,
1514 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1515 137, 138, 139, 140, 141, 142, 143, 144, 145, 94,
1516 16, 17, 53, 54, 55, 56, 84, 111, 127, 98,
1517 109, 111, 118, 98, 98, 98, 98, 98, 98, 98,
1518 98, 98, 98, 109, 98, 109, 98, 109, 98, 109,
1519 65, 66, 110, 65, 94, 109, 98, 111, 65, 98,
1520 98, 66, 98, 98, 65, 98, 65, 98, 16, 111,
1521 119, 120, 120, 111, 110, 110, 111, 94, 11, 98,
1522 85, 93, 3, 4, 7, 9, 10, 86, 87, 88,
1523 89, 90, 92, 95, 96, 100, 111, 111, 110, 12,
1524 85, 93, 94, 126, 98, 109, 93, 109, 111, 98,
1525 98, 98, 98, 98, 98, 111, 66, 98, 111, 121,
1526 111, 111, 111, 111, 111, 111, 111, 99, 110, 111,
1527 99, 110, 111, 99, 110, 94, 94, 16, 17, 53,
1528 54, 55, 56, 99, 109, 127, 65, 66, 111, 112,
1529 65, 111, 66, 99, 110, 91, 99, 101, 109, 99,
1530 110, 111, 111, 111, 111, 111, 111, 111, 111, 111,
1531 111, 111, 111, 109, 85, 99, 115, 93, 66, 109,
1532 111, 90, 109, 126, 111, 111, 110, 111, 110, 111,
1533 99, 111, 99, 93, 99, 93, 93, 93, 99, 93,
1534 99, 93, 93, 99, 99, 99, 99, 99, 99, 99,
1535 99, 99, 99, 99, 99, 93, 99, 99, 66, 93,
1536 111, 65, 99, 99, 99, 91, 93, 111, 111, 93,
1537 99, 111, 109, 111, 121, 99, 99, 93, 121, 111,
1538 111, 111, 111, 111, 111, 16, 17, 53, 54, 55,
1539 56, 127, 45, 48, 49, 51, 52, 111, 99, 66,
1540 66, 73, 111, 115, 115, 111, 91, 90, 93, 110,
1541 93, 99, 93, 99, 93, 93, 99, 93, 99, 99,
1542 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
1543 99, 99, 91, 93, 90, 110, 121, 99, 68, 98,
1544 122, 123, 125, 111, 111, 111, 111, 111, 111, 91,
1545 93, 123, 124, 98, 99, 99, 99, 99, 99, 99,
1546 91, 125, 93, 99, 110, 124, 99
1549 #define yyerrok (yyerrstatus = 0)
1550 #define yyclearin (yychar = YYEMPTY)
1551 #define YYEMPTY (-2)
1554 #define YYACCEPT goto yyacceptlab
1555 #define YYABORT goto yyabortlab
1556 #define YYERROR goto yyerrorlab
1566 #define YYFAIL goto yyerrlab
1574 #define YYRECOVERING() (!!yyerrstatus)
1576 #define YYBACKUP(Token, Value) \
1578 if (yychar == YYEMPTY && yylen == 1) \
1582 yytoken = YYTRANSLATE (yychar); \
1588 yyerror (YY_("syntax error: cannot back up")); \
1595 #define YYERRCODE 256
1602 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
1603 #ifndef YYLLOC_DEFAULT
1604 # define YYLLOC_DEFAULT(Current, Rhs, N) \
1608 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1609 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1610 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1611 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1615 (Current).first_line = (Current).last_line = \
1616 YYRHSLOC (Rhs, 0).last_line; \
1617 (Current).first_column = (Current).last_column = \
1618 YYRHSLOC (Rhs, 0).last_column; \
1628 #ifndef YY_LOCATION_PRINT
1629 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
1630 # define YY_LOCATION_PRINT(File, Loc) \
1631 fprintf (File, "%d.%d-%d.%d", \
1632 (Loc).first_line, (Loc).first_column, \
1633 (Loc).last_line, (Loc).last_column)
1635 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1643 # define YYLEX yylex (&yylval, YYLEX_PARAM)
1645 # define YYLEX yylex (&yylval)
1653 # define YYFPRINTF fprintf
1656 # define YYDPRINTF(Args) \
1662 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1666 YYFPRINTF (stderr, "%s ", Title); \
1667 yy_symbol_print (stderr, \
1669 YYFPRINTF (stderr, "\n"); \
1679 #if (defined __STDC__ || defined __C99__FUNC__ \
1680 || defined __cplusplus || defined _MSC_VER)
1688 YYSTYPE const *
const yyvaluep;
1695 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1711 #if (defined __STDC__ || defined __C99__FUNC__ \
1712 || defined __cplusplus || defined _MSC_VER)
1720 YYSTYPE const *
const yyvaluep;
1737 #if (defined __STDC__ || defined __C99__FUNC__ \
1738 || defined __cplusplus || defined _MSC_VER)
1749 for (; yybottom <= yytop; yybottom++)
1751 int yybot = *yybottom;
1757 # define YY_STACK_PRINT(Bottom, Top) \
1760 yy_stack_print ((Bottom), (Top)); \
1768 #if (defined __STDC__ || defined __C99__FUNC__ \
1769 || defined __cplusplus || defined _MSC_VER)
1779 int yynrhs =
yyr2[yyrule];
1781 unsigned long int yylno =
yyrline[yyrule];
1782 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1785 for (yyi = 0; yyi < yynrhs; yyi++)
1789 &(yyvsp[(yyi + 1) - (yynrhs)])
1795 # define YY_REDUCE_PRINT(Rule) \
1798 yy_reduce_print (yyvsp, Rule); \
1805 # define YYDPRINTF(Args)
1806 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1807 # define YY_STACK_PRINT(Bottom, Top)
1808 # define YY_REDUCE_PRINT(Rule)
1814 # define YYINITDEPTH 200
1825 # define YYMAXDEPTH 10000
1833 # if defined __GLIBC__ && defined _STRING_H
1834 # define yystrlen strlen
1837 #if (defined __STDC__ || defined __C99__FUNC__ \
1838 || defined __cplusplus || defined _MSC_VER)
1840 yystrlen (
const char *yystr)
1848 for (yylen = 0; yystr[yylen]; yylen++)
1856 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1857 # define yystpcpy stpcpy
1861 #if (defined __STDC__ || defined __C99__FUNC__ \
1862 || defined __cplusplus || defined _MSC_VER)
1864 yystpcpy (
char *yydest,
const char *yysrc)
1867 yystpcpy (yydest, yysrc)
1873 const char *yys = yysrc;
1875 while ((*yyd++ = *yys++) !=
'\0')
1892 yytnamerr (
char *yyres,
const char *yystr)
1897 char const *yyp = yystr;
1904 goto do_not_strip_quotes;
1908 goto do_not_strip_quotes;
1921 do_not_strip_quotes: ;
1925 return yystrlen (yystr);
1927 return yystpcpy (yyres, yystr) - yyres;
1939 yysyntax_error (
char *yyresult,
int yystate,
int yychar)
1941 int yyn =
yypact[yystate];
1951 int yysize_overflow = 0;
1952 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1953 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1959 YY_(
"syntax error, unexpected %s");
1960 YY_(
"syntax error, unexpected %s, expecting %s");
1961 YY_(
"syntax error, unexpected %s, expecting %s or %s");
1962 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s");
1963 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s");
1967 static char const yyunexpected[] =
"syntax error, unexpected %s";
1968 static char const yyexpecting[] =
", expecting %s";
1969 static char const yyor[] =
" or %s";
1970 char yyformat[
sizeof yyunexpected
1971 +
sizeof yyexpecting - 1
1972 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
1973 * (
sizeof yyor - 1))];
1974 char const *yyprefix = yyexpecting;
1978 int yyxbegin = yyn < 0 ? -yyn : 0;
1981 int yychecklim =
YYLAST - yyn + 1;
1986 yyfmt = yystpcpy (yyformat, yyunexpected);
1988 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1991 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1995 yyformat[
sizeof yyunexpected - 1] =
'\0';
1998 yyarg[yycount++] =
yytname[yyx];
1999 yysize1 = yysize + yytnamerr (0,
yytname[yyx]);
2000 yysize_overflow |= (yysize1 < yysize);
2002 yyfmt = yystpcpy (yyfmt, yyprefix);
2006 yyf =
YY_(yyformat);
2007 yysize1 = yysize + yystrlen (yyf);
2008 yysize_overflow |= (yysize1 < yysize);
2011 if (yysize_overflow)
2019 char *yyp = yyresult;
2021 while ((*yyp = *yyf) !=
'\0')
2023 if (*yyp ==
'%' && yyf[1] ==
's' && yyi < yycount)
2025 yyp += yytnamerr (yyp, yyarg[yyi++]);
2046 #if (defined __STDC__ || defined __C99__FUNC__ \
2047 || defined __cplusplus || defined _MSC_VER)
2073 #ifdef YYPARSE_PARAM
2074 #if defined __STDC__ || defined __cplusplus
2075 int yyparse (
void *YYPARSE_PARAM);
2080 #if defined __STDC__ || defined __cplusplus
2095 #ifdef YYPARSE_PARAM
2096 #if (defined __STDC__ || defined __C99__FUNC__ \
2097 || defined __cplusplus || defined _MSC_VER)
2103 void *YYPARSE_PARAM;
2106 #if (defined __STDC__ || defined __C99__FUNC__ \
2107 || defined __cplusplus || defined _MSC_VER)
2160 char *yymsg = yymsgbuf;
2161 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
2164 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2175 YYDPRINTF ((stderr,
"Starting parse\n"));
2202 if (yyss + yystacksize - 1 <= yyssp)
2205 YYSIZE_T yysize = yyssp - yyss + 1;
2219 yyoverflow (
YY_(
"memory exhausted"),
2220 &yyss1, yysize *
sizeof (*yyssp),
2221 &yyvs1, yysize *
sizeof (*yyvsp),
2228 # ifndef YYSTACK_RELOCATE
2229 goto yyexhaustedlab;
2233 goto yyexhaustedlab;
2240 union yyalloc *yyptr =
2241 (
union yyalloc *)
YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2243 goto yyexhaustedlab;
2244 YYSTACK_RELOCATE (yyss_alloc, yyss);
2245 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
2246 # undef YYSTACK_RELOCATE
2253 yyssp = yyss + yysize - 1;
2254 yyvsp = yyvs + yysize - 1;
2256 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
2257 (
unsigned long int) yystacksize));
2259 if (yyss + yystacksize - 1 <= yyssp)
2263 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
2288 YYDPRINTF ((stderr,
"Reading a token: "));
2292 if (yychar <=
YYEOF)
2294 yychar = yytoken =
YYEOF;
2295 YYDPRINTF ((stderr,
"Now at end of input.\n"));
2359 yyval = yyvsp[1-yylen];
2368 #line 319 "grammar.y"
2404 #line 354 "grammar.y"
2411 #line 356 "grammar.y"
2418 #line 358 "grammar.y"
2427 #line 362 "grammar.y"
2437 #line 367 "grammar.y"
2444 #line 369 "grammar.y"
2454 if ((
inerror!=3) && ((yyvsp[(1) - (2)].
i)<
UMINUS) && ((yyvsp[(1) - (2)].
i)>
' '))
2498 #line 427 "grammar.y"
2505 #line 430 "grammar.y"
2512 #line 445 "grammar.y"
2521 #line 452 "grammar.y"
2531 #line 457 "grammar.y"
2533 syMake(&(yyval.lv),(yyvsp[(1) - (1)].name));
2540 #line 461 "grammar.y"
2549 #line 465 "grammar.y"
2551 if(
iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv),
'.', &(yyvsp[(3) - (3)].lv)))
YYERROR;
2558 #line 469 "grammar.y"
2567 #line 473 "grammar.y"
2569 if ((yyvsp[(1) - (4)].lv).
next==
NULL)
2572 memcpy((yyvsp[(1) - (4)].lv).
next,&(yyvsp[(3) - (4)].lv),
sizeof(
sleftv));
2575 else if ((yyvsp[(1) - (4)].lv).rtyp==
UNKNOWN)
2586 #line 487 "grammar.y"
2590 memset(&(yyval.lv),0,
sizeof(
sleftv));
2592 leftv v = &(yyvsp[(2) - (3)].lv);
2597 memset(&tmp,0,
sizeof(tmp));
2601 pDelete((poly *)&(yyval.lv).data);
2602 (yyvsp[(2) - (3)].lv).CleanUp();
2607 (yyval.lv).data = (
void *)
pAdd((poly)(yyval.lv).data,
p);
2612 (yyvsp[(2) - (3)].lv).CleanUp();
2619 #line 515 "grammar.y"
2621 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2622 int i = atoi((yyvsp[(1) - (1)].
name));
2626 (yyval.lv).data = (
void *)(long)
i;
2629 int l = strlen((yyvsp[(1) - (1)].
name))+2;
2634 sprintf(tmp,
"%d",
i);
2635 if (strcmp(tmp,(yyvsp[(1) - (1)].
name))!=0)
2639 (yyval.lv).data = n;
2648 #line 539 "grammar.y"
2650 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2651 (yyval.lv).rtyp = (yyvsp[(1) - (1)].
i);
2652 (yyval.lv).data = (yyval.lv).Data();
2659 #line 545 "grammar.y"
2661 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2663 (yyval.lv).data = (yyvsp[(1) - (1)].
name);
2670 #line 551 "grammar.y"
2679 #line 555 "grammar.y"
2688 #line 559 "grammar.y"
2697 #line 563 "grammar.y"
2706 #line 567 "grammar.y"
2715 #line 571 "grammar.y"
2724 #line 575 "grammar.y"
2733 #line 579 "grammar.y"
2742 #line 583 "grammar.y"
2751 #line 587 "grammar.y"
2760 #line 591 "grammar.y"
2769 #line 595 "grammar.y"
2778 #line 599 "grammar.y"
2787 #line 603 "grammar.y"
2796 #line 607 "grammar.y"
2805 #line 611 "grammar.y"
2807 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2814 #line 615 "grammar.y"
2816 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2823 #line 619 "grammar.y"
2825 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2832 #line 623 "grammar.y"
2834 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2841 #line 627 "grammar.y"
2850 #line 631 "grammar.y"
2852 int b=
iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i));
2861 #line 637 "grammar.y"
2863 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2870 #line 641 "grammar.y"
2879 #line 645 "grammar.y"
2888 #line 649 "grammar.y"
2897 #line 653 "grammar.y"
2899 if (
iiARROW(&(yyval.lv),(yyvsp[(1) - (3)].name),(yyvsp[(3) - (3)].name)))
YYERROR;
2907 #line 657 "grammar.y"
2908 { (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
2914 #line 662 "grammar.y"
2916 leftv v = &(yyvsp[(1) - (3)].lv);
2922 memcpy(
v->
next,&((yyvsp[(3) - (3)].lv)),
sizeof(
sleftv));
2923 (yyval.lv) = (yyvsp[(1) - (3)].lv);
2930 #line 673 "grammar.y"
2932 (yyval.lv) = (yyvsp[(1) - (1)].lv);
2939 #line 679 "grammar.y"
2942 (yyval.lv) = (yyvsp[(1) - (1)].lv);
2949 #line 683 "grammar.y"
2950 { (yyval.lv) = (yyvsp[(1) - (1)].lv); ;}
2956 #line 685 "grammar.y"
2958 if(
iiExprArith3(&(yyval.lv),
'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv)))
YYERROR;
2965 #line 689 "grammar.y"
2974 #line 693 "grammar.y"
2983 #line 697 "grammar.y"
2992 #line 701 "grammar.y"
3001 #line 705 "grammar.y"
3010 #line 709 "grammar.y"
3019 #line 713 "grammar.y"
3021 if (
iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), 0, &(yyvsp[(5) - (6)].lv)))
YYERROR;
3028 #line 717 "grammar.y"
3030 (yyval.lv)=(yyvsp[(2) - (3)].lv);
3037 #line 721 "grammar.y"
3042 {
if (
iiExprArith2(&(yyval.lv),&(yyvsp[(2) - (5)].lv),
'=',&(yyvsp[(4) - (5)].lv)))
YYERROR; }
3046 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3047 (yyval.lv).rtyp=
NONE;
3059 #line 738 "grammar.y"
3061 iiTestAssume(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv));
3062 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3063 (yyval.lv).rtyp=
NONE;
3070 #line 744 "grammar.y"
3081 #line 750 "grammar.y"
3084 if (
siq<=0) (yyvsp[(4) - (5)].lv).Eval();
3086 (yyval.lv)=(yyvsp[(4) - (5)].lv);
3096 #line 762 "grammar.y"
3107 #line 770 "grammar.y"
3118 #line 778 "grammar.y"
3129 #line 787 "grammar.y"
3138 #line 791 "grammar.y"
3147 #line 795 "grammar.y"
3156 #line 799 "grammar.y"
3165 #line 803 "grammar.y"
3167 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3174 #line 807 "grammar.y"
3183 #line 811 "grammar.y"
3185 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3192 #line 815 "grammar.y"
3194 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3201 #line 819 "grammar.y"
3210 #line 823 "grammar.y"
3219 #line 827 "grammar.y"
3228 #line 831 "grammar.y"
3237 #line 835 "grammar.y"
3243 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3246 (yyval.lv).data = (
void *)(long)(
i == 0 ? 1 : 0);
3254 #line 847 "grammar.y"
3263 #line 853 "grammar.y"
3264 { (yyval.lv) = (yyvsp[(1) - (2)].lv); ;}
3270 #line 855 "grammar.y"
3272 if ((yyvsp[(1) - (2)].lv).rtyp==0)
3274 Werror(
"`%s` is undefined",(yyvsp[(1) - (2)].lv).Fullname());
3277 else if (((yyvsp[(1) - (2)].lv).rtyp==
MODUL_CMD)
3279 && ((yyvsp[(1) - (2)].lv).e!=
NULL) && ((yyvsp[(1) - (2)].lv).e->next==
NULL))
3281 MYYERROR(
"matrix must have 2 indices");
3283 (yyval.lv) = (yyvsp[(1) - (2)].lv);
3290 #line 875 "grammar.y"
3294 MYYERROR(
"string expression expected");
3296 (yyval.name) = (
char *)(yyvsp[(2) - (3)].lv).CopyD(
STRING_CMD);
3297 (yyvsp[(2) - (3)].lv).CleanUp();
3304 #line 887 "grammar.y"
3306 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3314 #line 892 "grammar.y"
3316 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3324 #line 897 "grammar.y"
3333 #line 901 "grammar.y"
3342 #line 905 "grammar.y"
3359 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3369 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3383 #line 941 "grammar.y"
3391 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3405 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3414 #line 967 "grammar.y"
3416 int t=(yyvsp[(1) - (3)].lv).Typ();
3418 memset(&r,0,
sizeof(
sleftv));
3426 if (
iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),
myynest,t,&((yyvsp[(3) - (3)].lv).req_packhdl->idroot)))
3429 leftv v=&(yyvsp[(1) - (3)].lv);
3433 (yyval.lv)=(yyvsp[(1) - (3)].lv);
3440 #line 988 "grammar.y"
3442 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3450 #line 1001 "grammar.y"
3452 leftv v = &(yyvsp[(2) - (5)].lv);
3458 memcpy(
v->
next,&((yyvsp[(4) - (5)].lv)),
sizeof(
sleftv));
3459 (yyval.lv) = (yyvsp[(2) - (5)].lv);
3466 #line 1015 "grammar.y"
3476 #line 1023 "grammar.y"
3478 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3481 (*iv)[1] = (yyvsp[(1) - (1)].i);
3483 (yyval.lv).data = (
void *)iv;
3490 #line 1032 "grammar.y"
3492 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3493 leftv sl = &(yyvsp[(3) - (4)].lv);
3497 int l = 2 + slLength;
3499 (*iv)[0] = slLength;
3500 (*iv)[1] = (yyvsp[(1) - (4)].i);
3503 while ((
i<
l) && (sl!=
NULL))
3507 (*iv)[
i++] = (int)((
long)(sl->
Data()));
3516 (*iv)[
i++] = (*ivv)[ll++];
3522 (yyvsp[(3) - (4)].lv).CleanUp();
3523 MYYERROR(
"wrong type in ordering");
3528 (yyval.lv).data = (
void *)iv;
3530 (yyvsp[(3) - (4)].lv).CleanUp();
3537 #line 1078 "grammar.y"
3539 (yyval.lv) = (yyvsp[(1) - (3)].lv);
3541 memcpy((yyval.lv).next,&(yyvsp[(3) - (3)].lv),
sizeof(
sleftv));
3548 #line 1088 "grammar.y"
3550 (yyval.lv) = (yyvsp[(2) - (3)].lv);
3557 #line 1094 "grammar.y"
3566 #line 1101 "grammar.y"
3567 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3573 #line 1103 "grammar.y"
3574 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3580 #line 1105 "grammar.y"
3581 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3587 #line 1114 "grammar.y"
3594 #line 1119 "grammar.y"
3604 #line 1124 "grammar.y"
3613 #line 1131 "grammar.y"
3623 #line 1139 "grammar.y"
3625 if (
basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
3637 #line 1151 "grammar.y"
3639 leftv v=&(yyvsp[(2) - (2)].lv);
3659 #line 1168 "grammar.y"
3661 leftv v=&(yyvsp[(3) - (3)].lv);
3681 #line 1188 "grammar.y"
3690 #line 1192 "grammar.y"
3699 #line 1196 "grammar.y"
3709 #line 1201 "grammar.y"
3718 #line 1205 "grammar.y"
3727 #line 1209 "grammar.y"
3736 #line 1213 "grammar.y"
3745 #line 1217 "grammar.y"
3747 list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),
"// ",
TRUE);
3748 (yyvsp[(3) - (4)].lv).CleanUp();
3755 #line 1222 "grammar.y"
3759 (yyvsp[(3) - (6)].lv).CleanUp();
3766 #line 1228 "grammar.y"
3770 (yyvsp[(3) - (6)].lv).CleanUp();
3777 #line 1234 "grammar.y"
3781 (yyvsp[(3) - (6)].lv).CleanUp();
3788 #line 1240 "grammar.y"
3792 (yyvsp[(3) - (6)].lv).CleanUp();
3799 #line 1246 "grammar.y"
3803 (yyvsp[(3) - (6)].lv).CleanUp();
3810 #line 1252 "grammar.y"
3814 (yyvsp[(3) - (6)].lv).CleanUp();
3821 #line 1258 "grammar.y"
3825 (yyvsp[(3) - (6)].lv).CleanUp();
3832 #line 1270 "grammar.y"
3841 #line 1276 "grammar.y"
3848 #line 1285 "grammar.y"
3850 const char *ring_name = (yyvsp[(2) - (8)].lv).
name;
3852 rInit(&(yyvsp[(4) - (8)].lv),
3853 &(yyvsp[(6) - (8)].lv),
3854 &(yyvsp[(8) - (8)].lv));
3860 &((yyvsp[(2) - (8)].lv).req_packhdl->idroot),
FALSE);
3861 (yyvsp[(2) - (8)].lv).CleanUp();
3862 if (newRingHdl!=
NULL)
3872 if (newRingHdl==
NULL)
3886 #line 1318 "grammar.y"
3888 const char *ring_name = (yyvsp[(2) - (2)].lv).
name;
3891 (yyvsp[(2) - (2)].lv).CleanUp();
3898 #line 1325 "grammar.y"
3908 #line 1330 "grammar.y"
3913 memcpy((yyvsp[(4) - (7)].lv).
next,&(yyvsp[(6) - (7)].lv),
sizeof(
sleftv));
3914 memset(&(yyvsp[(6) - (7)].lv),0,
sizeof(
sleftv));
3923 #line 1343 "grammar.y"
3933 #line 1353 "grammar.y"
3936 MYYERROR(
"only inside a proc allowed");
3937 const char * n=(yyvsp[(2) - (2)].lv).Name();
3938 if (((yyvsp[(2) - (2)].lv).Typ()==
RING_CMD)
3939 && ((yyvsp[(2) - (2)].lv).rtyp==
IDHDL))
3942 if ((yyvsp[(2) - (2)].lv).e!=
NULL)
h=
rFindHdl((ring)(yyvsp[(2) - (2)].lv).Data(),
NULL);
3977 Werror(
"%s is no identifier",n);
3978 (yyvsp[(2) - (2)].lv).CleanUp();
3985 Werror(
"cannot find the name of the basering %s",n);
3986 (yyvsp[(2) - (2)].lv).CleanUp();
3989 (yyvsp[(2) - (2)].lv).CleanUp();
3993 Werror(
"%s is no name of a ring/qring",n);
3994 (yyvsp[(2) - (2)].lv).CleanUp();
4003 #line 1421 "grammar.y"
4005 type_cmd(&((yyvsp[(2) - (2)].lv)));
4012 #line 1425 "grammar.y"
4016 if ((yyvsp[(1) - (1)].lv).rtyp!=
COMMAND)
4019 if ((yyvsp[(1) - (1)].lv).Typ()==
UNKNOWN)
4021 if ((yyvsp[(1) - (1)].lv).
name!=
NULL)
4023 Werror(
"`%s` is undefined",(yyvsp[(1) - (1)].lv).
name);
4032 (yyvsp[(1) - (1)].lv).CleanUp(
currRing);
4040 #line 1454 "grammar.y"
4058 #line 1467 "grammar.y"
4080 #line 1484 "grammar.y"
4094 #line 1493 "grammar.y"
4104 #line 1498 "grammar.y"
4114 #line 1506 "grammar.y"
4117 char *
s = (
char *)
omAlloc( strlen((yyvsp[(2) - (3)].
name)) + strlen((yyvsp[(3) - (3)].
name)) + 36);
4118 sprintf(
s,
"whileif (!(%s)) break;\n%scontinue;\n " ,(yyvsp[(2) - (3)].
name),(yyvsp[(3) - (3)].
name));
4128 #line 1518 "grammar.y"
4132 char *
s = (
char *)
omAlloc( strlen((yyvsp[(3) - (5)].
name))+strlen((yyvsp[(4) - (5)].
name))+strlen((yyvsp[(5) - (5)].
name))+36);
4133 sprintf(
s,
"forif (!(%s)) break;\n%s%s;\ncontinue;\n "
4134 ,(yyvsp[(3) - (5)].
name),(yyvsp[(5) - (5)].
name),(yyvsp[(4) - (5)].
name));
4139 s = (
char *)
omAlloc( strlen((yyvsp[(2) - (5)].
name)) + 3);
4140 sprintf(
s,
"%s;\n",(yyvsp[(2) - (5)].
name));
4149 #line 1537 "grammar.y"
4155 sprintf(
IDPROC(
h)->data.s.body,
"parameter list #;\n%s;return();\n\n",(yyvsp[(3) - (3)].name));
4164 #line 1547 "grammar.y"
4177 IDPROC(
h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(3) - (3)].
name))+strlen(args)+14);;
4178 sprintf(
IDPROC(
h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(3) - (3)].name));
4188 #line 1566 "grammar.y"
4203 IDPROC(
h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(4) - (4)].
name))+strlen(args)+14);;
4204 sprintf(
IDPROC(
h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(4) - (4)].name));
4213 #line 1589 "grammar.y"
4224 #line 1595 "grammar.y"
4238 #line 1607 "grammar.y"
4241 (yyvsp[(3) - (4)].lv).CleanUp();
4249 #line 1613 "grammar.y"
4251 if ((yyvsp[(1) - (3)].
i)==
RETURN)
4263 #line 4264 "grammar.cc"
4281 if (0 <= yystate && yystate <=
YYLAST &&
yycheck[yystate] == *yyssp)
4297 #if ! YYERROR_VERBOSE
4301 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
4307 if (yymsg != yymsgbuf)
4311 yymsg_alloc = yyalloc;
4315 yymsg_alloc =
sizeof yymsgbuf;
4319 if (0 < yysize && yysize <= yymsg_alloc)
4321 (void) yysyntax_error (yymsg, yystate, yychar);
4328 goto yyexhaustedlab;
4336 if (yyerrstatus == 3)
4341 if (yychar <=
YYEOF)
4344 if (yychar ==
YYEOF)
4436 #if !defined(yyoverflow) || YYERROR_VERBOSE
4454 while (yyssp != yyss)
4465 if (yymsg != yymsgbuf)
4469 return YYID (yyresult);
idhdl get(const char *s, int lev)
Class used for (list of) interpreter objects.
void CleanUp(ring r=currRing)
static FORCE_INLINE const char * n_Read(const char *s, number *a, const coeffs r)
!!! Recommendation: This method is too cryptic to be part of the user- !!! interface....
const CanonicalForm int s
const Variable & v
< [in] a sqrfree bivariate poly
char name(const Variable &v)
void WerrorS(const char *s)
BOOLEAN exitBuffer(feBufferTypes typ)
void newBuffer(char *s, feBufferTypes t, procinfo *pi, int lineno)
BOOLEAN contBuffer(feBufferTypes typ)
BOOLEAN newFile(char *fname)
const char * Tok2Cmdname(int tok)
int iiTestConvert(int inputType, int outputType)
const char * iiTwoOps(int t)
unsigned short int yytype_uint16
static const yytype_uint8 yyr1[]
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
static void yy_stack_print(yytype_int16 *yybottom, yytype_int16 *yytop)
static const yytype_uint8 yytranslate[]
static const yytype_int16 yydefgoto[]
#define YY_REDUCE_PRINT(Rule)
static const yytype_int16 yypact[]
static void yy_reduce_print(YYSTYPE *yyvsp, int yyrule)
static const yytype_uint16 yyrline[]
static const yytype_int16 yypgoto[]
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
static void yy_symbol_value_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
unsigned char yytype_uint8
#define YY_STACK_PRINT(Bottom, Top)
#define YYSTACK_ALLOC_MAXIMUM
void yyerror(const char *fmt)
BOOLEAN yyInRingConstruction
static void yy_symbol_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
static const yytype_int16 yytable[]
static const yytype_uint8 yyr2[]
static const char *const yytname[]
static const yytype_uint8 yystos[]
static const yytype_uint16 yyprhs[]
static const yytype_int16 yyrhs[]
static const yytype_int16 yycheck[]
static const yytype_uint8 yydefact[]
#define idDelete(H)
delete an ideal
BOOLEAN jjLOAD(const char *s, BOOLEAN autoexport)
load lib/module given in v
BOOLEAN iiExprArith2(leftv res, leftv a, int op, leftv b, BOOLEAN proccall)
BOOLEAN iiExprArith1(leftv res, leftv a, int op)
BOOLEAN iiExprArithM(leftv res, leftv a, int op)
BOOLEAN iiExprArith3(leftv res, int op, leftv a, leftv b, leftv c)
BOOLEAN iiAssign(leftv l, leftv r, BOOLEAN toplevel)
BOOLEAN iiConvert(int inputType, int outputType, int index, leftv input, leftv output, const struct sConvertTypes *dConvertTypes)
void killid(const char *id, idhdl *ih)
void killhdl2(idhdl h, idhdl *ih, ring r)
idhdl enterid(const char *s, int lev, int t, idhdl *root, BOOLEAN init, BOOLEAN search)
void killhdl(idhdl h, package proot)
procinfo * iiInitSingularProcinfo(procinfov pi, const char *libname, const char *procname, int, long pos, BOOLEAN pstatic)
char * iiProcArgs(char *e, BOOLEAN withParenth)
BOOLEAN iiParameter(leftv p)
int iiDeclCommand(leftv sy, leftv name, int lev, int t, idhdl *root, BOOLEAN isring, BOOLEAN init_b)
BOOLEAN iiApply(leftv res, leftv a, int op, leftv proc)
void list_cmd(int typ, const char *what, const char *prefix, BOOLEAN iterate, BOOLEAN fullname)
ring rInit(leftv pn, leftv rv, leftv ord)
BOOLEAN iiARROW(leftv r, char *a, char *s)
int exprlist_length(leftv v)
BOOLEAN iiTestAssume(leftv a, leftv b)
BOOLEAN iiAssignCR(leftv r, leftv arg)
idhdl rFindHdl(ring r, idhdl n)
const char * lastreserved
BOOLEAN iiExport(leftv v, int toLev)
void singular_example(char *str)
matrix mpNew(int r, int c)
create a r x c zero-matrix
void * malloc(size_t size)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Compatiblity layer for legacy polynomial operations (over currRing)
void Werror(const char *fmt,...)
rRingOrder_t rOrderName(char *ordername)
ring rDefault(const coeffs cf, int N, char **n, int ord_size, rRingOrder_t *ord, int *block0, int *block1, int **wvhdl, unsigned long bitmask)
void syMake(leftv v, const char *id, package pa)
void writeRTime(const char *v)
void writeTime(const char *v)