48#define YYBISON_VERSION "2.4.3"
51#define YYSKELETON_NAME "yacc.c"
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
257# define YYTOKEN_TABLE 0
358#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
360# define yystype YYSTYPE
361# define YYSTYPE_IS_DECLARED 1
369#line 370 "grammar.cc"
383#elif (defined __STDC__ || defined __C99__FUNC__ \
384 || defined __cplusplus || defined _MSC_VER)
404# define YYSIZE_T __SIZE_TYPE__
406# define YYSIZE_T size_t
407# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
408 || defined __cplusplus || defined _MSC_VER)
410# define YYSIZE_T size_t
412# define YYSIZE_T unsigned int
416#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
419# if defined YYENABLE_NLS && YYENABLE_NLS
422# define YY_(msgid) dgettext ("bison-runtime", msgid)
426# define YY_(msgid) msgid
431#if ! defined lint || defined __GNUC__
432# define YYUSE(e) ((void) (e))
441#if (defined __STDC__ || defined __C99__FUNC__ \
442 || defined __cplusplus || defined _MSC_VER)
455#if ! defined yyoverflow || YYERROR_VERBOSE
459# ifdef YYSTACK_USE_ALLOCA
460# if YYSTACK_USE_ALLOCA
462# define YYSTACK_ALLOC __builtin_alloca
463# elif defined __BUILTIN_VA_ARG_INCR
466# define YYSTACK_ALLOC __alloca
467# elif defined _MSC_VER
469# define alloca _alloca
471# define YYSTACK_ALLOC alloca
472# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
473 || defined __cplusplus || defined _MSC_VER)
485# define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
486# ifndef YYSTACK_ALLOC_MAXIMUM
491# define YYSTACK_ALLOC_MAXIMUM 4032
494# define YYSTACK_ALLOC YYMALLOC
495# define YYSTACK_FREE YYFREE
496# ifndef YYSTACK_ALLOC_MAXIMUM
497# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
499# if (defined __cplusplus && ! defined _STDLIB_H \
500 && ! ((defined YYMALLOC || defined malloc) \
501 && (defined YYFREE || defined free)))
508# define YYMALLOC malloc
509# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
510 || defined __cplusplus || defined _MSC_VER)
516# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
517 || defined __cplusplus || defined _MSC_VER)
525#if (! defined yyoverflow \
526 && (! defined __cplusplus \
527 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
537# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
541# define YYSTACK_BYTES(N) \
542 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
543 + YYSTACK_GAP_MAXIMUM)
548# if defined __GNUC__ && 1 < __GNUC__
549# define YYCOPY(To, From, Count) \
550 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
552# define YYCOPY(To, From, Count) \
556 for (yyi = 0; yyi < (Count); yyi++) \
557 (To)[yyi] = (From)[yyi]; \
568# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
571 YYSIZE_T yynewbytes; \
572 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
573 Stack = &yyptr->Stack_alloc; \
574 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
575 yyptr += yynewbytes / sizeof (*yyptr); \
599#define YYTRANSLATE(YYX) \
600 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
605 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
606 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
607 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
608 2, 2, 2, 2, 2, 2, 2, 2, 98, 2,
609 101, 102, 2, 90, 96, 91, 103, 92, 2, 2,
610 2, 2, 2, 2, 2, 2, 2, 2, 99, 97,
611 89, 88, 2, 2, 2, 2, 2, 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, 93, 2, 94, 95, 2, 104, 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, 2, 2, 2, 2,
628 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
629 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
630 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
631 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
632 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
633 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
634 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
635 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
636 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
637 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
638 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
647 0, 0, 3, 4, 7, 9, 12, 15, 17, 19,
648 21, 24, 26, 28, 30, 32, 34, 36, 38, 40,
649 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
650 64, 66, 68, 72, 76, 80, 85, 89, 91, 93,
651 95, 100, 105, 110, 114, 119, 124, 128, 133, 138,
652 143, 148, 155, 162, 169, 176, 185, 194, 203, 212,
653 216, 221, 230, 235, 244, 249, 253, 257, 261, 263,
654 265, 267, 274, 279, 286, 293, 300, 307, 314, 321,
655 325, 331, 337, 338, 344, 347, 350, 352, 355, 358,
656 362, 366, 370, 374, 378, 382, 386, 390, 394, 398,
657 401, 404, 407, 410, 412, 416, 419, 422, 425, 428,
658 437, 440, 444, 447, 449, 451, 457, 459, 461, 466,
659 468, 472, 474, 478, 480, 482, 484, 486, 488, 491,
660 495, 498, 502, 505, 508, 512, 517, 522, 527, 532,
661 537, 542, 547, 552, 559, 566, 573, 580, 587, 594,
662 601, 605, 607, 616, 619, 624, 632, 635, 637, 639,
663 642, 645, 647, 653, 656, 662, 664, 666, 670, 676,
664 680, 684, 689, 692, 695, 700
670 106, 0, -1, -1, 106, 107, -1, 108, -1, 110,
671 97, -1, 122, 97, -1, 148, -1, 83, -1, 97,
672 -1, 1, 97, -1, 143, -1, 144, -1, 109, -1,
673 145, -1, 146, -1, 131, -1, 132, -1, 133, -1,
674 60, 69, -1, 111, -1, 134, -1, 135, -1, 136,
675 -1, 147, -1, 138, -1, 139, -1, 141, -1, 142,
676 -1, 120, 113, -1, 72, -1, 121, -1, 112, 11,
677 112, -1, 114, 103, 112, -1, 112, 101, 102, -1,
678 112, 101, 113, 102, -1, 93, 113, 94, -1, 70,
679 -1, 87, -1, 123, -1, 17, 101, 114, 102, -1,
680 56, 101, 114, 102, -1, 57, 101, 113, 102, -1,
681 57, 101, 102, -1, 58, 101, 114, 102, -1, 59,
682 101, 113, 102, -1, 59, 101, 102, -1, 48, 101,
683 114, 102, -1, 51, 101, 114, 102, -1, 52, 101,
684 114, 102, -1, 54, 101, 114, 102, -1, 49, 101,
685 114, 96, 114, 102, -1, 51, 101, 114, 96, 114,
686 102, -1, 53, 101, 114, 96, 114, 102, -1, 54,
687 101, 114, 96, 114, 102, -1, 50, 101, 114, 96,
688 114, 96, 114, 102, -1, 52, 101, 114, 96, 114,
689 96, 114, 102, -1, 53, 101, 114, 96, 114, 96,
690 114, 102, -1, 54, 101, 114, 96, 114, 96, 114,
691 102, -1, 55, 101, 102, -1, 55, 101, 113, 102,
692 -1, 130, 101, 114, 96, 114, 96, 114, 102, -1,
693 130, 101, 114, 102, -1, 18, 101, 124, 96, 124,
694 96, 128, 102, -1, 18, 101, 114, 102, -1, 121,
695 12, 69, -1, 101, 113, 102, -1, 113, 96, 114,
696 -1, 114, -1, 119, -1, 112, -1, 114, 93, 114,
697 96, 114, 94, -1, 114, 93, 114, 94, -1, 74,
698 101, 114, 96, 48, 102, -1, 74, 101, 114, 96,
699 51, 102, -1, 74, 101, 114, 96, 52, 102, -1,
700 74, 101, 114, 96, 54, 102, -1, 74, 101, 114,
701 96, 55, 102, -1, 74, 101, 114, 96, 114, 102,
702 -1, 116, 114, 118, -1, 116, 114, 88, 114, 118,
703 -1, 117, 114, 96, 114, 118, -1, -1, 79, 101,
704 115, 114, 102, -1, 80, 101, -1, 75, 101, -1,
705 102, -1, 114, 10, -1, 114, 7, -1, 114, 90,
706 114, -1, 114, 91, 114, -1, 114, 92, 114, -1,
707 114, 95, 114, -1, 114, 89, 114, -1, 114, 98,
708 114, -1, 114, 9, 114, -1, 114, 4, 114, -1,
709 114, 3, 114, -1, 114, 99, 114, -1, 8, 114,
710 -1, 91, 114, -1, 122, 129, -1, 113, 129, -1,
711 71, -1, 104, 114, 104, -1, 56, 112, -1, 57,
712 112, -1, 58, 112, -1, 59, 112, -1, 130, 112,
713 93, 114, 94, 93, 114, 94, -1, 130, 112, -1,
714 122, 96, 112, -1, 17, 112, -1, 68, -1, 114,
715 -1, 101, 114, 96, 113, 102, -1, 71, -1, 125,
716 -1, 125, 101, 113, 102, -1, 126, -1, 126, 96,
717 127, -1, 126, -1, 101, 127, 102, -1, 88, -1,
718 23, -1, 28, -1, 16, -1, 14, -1, 89, 123,
719 -1, 62, 68, 97, -1, 62, 97, -1, 60, 68,
720 97, -1, 61, 113, -1, 63, 112, -1, 135, 96,
721 112, -1, 65, 101, 56, 102, -1, 65, 101, 57,
722 102, -1, 65, 101, 58, 102, -1, 65, 101, 59,
723 102, -1, 65, 101, 18, 102, -1, 65, 101, 130,
724 102, -1, 65, 101, 17, 102, -1, 65, 101, 112,
725 102, -1, 65, 101, 112, 96, 56, 102, -1, 65,
726 101, 112, 96, 57, 102, -1, 65, 101, 112, 96,
727 58, 102, -1, 65, 101, 112, 96, 59, 102, -1,
728 65, 101, 112, 96, 18, 102, -1, 65, 101, 112,
729 96, 130, 102, -1, 65, 101, 112, 96, 17, 102,
730 -1, 65, 101, 102, -1, 18, -1, 137, 112, 129,
731 124, 96, 124, 96, 128, -1, 137, 112, -1, 137,
732 112, 129, 112, -1, 137, 112, 129, 112, 93, 113,
733 94, -1, 87, 123, -1, 66, -1, 34, -1, 140,
734 114, -1, 67, 114, -1, 113, -1, 82, 101, 114,
735 102, 69, -1, 78, 69, -1, 82, 101, 114, 102,
736 76, -1, 76, -1, 77, -1, 84, 68, 69, -1,
737 81, 68, 68, 68, 69, -1, 17, 121, 69, -1,
738 73, 68, 69, -1, 73, 68, 68, 69, -1, 86,
739 122, -1, 86, 114, -1, 85, 101, 113, 102, -1,
746 0, 319, 319, 321, 355, 356, 358, 360, 364, 369,
747 371, 422, 423, 424, 425, 426, 427, 428, 429, 433,
748 436, 437, 438, 439, 440, 441, 442, 443, 444, 447,
749 454, 459, 463, 467, 471, 475, 489, 517, 541, 547,
750 553, 557, 561, 565, 569, 573, 577, 581, 585, 589,
751 593, 597, 601, 605, 609, 613, 617, 621, 625, 629,
752 633, 639, 643, 647, 651, 655, 660, 664, 675, 678,
753 679, 680, 684, 688, 692, 696, 700, 704, 708, 712,
754 716, 733, 740, 739, 757, 765, 773, 782, 786, 790,
755 794, 798, 802, 806, 810, 814, 818, 822, 826, 830,
756 842, 849, 850, 869, 870, 882, 887, 892, 896, 900,
757 937, 961, 982, 990, 994, 995, 1009, 1017, 1026, 1071,
758 1072, 1081, 1082, 1088, 1095, 1096, 1097, 1098, 1106, 1111,
759 1116, 1123, 1131, 1143, 1160, 1180, 1184, 1188, 1193, 1197,
760 1201, 1205, 1209, 1214, 1220, 1226, 1232, 1238, 1244, 1250,
761 1262, 1269, 1273, 1310, 1317, 1322, 1335, 1342, 1342, 1345,
762 1413, 1417, 1446, 1459, 1476, 1485, 1490, 1498, 1511, 1532,
763 1542, 1561, 1584, 1590, 1602, 1608
767#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
772 "$end",
"error",
"$undefined",
"DOTDOT",
"EQUAL_EQUAL",
"GE",
"LE",
773 "MINUSMINUS",
"NOT",
"NOTEQUAL",
"PLUSPLUS",
"COLONCOLON",
"ARROW",
774 "GRING_CMD",
"BIGINTMAT_CMD",
"BIGINTVEC_CMD",
"INTMAT_CMD",
"PROC_CMD",
775 "RING_CMD",
"BEGIN_RING",
"BUCKET_CMD",
"IDEAL_CMD",
"MAP_CMD",
776 "MATRIX_CMD",
"MODUL_CMD",
"NUMBER_CMD",
"POLY_CMD",
"RESOLUTION_CMD",
777 "SMATRIX_CMD",
"VECTOR_CMD",
"BETTI_CMD",
"E_CMD",
"FETCH_CMD",
778 "FREEMODULE_CMD",
"KEEPRING_CMD",
"IMAP_CMD",
"KOSZUL_CMD",
"MAXID_CMD",
779 "MONOM_CMD",
"PAR_CMD",
"PREIMAGE_CMD",
"VAR_CMD",
"VALTVARS",
"VMAXDEG",
780 "VMAXMULT",
"VNOETHER",
"VMINPOLY",
"END_RING",
"CMD_1",
"CMD_2",
781 "CMD_3",
"CMD_12",
"CMD_13",
"CMD_23",
"CMD_123",
"CMD_M",
"ROOT_DECL",
782 "ROOT_DECL_LIST",
"RING_DECL",
"RING_DECL_LIST",
"EXAMPLE_CMD",
783 "EXPORT_CMD",
"HELP_CMD",
"KILL_CMD",
"LIB_CMD",
"LISTVAR_CMD",
784 "SETRING_CMD",
"TYPE_CMD",
"STRINGTOK",
"BLOCKTOK",
"INT_CONST",
785 "UNKNOWN_IDENT",
"MONOM",
"PROC_DEF",
"APPLY",
"ASSUME_CMD",
"BREAK_CMD",
786 "CONTINUE_CMD",
"ELSE_CMD",
"EVAL",
"QUOTE",
"FOR_CMD",
"IF_CMD",
787 "SYS_BREAK",
"WHILE_CMD",
"RETURN",
"PARAMETER",
"SYSVAR",
"'='",
"'<'",
788 "'+'",
"'-'",
"'/'",
"'['",
"']'",
"'^'",
"','",
"';'",
"'&'",
"':'",
789 "UMINUS",
"'('",
"')'",
"'.'",
"'`'",
"$accept",
"lines",
"pprompt",
790 "flowctrl",
"example_dummy",
"command",
"assign",
"elemexpr",
"exprlist",
791 "expr",
"$@1",
"quote_start",
"assume_start",
"quote_end",
792 "expr_arithmetic",
"left_value",
"extendedid",
"declare_ip_variable",
793 "stringexpr",
"rlist",
"ordername",
"orderelem",
"OrderingList",
794 "ordering",
"cmdeq",
"mat_cmd",
"filecmd",
"helpcmd",
"examplecmd",
795 "exportcmd",
"killcmd",
"listcmd",
"ringcmd1",
"ringcmd",
"scriptcmd",
796 "setrings",
"setringcmd",
"typecmd",
"ifcmd",
"whilecmd",
"forcmd",
797 "proccmd",
"parametercmd",
"returncmd", 0
806 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
807 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
808 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
809 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
810 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
811 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
812 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
813 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
814 335, 336, 337, 338, 339, 340, 341, 342, 61, 60,
815 43, 45, 47, 91, 93, 94, 44, 59, 38, 58,
823 0, 105, 106, 106, 107, 107, 107, 107, 107, 107,
824 107, 108, 108, 108, 108, 108, 108, 108, 108, 109,
825 110, 110, 110, 110, 110, 110, 110, 110, 110, 111,
826 112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
827 112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
828 112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
829 112, 112, 112, 112, 112, 112, 112, 113, 113, 114,
830 114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
831 114, 114, 115, 114, 116, 117, 118, 119, 119, 119,
832 119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
833 119, 120, 120, 121, 121, 122, 122, 122, 122, 122,
834 122, 122, 122, 123, 124, 124, 125, 126, 126, 127,
835 127, 128, 128, 129, 130, 130, 130, 130, 131, 132,
836 132, 133, 134, 135, 135, 136, 136, 136, 136, 136,
837 136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
838 136, 137, 138, 138, 138, 138, 139, 140, 140, 141,
839 142, 142, 143, 143, 143, 143, 143, 144, 145, 146,
840 146, 146, 147, 147, 148, 148
846 0, 2, 0, 2, 1, 2, 2, 1, 1, 1,
847 2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
848 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
849 1, 1, 3, 3, 3, 4, 3, 1, 1, 1,
850 4, 4, 4, 3, 4, 4, 3, 4, 4, 4,
851 4, 6, 6, 6, 6, 8, 8, 8, 8, 3,
852 4, 8, 4, 8, 4, 3, 3, 3, 1, 1,
853 1, 6, 4, 6, 6, 6, 6, 6, 6, 3,
854 5, 5, 0, 5, 2, 2, 1, 2, 2, 3,
855 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
856 2, 2, 2, 1, 3, 2, 2, 2, 2, 8,
857 2, 3, 2, 1, 1, 5, 1, 1, 4, 1,
858 3, 1, 3, 1, 1, 1, 1, 1, 2, 3,
859 2, 3, 2, 2, 3, 4, 4, 4, 4, 4,
860 4, 4, 4, 6, 6, 6, 6, 6, 6, 6,
861 3, 1, 8, 2, 4, 7, 2, 1, 1, 2,
862 2, 1, 5, 2, 5, 1, 1, 3, 5, 3,
871 2, 0, 1, 0, 0, 127, 126, 0, 151, 124,
872 125, 158, 0, 0, 0, 0, 0, 0, 0, 0,
873 0, 0, 0, 0, 0, 0, 0, 0, 0, 157,
874 0, 113, 37, 103, 30, 0, 0, 0, 165, 166,
875 0, 0, 0, 0, 0, 8, 0, 0, 0, 38,
876 0, 0, 0, 9, 0, 0, 3, 4, 13, 0,
877 20, 70, 161, 68, 0, 0, 69, 0, 31, 0,
878 39, 0, 16, 17, 18, 21, 22, 23, 0, 25,
879 26, 0, 27, 28, 11, 12, 14, 15, 24, 7,
880 10, 0, 0, 0, 0, 0, 0, 38, 99, 0,
881 0, 70, 0, 31, 0, 0, 0, 0, 0, 0,
882 0, 0, 0, 0, 70, 0, 70, 0, 70, 0,
883 70, 0, 19, 132, 0, 130, 70, 0, 160, 0,
884 0, 85, 163, 82, 84, 0, 0, 0, 0, 0,
885 173, 172, 156, 128, 100, 0, 0, 0, 5, 0,
886 0, 123, 0, 102, 0, 0, 88, 0, 87, 0,
887 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
888 29, 0, 0, 6, 101, 0, 70, 0, 70, 159,
889 0, 0, 0, 0, 0, 0, 68, 169, 0, 114,
890 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,
891 68, 43, 0, 68, 46, 0, 131, 129, 0, 0,
892 0, 0, 0, 0, 150, 70, 0, 0, 170, 0,
893 0, 0, 0, 167, 175, 0, 36, 66, 104, 32,
894 34, 0, 67, 97, 96, 95, 93, 89, 90, 91,
895 0, 92, 94, 98, 33, 0, 86, 79, 0, 65,
896 70, 0, 0, 70, 0, 0, 0, 0, 0, 0,
897 0, 40, 68, 64, 0, 47, 0, 0, 0, 48,
898 0, 49, 0, 0, 50, 60, 41, 42, 44, 45,
899 141, 139, 135, 136, 137, 138, 0, 142, 140, 171,
900 0, 0, 0, 0, 174, 35, 72, 0, 0, 0,
901 0, 62, 0, 70, 114, 0, 42, 45, 0, 0,
902 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
903 0, 0, 0, 0, 0, 0, 0, 0, 0, 83,
904 168, 162, 164, 0, 80, 81, 0, 0, 0, 0,
905 0, 0, 51, 0, 52, 0, 0, 53, 0, 54,
906 149, 147, 143, 144, 145, 146, 148, 73, 74, 75,
907 76, 77, 78, 71, 0, 0, 0, 0, 115, 116,
908 0, 117, 121, 0, 0, 0, 0, 0, 0, 0,
909 155, 0, 119, 0, 0, 63, 55, 56, 57, 58,
910 61, 109, 152, 0, 122, 0, 120, 118
916 -1, 1, 56, 57, 58, 59, 60, 61, 146, 63,
917 220, 64, 65, 247, 66, 67, 68, 69, 70, 190,
918 371, 372, 383, 373, 153, 99, 72, 73, 74, 75,
919 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
925#define YYPACT_NINF -361
928 -361, 344, -361, -90, 1923, -361, -361, 2003, -81, -361,
929 -361, -361, -29, -23, -14, 18, 23, 38, 44, 47,
930 2083, 2163, 2243, 2323, 13, 1923, -59, 1923, 50, -361,
931 1923, -361, -361, -361, -361, -57, 52, 55, -361, -361,
932 -30, 57, 59, 7, 69, -361, 58, 77, 2403, 100,
933 100, 1923, 1923, -361, 1923, 1923, -361, -361, -361, 76,
934 -361, 6, -74, 1336, 1923, 1923, -361, 1923, 62, -70,
935 -361, 2483, -361, -361, -361, -361, 97, -361, 1923, -361,
936 -361, 1923, -361, -361, -361, -361, -361, -361, -361, -361,
937 -361, 106, -81, 108, 111, 130, 147, -361, 9, 155,
938 1923, 146, 1336, -8, 2563, 1923, 1923, 1923, 1923, 1923,
939 1923, 1923, 1443, 1923, 222, 1523, 358, 1923, 597, 1603,
940 755, 161, -361, 180, 165, -361, 26, 1683, 1336, 15,
941 1923, -361, -361, -361, -361, 201, 1923, 209, 1763, 2003,
942 1336, 189, -361, -361, 9, -27, -71, 137, -361, 1923,
943 1843, -361, 1923, -361, 1923, 1923, -361, 1923, -361, 1923,
944 1923, 1923, 1923, 1923, 1923, 1923, 1923, 1923, 162, 213,
945 180, 219, 1923, -361, -361, 1923, 66, 1923, 425, 1336,
946 1923, 1923, 1523, 1923, 1603, 1923, 611, -361, 1923, 634,
947 200, 649, 664, 679, 372, 440, 708, 469, -361, -62,
948 776, -361, -61, 805, -361, -52, -361, -361, -16, 74,
949 94, 102, 113, 117, -361, 19, 123, 232, -361, 820,
950 1923, 245, 835, -361, -361, -43, -361, -361, -361, -361,
951 -361, -42, 1336, 256, 191, 191, 1377, 5, 5, 9,
952 484, -2, 1351, 5, -361, 1923, -361, -361, 1923, -361,
953 890, 499, 1923, 235, 2563, 611, 776, -40, 805, -39,
954 499, -361, 850, -361, 2563, -361, 1923, 1923, 1923, -361,
955 1923, -361, 1923, 1923, -361, -361, -361, -361, -361, -361,
956 -361, -361, -361, -361, -361, -361, 1169, -361, -361, -361,
957 2643, 873, 248, -48, -361, -361, -361, 1923, 947, 947,
958 1923, -361, 970, 12, 1336, 218, -361, -361, 1923, 224,
959 985, 1000, 1015, 1044, 514, 537, 225, 226, 227, 228,
960 231, 233, 236, 136, 166, 170, 173, 198, 1112, -361,
961 -361, -361, -361, 1141, -361, -361, 1156, 241, 1923, 2563,
962 -38, -65, -361, 1923, -361, 1923, 1923, -361, 1923, -361,
963 -361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
964 -361, -361, -361, -361, 1923, 1923, -26, 243, -361, -361,
965 250, 223, -361, 238, 1171, 1186, 1209, 1283, 1306, 1321,
966 -361, -65, 246, 239, 1923, -361, -361, -361, -361, -361,
967 -361, -361, -361, 250, -361, -31, -361, -361
973 -361, -361, -361, -361, -361, -361, -361, 72, -1, 25,
974 -361, -361, -361, -256, -361, -361, 336, 302, 67, -251,
975 -361, -360, -37, -28, -68, 1, -361, -361, -361, -361,
976 -361, -361, -361, -361, -361, -361, -361, -361, -361, -361,
977 -361, -361, -361, -361
984#define YYTABLE_NINF -155
987 62, 174, 71, 305, 171, 156, 369, 90, 158, 124,
988 382, 129, 156, 309, 151, 158, 156, 149, 151, 158,
989 104, 331, 152, 149, 123, 152, 172, 173, 332, 98,
990 149, 227, 102, 382, 152, 152, 370, 149, 125, 132,
991 275, 277, 334, 335, 152, 102, 102, 102, 102, 71,
992 279, 145, 102, 152, 152, 128, 152, 152, 152, 294,
993 295, 187, 306, 307, 368, 152, 170, 226, 380, 152,
994 152, 397, 105, 140, 171, 135, 144, 149, 106, 101,
995 147, 121, 122, 217, 218, 180, 280, 107, 367, 168,
996 169, 163, 114, 116, 118, 120, 102, 162, 163, 126,
997 164, 167, 163, 102, 164, 338, 179, 150, 167, -154,
998 254, 199, 167, 150, 202, 286, 142, 143, 205, 108,
999 150, 287, -133, -133, 109, 186, 137, 150, 216, 189,
1000 191, 192, 193, 194, 195, 196, 197, 225, 200, 110,
1001 154, 155, 203, 176, 156, 111, 157, 158, 112, 231,
1002 178, 127, 102, 130, -110, 219, 131, 149, 133, 252,
1003 134, 222, -110, -110, 102, 154, 155, 150, 31, 156,
1004 136, 157, 158, 148, 102, 104, 281, 232, 138, 233,
1005 234, 257, 235, 259, 236, 237, 238, 239, 240, 241,
1006 242, 243, 102, 177, 154, 181, 282, 102, 156, 215,
1007 251, 158, 102, 182, 283, 255, 256, 180, 258, 181,
1008 260, 101, 182, 262, 183, 284, 154, 155, 184, 285,
1009 156, 229, 157, 158, 185, 288, 159, 160, 161, 162,
1010 163, 183, 164, 149, -112, 165, 166, 105, 357, 244,
1011 167, 228, -112, -112, 250, 291, 149, 150, 184, 253,
1012 245, 159, 160, 161, 162, 163, 185, 164, 206, -155,
1013 165, 166, 207, 156, 246, 167, 158, 108, 358, 221,
1014 298, 109, 359, 299, 111, 360, 152, 302, 223, 304,
1015 159, 160, 161, 162, 163, 172, 164, 322, 249, 304,
1016 166, 310, 311, 312, 167, 313, 264, 314, 315, 112,
1017 361, 289, 159, 160, 161, 162, 163, 340, 164, 248,
1018 -105, 165, 166, 292, 339, 328, 167, 330, -105, -105,
1019 341, 369, 333, 150, 384, 336, 303, 350, 351, 352,
1020 353, -134, -134, 354, 365, 355, 150, 366, 356, 381,
1021 385, 394, 393, 103, 2, 3, 160, 161, 162, 163,
1022 141, 164, 4, 392, 0, 166, 396, 0, 5, 167,
1023 6, 7, 8, 0, 304, 0, 0, 9, 374, 149,
1024 375, 376, 10, 377, 0, 154, 155, 0, 11, 156,
1025 0, 157, 158, 395, 0, 0, 0, 0, 0, 378,
1026 379, 0, 12, 13, 14, 15, 16, 17, 18, 19,
1027 20, 21, 22, 23, 24, 25, 26, 27, 0, 28,
1028 29, 30, 31, 0, 32, 33, 34, 35, 36, 37,
1029 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1030 48, 49, 0, 50, 0, 51, 149, 52, 0, 0,
1031 0, 53, 0, 154, 155, 54, -106, 156, 55, 157,
1032 158, 0, 0, 0, -106, -106, 0, 0, 0, 150,
1033 0, 159, 160, 161, 162, 163, 0, 164, 268, 0,
1034 165, 166, 154, 155, 269, 167, 156, 0, 157, 158,
1035 0, 0, 0, 0, 0, 0, 0, 154, 155, 0,
1036 0, 156, 0, 157, 158, 0, 0, 0, 0, 0,
1037 0, 0, 154, 155, 0, 0, 156, 0, 157, 158,
1038 0, 0, 0, 151, 0, 0, 0, 154, 155, 0,
1039 0, 156, -153, 157, 158, 0, 150, 0, 0, 159,
1040 160, 161, 162, 163, 0, 164, 270, 0, 165, 166,
1041 154, 155, 271, 167, 156, 0, 157, 158, 0, 0,
1042 0, 0, 0, 0, 0, 0, 0, 0, 159, 160,
1043 161, 162, 163, 0, 164, 273, 0, 165, 166, 0,
1044 0, 274, 167, 159, 160, 161, 162, 163, 296, 164,
1045 297, 0, 165, 166, 0, 0, 0, 167, 159, 160,
1046 161, 162, 163, 0, 164, 300, 0, 165, 166, 0,
1047 0, 301, 167, 159, 160, 161, 162, 163, 149, 164,
1048 346, 0, 165, 166, 154, 155, 347, 167, 156, 0,
1049 157, 158, 0, 0, 0, 0, 159, 160, 161, 162,
1050 163, 0, 164, 348, 0, 165, 166, 154, 155, 349,
1051 167, 156, 0, 157, 158, 0, 0, 0, 0, 0,
1052 0, 0, 154, 155, 0, 0, 156, 0, 157, 158,
1053 0, 0, 0, 0, 0, 0, 0, 154, 155, 0,
1054 0, 156, 0, 157, 158, 0, 0, 0, 0, 0,
1055 0, 0, 154, 155, 0, -107, 156, 0, 157, 158,
1056 0, 0, 0, -107, -107, 0, 0, 0, 150, 0,
1057 159, 160, 161, 162, 163, 0, 164, 0, 0, 165,
1058 166, 154, 155, 261, 167, 156, 0, 157, 158, 0,
1059 0, 0, 0, 159, 160, 161, 162, 163, 0, 164,
1060 0, 0, 165, 166, 0, 0, 263, 167, 159, 160,
1061 161, 162, 163, 0, 164, 0, 0, 165, 166, 0,
1062 0, 265, 167, 159, 160, 161, 162, 163, 0, 164,
1063 266, 0, 165, 166, 0, 0, 149, 167, 159, 160,
1064 161, 162, 163, 0, 164, 267, 0, 165, 166, 154,
1065 155, 0, 167, 156, 0, 157, 158, 0, 0, 0,
1066 0, 0, 0, 0, 0, 0, 0, 159, 160, 161,
1067 162, 163, 0, 164, 272, 0, 165, 166, 154, 155,
1068 0, 167, 156, 0, 157, 158, 0, 0, 0, 0,
1069 0, 0, 0, 154, 155, 0, 0, 156, 0, 157,
1070 158, 0, 0, 0, 0, 0, 0, 0, 154, 155,
1071 0, 0, 156, -108, 157, 158, 0, 0, 0, 0,
1072 0, -108, -108, 154, 155, 0, 150, 156, 0, 157,
1073 158, 0, 0, 0, 0, 159, 160, 161, 162, 163,
1074 0, 164, 0, 0, 165, 166, 154, 155, 276, 167,
1075 156, 0, 157, 158, 0, 0, 0, 0, 0, 0,
1076 0, 0, 0, 0, 159, 160, 161, 162, 163, 0,
1077 164, 149, 0, 165, 166, 0, 0, 278, 167, 159,
1078 160, 161, 162, 163, 0, 164, 290, 0, 165, 166,
1079 0, 0, 0, 167, 159, 160, 161, 162, 163, 0,
1080 164, 0, 0, 165, 166, 0, 0, 293, 167, 159,
1081 160, 161, 162, 163, 0, 164, 308, 0, 165, 166,
1082 154, 155, 0, 167, 156, 0, 157, 158, 0, 0,
1083 0, 0, 159, 160, 161, 162, 163, 0, 164, 0,
1084 0, 165, 166, 154, 155, 329, 167, 156, -111, 157,
1085 158, 0, 0, 0, 0, 0, -111, -111, 154, 155,
1086 0, 150, 156, 0, 157, 158, 0, 0, 0, 0,
1087 0, 0, 0, 154, 155, 0, 0, 156, 0, 157,
1088 158, 0, 0, 0, 0, 0, 0, 0, 154, 155,
1089 0, 0, 156, 0, 157, 158, 0, 0, 0, 0,
1090 0, 0, 0, 0, 0, 0, 159, 160, 161, 162,
1091 163, 0, 164, 0, 0, 165, 166, 154, 155, 246,
1092 167, 156, 0, 157, 158, 0, 0, 0, 0, 159,
1093 160, 161, 162, 163, 337, 164, 0, 0, 165, 166,
1094 0, 0, 0, 167, 159, 160, 161, 162, 163, 0,
1095 164, 0, 0, 165, 166, 0, 0, 342, 167, 159,
1096 160, 161, 162, 163, 0, 164, 343, 0, 165, 166,
1097 0, 0, 0, 167, 159, 160, 161, 162, 163, 0,
1098 164, 0, 0, 165, 166, 154, 155, 344, 167, 156,
1099 0, 157, 158, 0, 0, 0, 0, 0, 0, 0,
1100 0, 0, 0, 159, 160, 161, 162, 163, 0, 164,
1101 345, 0, 165, 166, 154, 155, 0, 167, 156, 0,
1102 157, 158, 0, 0, 0, 0, 0, 0, 0, 154,
1103 155, 0, 0, 156, 0, 157, 158, 0, 0, 0,
1104 0, 0, 0, 0, 154, 155, 0, 0, 156, 0,
1105 157, 158, 0, 5, 0, 6, 316, 317, 0, 154,
1106 155, 0, 9, 156, 0, 157, 158, 10, 0, 0,
1107 0, 159, 160, 161, 162, 163, 0, 164, 0, 0,
1108 165, 166, 154, 155, 362, 167, 156, 0, 157, 158,
1109 0, 0, 0, 0, 0, 318, 319, 320, 321, 0,
1110 159, 160, 161, 162, 163, 363, 164, 0, 0, 165,
1111 166, 0, 0, 0, 167, 159, 160, 161, 162, 163,
1112 0, 164, 364, 0, 165, 166, 0, 0, 0, 167,
1113 159, 160, 161, 162, 163, 0, 164, 0, 0, 165,
1114 166, 0, 0, 386, 167, 159, 160, 161, 162, 163,
1115 0, 164, 0, 0, 165, 166, 154, 155, 387, 167,
1116 156, 0, 157, 158, 0, 0, 0, 0, 159, 160,
1117 161, 162, 163, 0, 164, 0, 0, 165, 166, 154,
1118 155, 388, 167, 156, 0, 157, 158, 0, 0, 0,
1119 0, 0, 0, 0, 154, 155, 0, 0, 156, 0,
1120 157, 158, 0, 0, 0, 0, 0, 0, 0, 154,
1121 155, 0, 0, 156, 0, 157, 158, 0, 0, 0,
1122 0, 0, 0, 0, 154, 155, 0, 0, 156, 0,
1123 157, 158, 0, 0, 0, 0, 0, 0, 0, 0,
1124 0, 0, 159, 160, 161, 162, 163, 0, 164, 0,
1125 154, 165, 166, 0, 156, 389, 167, 158, 0, 0,
1126 0, 0, 0, 0, 0, 159, 160, 161, 162, 163,
1127 0, 164, 0, 0, 165, 166, 0, 0, 390, 167,
1128 159, 160, 161, 162, 163, 391, 164, 0, 0, 165,
1129 166, 0, 0, 0, 167, 159, 160, 161, 162, 163,
1130 0, 164, 0, 0, 165, 166, 0, 0, 0, 167,
1131 159, 160, 161, 162, 163, 0, 164, 0, 0, 0,
1132 166, 4, 0, 0, 167, 0, 0, 5, 0, 6,
1133 91, 92, 0, 0, 0, 0, 9, 160, 161, 162,
1134 163, 10, 164, 0, 0, 0, 166, 0, 0, 0,
1135 167, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1136 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1137 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1138 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1139 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1140 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1141 91, 92, 0, 0, 54, 198, 9, 55, 0, 0,
1142 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1143 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1144 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1145 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1146 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1147 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1148 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1149 91, 92, 0, 0, 54, 201, 9, 55, 0, 0,
1150 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1151 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1152 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1153 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1154 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1155 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1156 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1157 208, 209, 0, 0, 54, 204, 9, 55, 0, 0,
1158 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1160 0, 12, 13, 14, 15, 16, 17, 18, 19, 210,
1161 211, 212, 213, 0, 0, 0, 0, 0, 0, 0,
1162 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1163 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1164 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1165 91, 92, 0, 0, 54, 214, 9, 55, 0, 0,
1166 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1167 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1168 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1169 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1170 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1171 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1172 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1173 91, 92, 0, 0, 54, 224, 9, 55, 0, 0,
1174 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1176 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1177 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1178 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1179 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1180 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1181 91, 92, 0, 0, 54, 230, 9, 55, 0, 0,
1182 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1183 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1184 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1185 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1186 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1187 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1188 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1189 91, 92, 0, 0, 54, 0, 9, 55, 0, 0,
1190 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1191 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1192 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1193 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1194 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1195 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1196 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1197 91, 92, 0, 0, 100, 0, 9, 55, 0, 0,
1198 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1199 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1200 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1201 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1202 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1203 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1204 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1205 91, 92, 0, 0, 113, 0, 9, 55, 0, 0,
1206 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1207 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1208 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1209 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1210 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1211 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1212 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1213 91, 92, 0, 0, 115, 0, 9, 55, 0, 0,
1214 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1215 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1216 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1217 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1218 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1219 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1220 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1221 91, 92, 0, 0, 117, 0, 9, 55, 0, 0,
1222 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1223 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1224 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1225 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1226 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1227 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1228 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1229 139, 92, 0, 0, 119, 0, 9, 55, 0, 0,
1230 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1231 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1232 0, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1233 21, 22, 23, 0, 0, 0, 0, 0, 0, 0,
1234 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1235 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1236 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1237 91, 92, 0, 0, 54, 0, 9, 55, 0, 0,
1238 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1239 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1240 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1241 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1242 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1243 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1244 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1245 91, 92, 0, 0, 175, 0, 9, 55, 0, 0,
1246 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1247 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1248 0, 12, 13, 14, 15, 16, 17, 18, 19, 93,
1249 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1250 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1251 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1252 97, 4, 0, 0, 51, 0, 52, 5, 0, 6,
1253 91, 92, 0, 0, 188, 0, 9, 55, 0, 0,
1254 0, 10, 0, 0, 0, 0, 0, 0, 0, 0,
1255 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1256 0, 323, 13, 14, 324, 325, 17, 326, 327, 93,
1257 94, 95, 96, 0, 0, 0, 0, 0, 0, 0,
1258 0, 31, 0, 32, 33, 34, 0, 36, 37, 0,
1259 0, 0, 41, 42, 0, 0, 0, 0, 0, 0,
1260 97, 0, 0, 0, 51, 0, 52, 0, 0, 0,
1261 0, 0, 0, 0, 54, 0, 0, 55
1266 1, 69, 1, 254, 12, 7, 71, 97, 10, 68,
1267 370, 68, 7, 264, 88, 10, 7, 11, 88, 10,
1268 101, 69, 96, 11, 25, 96, 96, 97, 76, 4,
1269 11, 102, 7, 393, 96, 96, 101, 11, 97, 69,
1270 102, 102, 298, 299, 96, 20, 21, 22, 23, 48,
1271 102, 52, 27, 96, 96, 30, 96, 96, 96, 102,
1272 102, 69, 102, 102, 102, 96, 67, 94, 94, 96,
1273 96, 102, 101, 48, 12, 68, 51, 11, 101, 7,
1274 55, 68, 69, 68, 69, 101, 102, 101, 339, 64,
1275 65, 93, 20, 21, 22, 23, 71, 92, 93, 27,
1276 95, 103, 93, 78, 95, 93, 81, 101, 103, 97,
1277 178, 112, 103, 101, 115, 96, 49, 50, 119, 101,
1278 101, 102, 96, 97, 101, 100, 68, 101, 127, 104,
1279 105, 106, 107, 108, 109, 110, 111, 138, 113, 101,
1280 3, 4, 117, 71, 7, 101, 9, 10, 101, 150,
1281 78, 101, 127, 101, 88, 130, 101, 11, 101, 93,
1282 101, 136, 96, 97, 139, 3, 4, 101, 68, 7,
1283 101, 9, 10, 97, 149, 101, 102, 152, 101, 154,
1284 155, 182, 157, 184, 159, 160, 161, 162, 163, 164,
1285 165, 166, 167, 96, 3, 101, 102, 172, 7, 127,
1286 175, 10, 177, 101, 102, 180, 181, 101, 183, 101,
1287 185, 139, 101, 188, 101, 102, 3, 4, 101, 102,
1288 7, 149, 9, 10, 101, 102, 89, 90, 91, 92,
1289 93, 101, 95, 11, 88, 98, 99, 101, 102, 167,
1290 103, 104, 96, 97, 172, 220, 11, 101, 101, 177,
1291 88, 89, 90, 91, 92, 93, 101, 95, 97, 3,
1292 98, 99, 97, 7, 102, 103, 10, 101, 102, 68,
1293 245, 101, 102, 248, 101, 102, 96, 252, 69, 254,
1294 89, 90, 91, 92, 93, 96, 95, 286, 69, 264,
1295 99, 266, 267, 268, 103, 270, 96, 272, 273, 101,
1296 102, 69, 89, 90, 91, 92, 93, 308, 95, 96,
1297 88, 98, 99, 68, 96, 290, 103, 69, 96, 97,
1298 96, 71, 297, 101, 101, 300, 254, 102, 102, 102,
1299 102, 96, 97, 102, 93, 102, 101, 338, 102, 96,
1300 102, 102, 96, 7, 0, 1, 90, 91, 92, 93,
1301 48, 95, 8, 381, -1, 99, 393, -1, 14, 103,
1302 16, 17, 18, -1, 339, -1, -1, 23, 343, 11,
1303 345, 346, 28, 348, -1, 3, 4, -1, 34, 7,
1304 -1, 9, 10, 384, -1, -1, -1, -1, -1, 364,
1305 365, -1, 48, 49, 50, 51, 52, 53, 54, 55,
1306 56, 57, 58, 59, 60, 61, 62, 63, -1, 65,
1307 66, 67, 68, -1, 70, 71, 72, 73, 74, 75,
1308 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
1309 86, 87, -1, 89, -1, 91, 11, 93, -1, -1,
1310 -1, 97, -1, 3, 4, 101, 88, 7, 104, 9,
1311 10, -1, -1, -1, 96, 97, -1, -1, -1, 101,
1312 -1, 89, 90, 91, 92, 93, -1, 95, 96, -1,
1313 98, 99, 3, 4, 102, 103, 7, -1, 9, 10,
1314 -1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1315 -1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1316 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1317 -1, -1, -1, 88, -1, -1, -1, 3, 4, -1,
1318 -1, 7, 97, 9, 10, -1, 101, -1, -1, 89,
1319 90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
1320 3, 4, 102, 103, 7, -1, 9, 10, -1, -1,
1321 -1, -1, -1, -1, -1, -1, -1, -1, 89, 90,
1322 91, 92, 93, -1, 95, 96, -1, 98, 99, -1,
1323 -1, 102, 103, 89, 90, 91, 92, 93, 94, 95,
1324 96, -1, 98, 99, -1, -1, -1, 103, 89, 90,
1325 91, 92, 93, -1, 95, 96, -1, 98, 99, -1,
1326 -1, 102, 103, 89, 90, 91, 92, 93, 11, 95,
1327 96, -1, 98, 99, 3, 4, 102, 103, 7, -1,
1328 9, 10, -1, -1, -1, -1, 89, 90, 91, 92,
1329 93, -1, 95, 96, -1, 98, 99, 3, 4, 102,
1330 103, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1331 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1332 -1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1333 -1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1334 -1, -1, 3, 4, -1, 88, 7, -1, 9, 10,
1335 -1, -1, -1, 96, 97, -1, -1, -1, 101, -1,
1336 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
1337 99, 3, 4, 102, 103, 7, -1, 9, 10, -1,
1338 -1, -1, -1, 89, 90, 91, 92, 93, -1, 95,
1339 -1, -1, 98, 99, -1, -1, 102, 103, 89, 90,
1340 91, 92, 93, -1, 95, -1, -1, 98, 99, -1,
1341 -1, 102, 103, 89, 90, 91, 92, 93, -1, 95,
1342 96, -1, 98, 99, -1, -1, 11, 103, 89, 90,
1343 91, 92, 93, -1, 95, 96, -1, 98, 99, 3,
1344 4, -1, 103, 7, -1, 9, 10, -1, -1, -1,
1345 -1, -1, -1, -1, -1, -1, -1, 89, 90, 91,
1346 92, 93, -1, 95, 96, -1, 98, 99, 3, 4,
1347 -1, 103, 7, -1, 9, 10, -1, -1, -1, -1,
1348 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1349 10, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1350 -1, -1, 7, 88, 9, 10, -1, -1, -1, -1,
1351 -1, 96, 97, 3, 4, -1, 101, 7, -1, 9,
1352 10, -1, -1, -1, -1, 89, 90, 91, 92, 93,
1353 -1, 95, -1, -1, 98, 99, 3, 4, 102, 103,
1354 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1355 -1, -1, -1, -1, 89, 90, 91, 92, 93, -1,
1356 95, 11, -1, 98, 99, -1, -1, 102, 103, 89,
1357 90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
1358 -1, -1, -1, 103, 89, 90, 91, 92, 93, -1,
1359 95, -1, -1, 98, 99, -1, -1, 102, 103, 89,
1360 90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
1361 3, 4, -1, 103, 7, -1, 9, 10, -1, -1,
1362 -1, -1, 89, 90, 91, 92, 93, -1, 95, -1,
1363 -1, 98, 99, 3, 4, 102, 103, 7, 88, 9,
1364 10, -1, -1, -1, -1, -1, 96, 97, 3, 4,
1365 -1, 101, 7, -1, 9, 10, -1, -1, -1, -1,
1366 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1367 10, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1368 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1369 -1, -1, -1, -1, -1, -1, 89, 90, 91, 92,
1370 93, -1, 95, -1, -1, 98, 99, 3, 4, 102,
1371 103, 7, -1, 9, 10, -1, -1, -1, -1, 89,
1372 90, 91, 92, 93, 94, 95, -1, -1, 98, 99,
1373 -1, -1, -1, 103, 89, 90, 91, 92, 93, -1,
1374 95, -1, -1, 98, 99, -1, -1, 102, 103, 89,
1375 90, 91, 92, 93, -1, 95, 96, -1, 98, 99,
1376 -1, -1, -1, 103, 89, 90, 91, 92, 93, -1,
1377 95, -1, -1, 98, 99, 3, 4, 102, 103, 7,
1378 -1, 9, 10, -1, -1, -1, -1, -1, -1, -1,
1379 -1, -1, -1, 89, 90, 91, 92, 93, -1, 95,
1380 96, -1, 98, 99, 3, 4, -1, 103, 7, -1,
1381 9, 10, -1, -1, -1, -1, -1, -1, -1, 3,
1382 4, -1, -1, 7, -1, 9, 10, -1, -1, -1,
1383 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1384 9, 10, -1, 14, -1, 16, 17, 18, -1, 3,
1385 4, -1, 23, 7, -1, 9, 10, 28, -1, -1,
1386 -1, 89, 90, 91, 92, 93, -1, 95, -1, -1,
1387 98, 99, 3, 4, 102, 103, 7, -1, 9, 10,
1388 -1, -1, -1, -1, -1, 56, 57, 58, 59, -1,
1389 89, 90, 91, 92, 93, 94, 95, -1, -1, 98,
1390 99, -1, -1, -1, 103, 89, 90, 91, 92, 93,
1391 -1, 95, 96, -1, 98, 99, -1, -1, -1, 103,
1392 89, 90, 91, 92, 93, -1, 95, -1, -1, 98,
1393 99, -1, -1, 102, 103, 89, 90, 91, 92, 93,
1394 -1, 95, -1, -1, 98, 99, 3, 4, 102, 103,
1395 7, -1, 9, 10, -1, -1, -1, -1, 89, 90,
1396 91, 92, 93, -1, 95, -1, -1, 98, 99, 3,
1397 4, 102, 103, 7, -1, 9, 10, -1, -1, -1,
1398 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1399 9, 10, -1, -1, -1, -1, -1, -1, -1, 3,
1400 4, -1, -1, 7, -1, 9, 10, -1, -1, -1,
1401 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1402 9, 10, -1, -1, -1, -1, -1, -1, -1, -1,
1403 -1, -1, 89, 90, 91, 92, 93, -1, 95, -1,
1404 3, 98, 99, -1, 7, 102, 103, 10, -1, -1,
1405 -1, -1, -1, -1, -1, 89, 90, 91, 92, 93,
1406 -1, 95, -1, -1, 98, 99, -1, -1, 102, 103,
1407 89, 90, 91, 92, 93, 94, 95, -1, -1, 98,
1408 99, -1, -1, -1, 103, 89, 90, 91, 92, 93,
1409 -1, 95, -1, -1, 98, 99, -1, -1, -1, 103,
1410 89, 90, 91, 92, 93, -1, 95, -1, -1, -1,
1411 99, 8, -1, -1, 103, -1, -1, 14, -1, 16,
1412 17, 18, -1, -1, -1, -1, 23, 90, 91, 92,
1413 93, 28, 95, -1, -1, -1, 99, -1, -1, -1,
1414 103, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1415 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1416 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1417 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1418 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1419 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1420 17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
1421 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1422 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1423 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1424 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1425 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1426 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1427 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1428 17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
1429 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1430 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1431 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1432 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1433 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1434 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1435 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1436 17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
1437 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1438 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1439 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1440 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1441 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1442 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1443 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1444 17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
1445 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1446 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1447 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1448 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1449 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1450 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1451 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1452 17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
1453 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1454 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1455 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1456 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1457 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1458 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1459 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1460 17, 18, -1, -1, 101, 102, 23, 104, -1, -1,
1461 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1462 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1463 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1464 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1465 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1466 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1467 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1468 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1469 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1470 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1471 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1472 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1473 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1474 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1475 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1476 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1477 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1478 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1479 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1480 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1481 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1482 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1483 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1484 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1485 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1486 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1487 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1488 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1489 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1490 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1491 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1492 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1493 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1494 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1495 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1496 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1497 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1498 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1499 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1500 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1501 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1502 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1503 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1504 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1505 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1506 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1507 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1508 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1509 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1510 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1511 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1512 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1513 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1514 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1515 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1516 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1517 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1518 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1519 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1520 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1521 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1522 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1523 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1524 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1525 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1526 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1527 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1528 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1529 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1530 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1531 87, 8, -1, -1, 91, -1, 93, 14, -1, 16,
1532 17, 18, -1, -1, 101, -1, 23, 104, -1, -1,
1533 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
1534 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1535 -1, 48, 49, 50, 51, 52, 53, 54, 55, 56,
1536 57, 58, 59, -1, -1, -1, -1, -1, -1, -1,
1537 -1, 68, -1, 70, 71, 72, -1, 74, 75, -1,
1538 -1, -1, 79, 80, -1, -1, -1, -1, -1, -1,
1539 87, -1, -1, -1, 91, -1, 93, -1, -1, -1,
1540 -1, -1, -1, -1, 101, -1, -1, 104
1547 0, 106, 0, 1, 8, 14, 16, 17, 18, 23,
1548 28, 34, 48, 49, 50, 51, 52, 53, 54, 55,
1549 56, 57, 58, 59, 60, 61, 62, 63, 65, 66,
1550 67, 68, 70, 71, 72, 73, 74, 75, 76, 77,
1551 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
1552 89, 91, 93, 97, 101, 104, 107, 108, 109, 110,
1553 111, 112, 113, 114, 116, 117, 119, 120, 121, 122,
1554 123, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1555 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1556 97, 17, 18, 56, 57, 58, 59, 87, 114, 130,
1557 101, 112, 114, 121, 101, 101, 101, 101, 101, 101,
1558 101, 101, 101, 101, 112, 101, 112, 101, 112, 101,
1559 112, 68, 69, 113, 68, 97, 112, 101, 114, 68,
1560 101, 101, 69, 101, 101, 68, 101, 68, 101, 17,
1561 114, 122, 123, 123, 114, 113, 113, 114, 97, 11,
1562 101, 88, 96, 129, 3, 4, 7, 9, 10, 89,
1563 90, 91, 92, 93, 95, 98, 99, 103, 114, 114,
1564 113, 12, 96, 97, 129, 101, 112, 96, 112, 114,
1565 101, 101, 101, 101, 101, 101, 114, 69, 101, 114,
1566 124, 114, 114, 114, 114, 114, 114, 114, 102, 113,
1567 114, 102, 113, 114, 102, 113, 97, 97, 17, 18,
1568 56, 57, 58, 59, 102, 112, 130, 68, 69, 114,
1569 115, 68, 114, 69, 102, 113, 94, 102, 104, 112,
1570 102, 113, 114, 114, 114, 114, 114, 114, 114, 114,
1571 114, 114, 114, 114, 112, 88, 102, 118, 96, 69,
1572 112, 114, 93, 112, 129, 114, 114, 113, 114, 113,
1573 114, 102, 114, 102, 96, 102, 96, 96, 96, 102,
1574 96, 102, 96, 96, 102, 102, 102, 102, 102, 102,
1575 102, 102, 102, 102, 102, 102, 96, 102, 102, 69,
1576 96, 114, 68, 102, 102, 102, 94, 96, 114, 114,
1577 96, 102, 114, 112, 114, 124, 102, 102, 96, 124,
1578 114, 114, 114, 114, 114, 114, 17, 18, 56, 57,
1579 58, 59, 130, 48, 51, 52, 54, 55, 114, 102,
1580 69, 69, 76, 114, 118, 118, 114, 94, 93, 96,
1581 113, 96, 102, 96, 102, 96, 96, 102, 96, 102,
1582 102, 102, 102, 102, 102, 102, 102, 102, 102, 102,
1583 102, 102, 102, 94, 96, 93, 113, 124, 102, 71,
1584 101, 125, 126, 128, 114, 114, 114, 114, 114, 114,
1585 94, 96, 126, 127, 101, 102, 102, 102, 102, 102,
1586 102, 94, 128, 96, 102, 113, 127, 102
1589#define yyerrok (yyerrstatus = 0)
1590#define yyclearin (yychar = YYEMPTY)
1594#define YYACCEPT goto yyacceptlab
1595#define YYABORT goto yyabortlab
1596#define YYERROR goto yyerrorlab
1606#define YYFAIL goto yyerrlab
1614#define YYRECOVERING() (!!yyerrstatus)
1616#define YYBACKUP(Token, Value) \
1618 if (yychar == YYEMPTY && yylen == 1) \
1622 yytoken = YYTRANSLATE (yychar); \
1628 yyerror (YY_("syntax error: cannot back up")); \
1635#define YYERRCODE 256
1642#define YYRHSLOC(Rhs, K) ((Rhs)[K])
1643#ifndef YYLLOC_DEFAULT
1644# define YYLLOC_DEFAULT(Current, Rhs, N) \
1648 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1649 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1650 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1651 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1655 (Current).first_line = (Current).last_line = \
1656 YYRHSLOC (Rhs, 0).last_line; \
1657 (Current).first_column = (Current).last_column = \
1658 YYRHSLOC (Rhs, 0).last_column; \
1668#ifndef YY_LOCATION_PRINT
1669# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
1670# define YY_LOCATION_PRINT(File, Loc) \
1671 fprintf (File, "%d.%d-%d.%d", \
1672 (Loc).first_line, (Loc).first_column, \
1673 (Loc).last_line, (Loc).last_column)
1675# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1683# define YYLEX yylex (&yylval, YYLEX_PARAM)
1685# define YYLEX yylex (&yylval)
1693# define YYFPRINTF fprintf
1696# define YYDPRINTF(Args) \
1702# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1706 YYFPRINTF (stderr, "%s ", Title); \
1707 yy_symbol_print (stderr, \
1709 YYFPRINTF (stderr, "\n"); \
1719#if (defined __STDC__ || defined __C99__FUNC__ \
1720 || defined __cplusplus || defined _MSC_VER)
1728 YYSTYPE const *
const yyvaluep;
1735 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1751#if (defined __STDC__ || defined __C99__FUNC__ \
1752 || defined __cplusplus || defined _MSC_VER)
1760 YYSTYPE const *
const yyvaluep;
1777#if (defined __STDC__ || defined __C99__FUNC__ \
1778 || defined __cplusplus || defined _MSC_VER)
1789 for (; yybottom <= yytop; yybottom++)
1791 int yybot = *yybottom;
1797# define YY_STACK_PRINT(Bottom, Top) \
1800 yy_stack_print ((Bottom), (Top)); \
1808#if (defined __STDC__ || defined __C99__FUNC__ \
1809 || defined __cplusplus || defined _MSC_VER)
1819 int yynrhs =
yyr2[yyrule];
1821 unsigned long int yylno =
yyrline[yyrule];
1822 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1825 for (yyi = 0; yyi < yynrhs; yyi++)
1829 &(yyvsp[(yyi + 1) - (yynrhs)])
1835# define YY_REDUCE_PRINT(Rule) \
1838 yy_reduce_print (yyvsp, Rule); \
1845# define YYDPRINTF(Args)
1846# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1847# define YY_STACK_PRINT(Bottom, Top)
1848# define YY_REDUCE_PRINT(Rule)
1854# define YYINITDEPTH 200
1865# define YYMAXDEPTH 10000
1873# if defined __GLIBC__ && defined _STRING_H
1874# define yystrlen strlen
1877#if (defined __STDC__ || defined __C99__FUNC__ \
1878 || defined __cplusplus || defined _MSC_VER)
1880yystrlen (
const char *yystr)
1888 for (yylen = 0; yystr[yylen]; yylen++)
1896# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1897# define yystpcpy stpcpy
1901#if (defined __STDC__ || defined __C99__FUNC__ \
1902 || defined __cplusplus || defined _MSC_VER)
1904yystpcpy (
char *yydest,
const char *yysrc)
1907yystpcpy (yydest, yysrc)
1913 const char *yys = yysrc;
1915 while ((*yyd++ = *yys++) !=
'\0')
1932yytnamerr (
char *yyres,
const char *yystr)
1937 char const *yyp = yystr;
1944 goto do_not_strip_quotes;
1948 goto do_not_strip_quotes;
1961 do_not_strip_quotes: ;
1965 return yystrlen (yystr);
1967 return yystpcpy (yyres, yystr) - yyres;
1979yysyntax_error (
char *yyresult,
int yystate,
int yychar)
1981 int yyn =
yypact[yystate];
1991 int yysize_overflow = 0;
1992 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1993 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1999 YY_(
"syntax error, unexpected %s");
2000 YY_(
"syntax error, unexpected %s, expecting %s");
2001 YY_(
"syntax error, unexpected %s, expecting %s or %s");
2002 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s");
2003 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s");
2007 static char const yyunexpected[] =
"syntax error, unexpected %s";
2008 static char const yyexpecting[] =
", expecting %s";
2009 static char const yyor[] =
" or %s";
2010 char yyformat[
sizeof yyunexpected
2011 +
sizeof yyexpecting - 1
2012 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2013 * (
sizeof yyor - 1))];
2014 char const *yyprefix = yyexpecting;
2018 int yyxbegin = yyn < 0 ? -yyn : 0;
2021 int yychecklim =
YYLAST - yyn + 1;
2026 yyfmt = yystpcpy (yyformat, yyunexpected);
2028 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2031 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2035 yyformat[
sizeof yyunexpected - 1] =
'\0';
2038 yyarg[yycount++] =
yytname[yyx];
2039 yysize1 = yysize + yytnamerr (0,
yytname[yyx]);
2040 yysize_overflow |= (yysize1 < yysize);
2042 yyfmt = yystpcpy (yyfmt, yyprefix);
2046 yyf =
YY_(yyformat);
2047 yysize1 = yysize + yystrlen (yyf);
2048 yysize_overflow |= (yysize1 < yysize);
2051 if (yysize_overflow)
2059 char *yyp = yyresult;
2061 while ((*yyp = *yyf) !=
'\0')
2063 if (*yyp ==
'%' && yyf[1] ==
's' && yyi < yycount)
2065 yyp += yytnamerr (yyp, yyarg[yyi++]);
2086#if (defined __STDC__ || defined __C99__FUNC__ \
2087 || defined __cplusplus || defined _MSC_VER)
2114#if defined __STDC__ || defined __cplusplus
2115int yyparse (
void *YYPARSE_PARAM);
2120#if defined __STDC__ || defined __cplusplus
2136#if (defined __STDC__ || defined __C99__FUNC__ \
2137 || defined __cplusplus || defined _MSC_VER)
2143 void *YYPARSE_PARAM;
2146#if (defined __STDC__ || defined __C99__FUNC__ \
2147 || defined __cplusplus || defined _MSC_VER)
2200 char *yymsg = yymsgbuf;
2201 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
2204#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2215 YYDPRINTF ((stderr,
"Starting parse\n"));
2242 if (yyss + yystacksize - 1 <= yyssp)
2245 YYSIZE_T yysize = yyssp - yyss + 1;
2259 yyoverflow (
YY_(
"memory exhausted"),
2260 &yyss1, yysize *
sizeof (*yyssp),
2261 &yyvs1, yysize *
sizeof (*yyvsp),
2268# ifndef YYSTACK_RELOCATE
2269 goto yyexhaustedlab;
2273 goto yyexhaustedlab;
2280 union yyalloc *yyptr =
2281 (
union yyalloc *)
YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2283 goto yyexhaustedlab;
2284 YYSTACK_RELOCATE (yyss_alloc, yyss);
2285 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
2286# undef YYSTACK_RELOCATE
2293 yyssp = yyss + yysize - 1;
2294 yyvsp = yyvs + yysize - 1;
2296 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
2297 (
unsigned long int) yystacksize));
2299 if (yyss + yystacksize - 1 <= yyssp)
2303 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
2328 YYDPRINTF ((stderr,
"Reading a token: "));
2335 YYDPRINTF ((stderr,
"Now at end of input.\n"));
2399 yyval = yyvsp[1-yylen];
2408#line 322 "grammar.y"
2444#line 357 "grammar.y"
2451#line 359 "grammar.y"
2458#line 361 "grammar.y"
2467#line 365 "grammar.y"
2477#line 370 "grammar.y"
2484#line 372 "grammar.y"
2494 if ((
inerror!=3) && ((yyvsp[(1) - (2)].
i)<
UMINUS) && ((yyvsp[(1) - (2)].
i)>
' '))
2538#line 430 "grammar.y"
2545#line 433 "grammar.y"
2552#line 448 "grammar.y"
2561#line 455 "grammar.y"
2571#line 460 "grammar.y"
2573 syMake(&(yyval.lv),(yyvsp[(1) - (1)].name));
2580#line 464 "grammar.y"
2589#line 468 "grammar.y"
2591 if(
iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv),
'.', &(yyvsp[(3) - (3)].lv)))
YYERROR;
2598#line 472 "grammar.y"
2607#line 476 "grammar.y"
2609 if ((yyvsp[(1) - (4)].lv).
next==
NULL)
2612 memcpy((yyvsp[(1) - (4)].lv).
next,&(yyvsp[(3) - (4)].lv),
sizeof(
sleftv));
2615 else if ((yyvsp[(1) - (4)].lv).rtyp==
UNKNOWN)
2626#line 490 "grammar.y"
2630 memset(&(yyval.lv),0,
sizeof(
sleftv));
2632 leftv v = &(yyvsp[(2) - (3)].lv);
2637 memset(&tmp,0,
sizeof(tmp));
2641 pDelete((poly *)&(yyval.lv).data);
2642 (yyvsp[(2) - (3)].lv).CleanUp();
2647 (yyval.lv).data = (
void *)
pAdd((poly)(yyval.lv).data,
p);
2652 (yyvsp[(2) - (3)].lv).CleanUp();
2659#line 518 "grammar.y"
2661 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2662 int i = atoi((yyvsp[(1) - (1)].
name));
2666 (yyval.lv).data = (
void *)(long)
i;
2669 int l = strlen((yyvsp[(1) - (1)].
name))+2;
2675 if (strcmp(tmp,(yyvsp[(1) - (1)].
name))!=0)
2679 (yyval.lv).data = n;
2688#line 542 "grammar.y"
2690 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2691 (yyval.lv).rtyp = (yyvsp[(1) - (1)].
i);
2692 (yyval.lv).data = (yyval.lv).Data();
2699#line 548 "grammar.y"
2701 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2703 (yyval.lv).data = (yyvsp[(1) - (1)].
name);
2710#line 554 "grammar.y"
2719#line 558 "grammar.y"
2728#line 562 "grammar.y"
2737#line 566 "grammar.y"
2746#line 570 "grammar.y"
2755#line 574 "grammar.y"
2764#line 578 "grammar.y"
2773#line 582 "grammar.y"
2782#line 586 "grammar.y"
2791#line 590 "grammar.y"
2800#line 594 "grammar.y"
2809#line 598 "grammar.y"
2818#line 602 "grammar.y"
2827#line 606 "grammar.y"
2836#line 610 "grammar.y"
2845#line 614 "grammar.y"
2847 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2854#line 618 "grammar.y"
2856 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2863#line 622 "grammar.y"
2865 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2872#line 626 "grammar.y"
2874 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2881#line 630 "grammar.y"
2890#line 634 "grammar.y"
2892 int b=
iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i));
2901#line 640 "grammar.y"
2903 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2910#line 644 "grammar.y"
2919#line 648 "grammar.y"
2928#line 652 "grammar.y"
2937#line 656 "grammar.y"
2939 if (
iiARROW(&(yyval.lv),(yyvsp[(1) - (3)].name),(yyvsp[(3) - (3)].name)))
YYERROR;
2947#line 660 "grammar.y"
2948 { (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
2954#line 665 "grammar.y"
2956 leftv v = &(yyvsp[(1) - (3)].lv);
2962 memcpy(
v->
next,&((yyvsp[(3) - (3)].lv)),
sizeof(
sleftv));
2963 (yyval.lv) = (yyvsp[(1) - (3)].lv);
2970#line 681 "grammar.y"
2972 if(
iiExprArith3(&(yyval.lv),
'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv)))
YYERROR;
2979#line 685 "grammar.y"
2988#line 689 "grammar.y"
2997#line 693 "grammar.y"
3006#line 697 "grammar.y"
3015#line 701 "grammar.y"
3024#line 705 "grammar.y"
3033#line 709 "grammar.y"
3035 if (
iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), 0, &(yyvsp[(5) - (6)].lv)))
YYERROR;
3042#line 713 "grammar.y"
3044 (yyval.lv)=(yyvsp[(2) - (3)].lv);
3051#line 717 "grammar.y"
3056 {
if (
iiExprArith2(&(yyval.lv),&(yyvsp[(2) - (5)].lv),
'=',&(yyvsp[(4) - (5)].lv)))
YYERROR; }
3060 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3061 (yyval.lv).rtyp=
NONE;
3073#line 734 "grammar.y"
3075 iiTestAssume(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv));
3076 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3077 (yyval.lv).rtyp=
NONE;
3084#line 740 "grammar.y"
3095#line 746 "grammar.y"
3098 if (
siq<=0) (yyvsp[(4) - (5)].lv).Eval();
3100 (yyval.lv)=(yyvsp[(4) - (5)].lv);
3110#line 758 "grammar.y"
3121#line 766 "grammar.y"
3132#line 774 "grammar.y"
3143#line 783 "grammar.y"
3152#line 787 "grammar.y"
3161#line 791 "grammar.y"
3170#line 795 "grammar.y"
3179#line 799 "grammar.y"
3181 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3188#line 803 "grammar.y"
3197#line 807 "grammar.y"
3199 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3206#line 811 "grammar.y"
3208 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3215#line 815 "grammar.y"
3224#line 819 "grammar.y"
3233#line 823 "grammar.y"
3242#line 827 "grammar.y"
3251#line 831 "grammar.y"
3257 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3260 (yyval.lv).data = (
void *)(long)(
i == 0 ? 1 : 0);
3268#line 843 "grammar.y"
3277#line 851 "grammar.y"
3279 if ((yyvsp[(1) - (2)].lv).rtyp==0)
3281 Werror(
"`%s` is undefined",(yyvsp[(1) - (2)].lv).Fullname());
3284 else if (((yyvsp[(1) - (2)].lv).rtyp==
MODUL_CMD)
3286 && ((yyvsp[(1) - (2)].lv).e!=
NULL) && ((yyvsp[(1) - (2)].lv).e->next==
NULL))
3288 MYYERROR(
"matrix must have 2 indices");
3290 (yyval.lv) = (yyvsp[(1) - (2)].lv);
3297#line 871 "grammar.y"
3301 MYYERROR(
"string expression expected");
3303 (yyval.name) = (
char *)(yyvsp[(2) - (3)].lv).CopyD(
STRING_CMD);
3304 (yyvsp[(2) - (3)].lv).CleanUp();
3311#line 883 "grammar.y"
3313 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3321#line 888 "grammar.y"
3323 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3331#line 893 "grammar.y"
3340#line 897 "grammar.y"
3349#line 901 "grammar.y"
3369 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3391#line 938 "grammar.y"
3399 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3420#line 962 "grammar.y"
3422 int t=(yyvsp[(1) - (3)].lv).Typ();
3424 memset(&r,0,
sizeof(
sleftv));
3432 if (
iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),
myynest,t,&((yyvsp[(3) - (3)].lv).req_packhdl->idroot)))
3435 leftv v=&(yyvsp[(1) - (3)].lv);
3439 (yyval.lv)=(yyvsp[(1) - (3)].lv);
3446#line 983 "grammar.y"
3448 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3456#line 996 "grammar.y"
3458 leftv v = &(yyvsp[(2) - (5)].lv);
3464 memcpy(
v->
next,&((yyvsp[(4) - (5)].lv)),
sizeof(
sleftv));
3465 (yyval.lv) = (yyvsp[(2) - (5)].lv);
3472#line 1010 "grammar.y"
3482#line 1018 "grammar.y"
3484 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3487 (*iv)[1] = (yyvsp[(1) - (1)].i);
3489 (yyval.lv).data = (
void *)iv;
3496#line 1027 "grammar.y"
3498 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3499 leftv sl = &(yyvsp[(3) - (4)].lv);
3503 int l = 2 + slLength;
3505 (*iv)[0] = slLength;
3506 (*iv)[1] = (yyvsp[(1) - (4)].i);
3509 while ((
i<
l) && (sl!=
NULL))
3513 (*iv)[
i++] = (int)((
long)(sl->
Data()));
3522 (*iv)[
i++] = (*ivv)[ll++];
3528 (yyvsp[(3) - (4)].lv).CleanUp();
3529 MYYERROR(
"wrong type in ordering");
3534 (yyval.lv).data = (
void *)iv;
3536 (yyvsp[(3) - (4)].lv).CleanUp();
3543#line 1073 "grammar.y"
3545 (yyval.lv) = (yyvsp[(1) - (3)].lv);
3547 memcpy((yyval.lv).next,&(yyvsp[(3) - (3)].lv),
sizeof(
sleftv));
3554#line 1083 "grammar.y"
3556 (yyval.lv) = (yyvsp[(2) - (3)].lv);
3563#line 1089 "grammar.y"
3572#line 1107 "grammar.y"
3579#line 1112 "grammar.y"
3589#line 1117 "grammar.y"
3598#line 1124 "grammar.y"
3608#line 1132 "grammar.y"
3610 if (
basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
3622#line 1144 "grammar.y"
3624 leftv v=&(yyvsp[(2) - (2)].lv);
3644#line 1161 "grammar.y"
3646 leftv v=&(yyvsp[(3) - (3)].lv);
3666#line 1181 "grammar.y"
3675#line 1185 "grammar.y"
3684#line 1189 "grammar.y"
3694#line 1194 "grammar.y"
3703#line 1198 "grammar.y"
3712#line 1202 "grammar.y"
3721#line 1206 "grammar.y"
3730#line 1210 "grammar.y"
3732 list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),
"// ",
TRUE);
3733 (yyvsp[(3) - (4)].lv).CleanUp();
3740#line 1215 "grammar.y"
3744 (yyvsp[(3) - (6)].lv).CleanUp();
3751#line 1221 "grammar.y"
3755 (yyvsp[(3) - (6)].lv).CleanUp();
3762#line 1227 "grammar.y"
3766 (yyvsp[(3) - (6)].lv).CleanUp();
3773#line 1233 "grammar.y"
3777 (yyvsp[(3) - (6)].lv).CleanUp();
3784#line 1239 "grammar.y"
3788 (yyvsp[(3) - (6)].lv).CleanUp();
3795#line 1245 "grammar.y"
3799 (yyvsp[(3) - (6)].lv).CleanUp();
3806#line 1251 "grammar.y"
3810 (yyvsp[(3) - (6)].lv).CleanUp();
3817#line 1263 "grammar.y"
3826#line 1269 "grammar.y"
3833#line 1278 "grammar.y"
3835 const char *ring_name = (yyvsp[(2) - (8)].lv).
name;
3837 rInit(&(yyvsp[(4) - (8)].lv),
3838 &(yyvsp[(6) - (8)].lv),
3839 &(yyvsp[(8) - (8)].lv));
3845 &((yyvsp[(2) - (8)].lv).req_packhdl->idroot),
FALSE);
3846 (yyvsp[(2) - (8)].lv).CleanUp();
3847 if (newRingHdl!=
NULL)
3857 if (newRingHdl==
NULL)
3871#line 1311 "grammar.y"
3873 const char *ring_name = (yyvsp[(2) - (2)].lv).
name;
3876 (yyvsp[(2) - (2)].lv).CleanUp();
3883#line 1318 "grammar.y"
3893#line 1323 "grammar.y"
3898 memcpy((yyvsp[(4) - (7)].lv).
next,&(yyvsp[(6) - (7)].lv),
sizeof(
sleftv));
3899 memset(&(yyvsp[(6) - (7)].lv),0,
sizeof(
sleftv));
3908#line 1336 "grammar.y"
3918#line 1346 "grammar.y"
3921 MYYERROR(
"only inside a proc allowed");
3922 const char * n=(yyvsp[(2) - (2)].lv).Name();
3923 if (((yyvsp[(2) - (2)].lv).Typ()==
RING_CMD)
3924 && ((yyvsp[(2) - (2)].lv).rtyp==
IDHDL))
3927 if ((yyvsp[(2) - (2)].lv).e!=
NULL)
h=
rFindHdl((ring)(yyvsp[(2) - (2)].lv).Data(),
NULL);
3962 Werror(
"%s is no identifier",n);
3963 (yyvsp[(2) - (2)].lv).CleanUp();
3970 Werror(
"cannot find the name of the basering %s",n);
3971 (yyvsp[(2) - (2)].lv).CleanUp();
3974 (yyvsp[(2) - (2)].lv).CleanUp();
3978 Werror(
"%s is no name of a ring/qring",n);
3979 (yyvsp[(2) - (2)].lv).CleanUp();
3988#line 1414 "grammar.y"
3990 type_cmd(&((yyvsp[(2) - (2)].lv)));
3997#line 1418 "grammar.y"
4001 if ((yyvsp[(1) - (1)].lv).rtyp!=
COMMAND)
4004 if ((yyvsp[(1) - (1)].lv).Typ()==
UNKNOWN)
4006 if ((yyvsp[(1) - (1)].lv).
name!=
NULL)
4008 Werror(
"`%s` is undefined",(yyvsp[(1) - (1)].lv).
name);
4017 (yyvsp[(1) - (1)].lv).CleanUp(
currRing);
4025#line 1447 "grammar.y"
4043#line 1460 "grammar.y"
4065#line 1477 "grammar.y"
4079#line 1486 "grammar.y"
4089#line 1491 "grammar.y"
4099#line 1499 "grammar.y"
4102 size_t len= strlen((yyvsp[(2) - (3)].
name)) + strlen((yyvsp[(3) - (3)].
name)) + 36;
4104 snprintf(
s,len,
"whileif (!(%s)) break;\n%scontinue;\n " ,(yyvsp[(2) - (3)].
name),(yyvsp[(3) - (3)].
name));
4114#line 1512 "grammar.y"
4118 size_t len= strlen((yyvsp[(3) - (5)].
name))+strlen((yyvsp[(4) - (5)].
name))+strlen((yyvsp[(5) - (5)].
name))+36;
4120 snprintf(
s,len,
"forif (!(%s)) break;\n%s%s;\ncontinue;\n "
4121 ,(yyvsp[(3) - (5)].
name),(yyvsp[(5) - (5)].
name),(yyvsp[(4) - (5)].
name));
4126 len=strlen((yyvsp[(2) - (5)].
name)) + 3;
4128 snprintf(
s,len,
"%s;\n",(yyvsp[(2) - (5)].
name));
4137#line 1533 "grammar.y"
4143 sprintf(
IDPROC(
h)->data.s.body,
"parameter list #;\n%s;return();\n\n",(yyvsp[(3) - (3)].name));
4152#line 1543 "grammar.y"
4165 IDPROC(
h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(3) - (3)].
name))+strlen(args)+14);;
4166 sprintf(
IDPROC(
h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(3) - (3)].name));
4176#line 1562 "grammar.y"
4191 IDPROC(
h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(4) - (4)].
name))+strlen(args)+14);;
4192 sprintf(
IDPROC(
h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(4) - (4)].name));
4201#line 1585 "grammar.y"
4212#line 1591 "grammar.y"
4226#line 1603 "grammar.y"
4229 (yyvsp[(3) - (4)].lv).CleanUp();
4237#line 1609 "grammar.y"
4239 if ((yyvsp[(1) - (3)].
i)==
RETURN)
4251#line 4252 "grammar.cc"
4269 if (0 <= yystate && yystate <=
YYLAST &&
yycheck[yystate] == *yyssp)
4285#if ! YYERROR_VERBOSE
4295 if (yymsg != yymsgbuf)
4299 yymsg_alloc = yyalloc;
4303 yymsg_alloc =
sizeof yymsgbuf;
4307 if (0 < yysize && yysize <= yymsg_alloc)
4309 (void) yysyntax_error (yymsg, yystate,
yychar);
4316 goto yyexhaustedlab;
4324 if (yyerrstatus == 3)
4424#if !defined(yyoverflow) || YYERROR_VERBOSE
4442 while (yyssp != yyss)
4453 if (yymsg != yymsgbuf)
4457 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
void WerrorS(const char *s)
VAR char my_yylinebuf[80]
EXTERN_VAR char prompt_char
BOOLEAN exitBuffer(feBufferTypes typ)
void newBuffer(char *s, feBufferTypes t, procinfo *pi, int lineno)
BOOLEAN contBuffer(feBufferTypes typ)
BOOLEAN newFile(char *fname)
int iiTestConvert(int inputType, int outputType)
const char * iiTwoOps(int t)
const char * Tok2Cmdname(int tok)
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)
EXTERN_VAR omBin sleftv_bin
char * iiProcArgs(char *e, BOOLEAN withParenth)
INST_VAR sleftv iiRETURNEXPR
procinfo * iiInitSingularProcinfo(procinfov pi, const char *libname, const char *procname, int, long pos, BOOLEAN pstatic)
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)
void iiSetReturn(const leftv source)
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
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Compatibility 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)
ideal idInit(int idsize, int rank)
initialise an ideal / module
EXTERN_VAR YYSTYPE yylval
void syMake(leftv v, const char *id, package pa)
INST_VAR sleftv sLastPrinted
void syMakeMonom(leftv v, const char *id)
int name
New type name for int.
void writeRTime(const char *v)
void writeTime(const char *v)