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);
137 else Print(
"%s::%s not found\n",r->
id,nn);
167 #define YYMAXDEPTH MAX_INT_VAL
178 #define TESTSETINT(a,i) \
179 if ((a).Typ() != INT_CMD) \
181 WerrorS("no int expression"); \
184 (i) = (int)((long)(a).Data());(a).CleanUp()
186 #define MYYERROR(a) { WerrorS(a); YYERROR; }
202 && (strncmp(fmt,
"parse",5)!=0)
203 && (strncmp(fmt,
"syntax",6)!=0))
205 Werror(
"error occurred in or before %s line %d: `%s`"
213 Werror(
"expected %s-expression. type \'help %s;\'",s,s);
217 Werror(
"wrong type declaration. type \'help %s;\'",s);
241 #line 243 "grammar.cc"
249 #ifdef YYERROR_VERBOSE
250 # undef YYERROR_VERBOSE
251 # define YYERROR_VERBOSE 1
253 # define YYERROR_VERBOSE 0
257 #ifndef YYTOKEN_TABLE
258 # define YYTOKEN_TABLE 0
403 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
405 # define yystype YYSTYPE
406 # define YYSTYPE_IS_DECLARED 1
414 #line 416 "grammar.cc"
428 #elif (defined __STDC__ || defined __C99__FUNC__ \
429 || defined __cplusplus || defined _MSC_VER)
448 # ifdef __SIZE_TYPE__
449 # define YYSIZE_T __SIZE_TYPE__
450 # elif defined size_t
451 # define YYSIZE_T size_t
452 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
453 || defined __cplusplus || defined _MSC_VER)
455 # define YYSIZE_T size_t
457 # define YYSIZE_T unsigned int
461 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
464 # if defined YYENABLE_NLS && YYENABLE_NLS
466 # include <libintl.h>
467 # define YY_(msgid) dgettext ("bison-runtime", msgid)
471 # define YY_(msgid) msgid
476 #if ! defined lint || defined __GNUC__
477 # define YYUSE(e) ((void) (e))
486 #if (defined __STDC__ || defined __C99__FUNC__ \
487 || defined __cplusplus || defined _MSC_VER)
500 #if ! defined yyoverflow || YYERROR_VERBOSE
504 # ifdef YYSTACK_USE_ALLOCA
505 # if YYSTACK_USE_ALLOCA
507 # define YYSTACK_ALLOC __builtin_alloca
508 # elif defined __BUILTIN_VA_ARG_INCR
511 # define YYSTACK_ALLOC __alloca
512 # elif defined _MSC_VER
514 # define alloca _alloca
516 # define YYSTACK_ALLOC alloca
517 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
518 || defined __cplusplus || defined _MSC_VER)
528 # ifdef YYSTACK_ALLOC
530 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
531 # ifndef YYSTACK_ALLOC_MAXIMUM
536 # define YYSTACK_ALLOC_MAXIMUM 4032
539 # define YYSTACK_ALLOC YYMALLOC
540 # define YYSTACK_FREE YYFREE
541 # ifndef YYSTACK_ALLOC_MAXIMUM
542 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
544 # if (defined __cplusplus && ! defined _STDLIB_H \
545 && ! ((defined YYMALLOC || defined malloc) \
546 && (defined YYFREE || defined free)))
553 # define YYMALLOC malloc
554 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
555 || defined __cplusplus || defined _MSC_VER)
561 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
562 || defined __cplusplus || defined _MSC_VER)
570 #if (! defined yyoverflow \
571 && (! defined __cplusplus \
572 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
582 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
586 # define YYSTACK_BYTES(N) \
587 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
588 + YYSTACK_GAP_MAXIMUM)
593 # if defined __GNUC__ && 1 < __GNUC__
594 # define YYCOPY(To, From, Count) \
595 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
597 # define YYCOPY(To, From, Count) \
601 for (yyi = 0; yyi < (Count); yyi++) \
602 (To)[yyi] = (From)[yyi]; \
613 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
616 YYSIZE_T yynewbytes; \
617 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
618 Stack = &yyptr->Stack_alloc; \
619 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
620 yyptr += yynewbytes / sizeof (*yyptr); \
632 #define YYNTOKENS 150
638 #define YYNSTATES 396
642 #define YYMAXUTOK 387
644 #define YYTRANSLATE(YYX) \
645 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
650 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
651 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
652 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
653 2, 2, 2, 2, 2, 2, 2, 2, 143, 2,
654 146, 147, 2, 135, 141, 136, 148, 137, 2, 2,
655 2, 2, 2, 2, 2, 2, 2, 2, 144, 142,
656 133, 132, 134, 2, 2, 2, 2, 2, 2, 2,
657 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
658 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
659 2, 138, 2, 139, 140, 2, 149, 2, 2, 2,
660 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
661 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
662 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
663 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
664 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
665 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
666 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
667 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
668 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
669 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
670 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
671 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
672 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
673 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
674 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
675 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
676 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
677 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
678 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
679 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
680 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
681 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
682 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
683 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
684 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
685 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
686 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
687 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
688 125, 126, 127, 128, 129, 130, 131, 145
696 0, 0, 3, 4, 7, 9, 12, 15, 17, 19,
697 21, 24, 26, 28, 30, 32, 34, 36, 38, 40,
698 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
699 64, 66, 68, 72, 76, 80, 85, 89, 91, 93,
700 95, 100, 105, 110, 114, 119, 124, 128, 133, 138,
701 143, 148, 155, 162, 169, 176, 185, 194, 203, 212,
702 216, 221, 230, 235, 244, 249, 253, 257, 259, 261,
703 263, 267, 274, 279, 286, 293, 300, 307, 314, 321,
704 325, 331, 337, 338, 344, 347, 350, 352, 355, 358,
705 362, 366, 370, 374, 378, 382, 386, 390, 394, 398,
706 401, 404, 407, 410, 412, 416, 419, 422, 425, 428,
707 437, 440, 444, 447, 449, 451, 457, 459, 461, 466,
708 468, 472, 474, 478, 480, 482, 484, 486, 487, 492,
709 496, 499, 503, 506, 509, 513, 518, 523, 528, 533,
710 538, 543, 548, 553, 560, 567, 574, 581, 588, 595,
711 602, 606, 608, 617, 620, 625, 628, 630, 632, 635,
712 638, 640, 646, 649, 655, 657, 659, 663, 669, 673,
713 677, 682, 685, 688, 693
719 151, 0, -1, -1, 151, 152, -1, 153, -1, 155,
720 142, -1, 167, 142, -1, 194, -1, 127, -1, 142,
721 -1, 1, 142, -1, 189, -1, 190, -1, 154, -1,
722 191, -1, 192, -1, 176, -1, 178, -1, 179, -1,
723 104, 113, -1, 156, -1, 180, -1, 181, -1, 182,
724 -1, 193, -1, 184, -1, 185, -1, 187, -1, 188,
725 -1, 165, 158, -1, 116, -1, 166, -1, 157, 11,
726 157, -1, 159, 148, 157, -1, 157, 146, 147, -1,
727 157, 146, 158, 147, -1, 138, 158, 139, -1, 114,
728 -1, 131, -1, 168, -1, 16, 146, 159, 147, -1,
729 100, 146, 159, 147, -1, 101, 146, 158, 147, -1,
730 101, 146, 147, -1, 102, 146, 159, 147, -1, 103,
731 146, 158, 147, -1, 103, 146, 147, -1, 92, 146,
732 159, 147, -1, 95, 146, 159, 147, -1, 96, 146,
733 159, 147, -1, 98, 146, 159, 147, -1, 93, 146,
734 159, 141, 159, 147, -1, 95, 146, 159, 141, 159,
735 147, -1, 97, 146, 159, 141, 159, 147, -1, 98,
736 146, 159, 141, 159, 147, -1, 94, 146, 159, 141,
737 159, 141, 159, 147, -1, 96, 146, 159, 141, 159,
738 141, 159, 147, -1, 97, 146, 159, 141, 159, 141,
739 159, 147, -1, 98, 146, 159, 141, 159, 141, 159,
740 147, -1, 99, 146, 147, -1, 99, 146, 158, 147,
741 -1, 175, 146, 159, 141, 159, 141, 159, 147, -1,
742 175, 146, 159, 147, -1, 17, 146, 169, 141, 169,
743 141, 173, 147, -1, 17, 146, 159, 147, -1, 166,
744 12, 113, -1, 158, 141, 159, -1, 159, -1, 164,
745 -1, 157, -1, 146, 158, 147, -1, 159, 138, 159,
746 141, 159, 139, -1, 159, 138, 159, 139, -1, 118,
747 146, 159, 141, 92, 147, -1, 118, 146, 159, 141,
748 95, 147, -1, 118, 146, 159, 141, 96, 147, -1,
749 118, 146, 159, 141, 98, 147, -1, 118, 146, 159,
750 141, 99, 147, -1, 118, 146, 159, 141, 159, 147,
751 -1, 161, 159, 163, -1, 161, 159, 132, 159, 163,
752 -1, 162, 159, 141, 159, 163, -1, -1, 123, 146,
753 160, 159, 147, -1, 124, 146, -1, 119, 146, -1,
754 147, -1, 159, 10, -1, 159, 7, -1, 159, 135,
755 159, -1, 159, 136, 159, -1, 159, 137, 159, -1,
756 159, 140, 159, -1, 159, 133, 159, -1, 159, 143,
757 159, -1, 159, 9, 159, -1, 159, 4, 159, -1,
758 159, 3, 159, -1, 159, 144, 159, -1, 8, 159,
759 -1, 136, 159, -1, 167, 174, -1, 158, 132, -1,
760 115, -1, 149, 159, 149, -1, 100, 157, -1, 101,
761 157, -1, 102, 157, -1, 103, 157, -1, 175, 157,
762 138, 159, 139, 138, 159, 139, -1, 175, 157, -1,
763 167, 141, 157, -1, 16, 157, -1, 112, -1, 159,
764 -1, 146, 159, 141, 158, 147, -1, 115, -1, 170,
765 -1, 170, 146, 158, 147, -1, 171, -1, 171, 141,
766 172, -1, 171, -1, 146, 172, 147, -1, 132, -1,
767 21, -1, 15, -1, 14, -1, -1, 133, 168, 177,
768 142, -1, 106, 112, 142, -1, 106, 142, -1, 104,
769 112, 142, -1, 105, 158, -1, 107, 157, -1, 181,
770 141, 157, -1, 109, 146, 100, 147, -1, 109, 146,
771 101, 147, -1, 109, 146, 102, 147, -1, 109, 146,
772 103, 147, -1, 109, 146, 17, 147, -1, 109, 146,
773 175, 147, -1, 109, 146, 16, 147, -1, 109, 146,
774 157, 147, -1, 109, 146, 157, 141, 100, 147, -1,
775 109, 146, 157, 141, 101, 147, -1, 109, 146, 157,
776 141, 102, 147, -1, 109, 146, 157, 141, 103, 147,
777 -1, 109, 146, 157, 141, 17, 147, -1, 109, 146,
778 157, 141, 175, 147, -1, 109, 146, 157, 141, 16,
779 147, -1, 109, 146, 147, -1, 17, -1, 183, 157,
780 174, 169, 141, 169, 141, 173, -1, 183, 157, -1,
781 183, 157, 174, 157, -1, 131, 168, -1, 110, -1,
782 41, -1, 186, 159, -1, 111, 159, -1, 158, -1,
783 126, 146, 159, 147, 113, -1, 122, 113, -1, 126,
784 146, 159, 147, 120, -1, 120, -1, 121, -1, 128,
785 112, 113, -1, 125, 112, 112, 112, 113, -1, 16,
786 166, 113, -1, 117, 112, 113, -1, 117, 112, 112,
787 113, -1, 130, 167, -1, 130, 159, -1, 129, 146,
788 158, 147, -1, 129, 146, 147, -1
794 0, 364, 364, 366, 400, 401, 403, 405, 409, 414,
795 416, 467, 468, 469, 470, 471, 472, 473, 474, 478,
796 481, 482, 483, 484, 485, 486, 487, 488, 489, 492,
797 499, 504, 508, 512, 516, 520, 533, 561, 585, 591,
798 597, 601, 605, 609, 613, 617, 621, 625, 629, 633,
799 637, 641, 645, 649, 653, 657, 661, 665, 669, 673,
800 677, 683, 687, 691, 695, 699, 706, 717, 723, 728,
801 729, 730, 734, 738, 742, 746, 750, 754, 758, 762,
802 766, 783, 790, 789, 807, 815, 823, 832, 836, 840,
803 844, 848, 852, 856, 860, 864, 868, 872, 876, 880,
804 892, 899, 900, 919, 920, 932, 937, 942, 946, 950,
805 990, 1016, 1037, 1045, 1049, 1050, 1064, 1072, 1081, 1126,
806 1127, 1136, 1137, 1143, 1150, 1152, 1154, 1164, 1163, 1171,
807 1176, 1183, 1191, 1203, 1219, 1238, 1242, 1246, 1251, 1255,
808 1259, 1263, 1267, 1272, 1278, 1284, 1290, 1296, 1302, 1308,
809 1320, 1327, 1331, 1368, 1375, 1383, 1389, 1389, 1392, 1464,
810 1468, 1497, 1510, 1527, 1536, 1541, 1549, 1561, 1580, 1590,
811 1609, 1632, 1638, 1650, 1656
815 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
820 "$end",
"error",
"$undefined",
"DOTDOT",
"EQUAL_EQUAL",
"GE",
"LE",
821 "MINUSMINUS",
"NOT",
"NOTEQUAL",
"PLUSPLUS",
"COLONCOLON",
"ARROW",
822 "GRING_CMD",
"BIGINTMAT_CMD",
"INTMAT_CMD",
"PROC_CMD",
"RING_CMD",
823 "BEGIN_RING",
"IDEAL_CMD",
"MAP_CMD",
"MATRIX_CMD",
"MODUL_CMD",
824 "NUMBER_CMD",
"POLY_CMD",
"RESOLUTION_CMD",
"VECTOR_CMD",
"BETTI_CMD",
825 "COEFFS_CMD",
"COEF_CMD",
"CONTRACT_CMD",
"DEGREE_CMD",
"DEG_CMD",
826 "DIFF_CMD",
"DIM_CMD",
"DIVISION_CMD",
"ELIMINATION_CMD",
"E_CMD",
827 "FAREY_CMD",
"FETCH_CMD",
"FREEMODULE_CMD",
"KEEPRING_CMD",
828 "HILBERT_CMD",
"HOMOG_CMD",
"IMAP_CMD",
"INDEPSET_CMD",
"INTERRED_CMD",
829 "INTERSECT_CMD",
"JACOB_CMD",
"JET_CMD",
"KBASE_CMD",
"KOSZUL_CMD",
830 "LEADCOEF_CMD",
"LEADEXP_CMD",
"LEAD_CMD",
"LEADMONOM_CMD",
831 "LIFTSTD_CMD",
"LIFT_CMD",
"MAXID_CMD",
"MINBASE_CMD",
"MINOR_CMD",
832 "MINRES_CMD",
"MODULO_CMD",
"MONOM_CMD",
"MRES_CMD",
"MULTIPLICITY_CMD",
833 "ORD_CMD",
"PAR_CMD",
"PARDEG_CMD",
"PREIMAGE_CMD",
"QUOTIENT_CMD",
834 "QHWEIGHT_CMD",
"REDUCE_CMD",
"REGULARITY_CMD",
"RES_CMD",
"SBA_CMD",
835 "SIMPLIFY_CMD",
"SORTVEC_CMD",
"SRES_CMD",
"STD_CMD",
"SUBST_CMD",
836 "SYZYGY_CMD",
"VAR_CMD",
"VDIM_CMD",
"WEDGE_CMD",
"WEIGHT_CMD",
837 "VALTVARS",
"VMAXDEG",
"VMAXMULT",
"VNOETHER",
"VMINPOLY",
"END_RING",
838 "CMD_1",
"CMD_2",
"CMD_3",
"CMD_12",
"CMD_13",
"CMD_23",
"CMD_123",
839 "CMD_M",
"ROOT_DECL",
"ROOT_DECL_LIST",
"RING_DECL",
"RING_DECL_LIST",
840 "EXAMPLE_CMD",
"EXPORT_CMD",
"HELP_CMD",
"KILL_CMD",
"LIB_CMD",
841 "LISTVAR_CMD",
"SETRING_CMD",
"TYPE_CMD",
"STRINGTOK",
"BLOCKTOK",
842 "INT_CONST",
"UNKNOWN_IDENT",
"RINGVAR",
"PROC_DEF",
"APPLY",
843 "ASSUME_CMD",
"BREAK_CMD",
"CONTINUE_CMD",
"ELSE_CMD",
"EVAL",
"QUOTE",
844 "FOR_CMD",
"IF_CMD",
"SYS_BREAK",
"WHILE_CMD",
"RETURN",
"PARAMETER",
845 "SYSVAR",
"'='",
"'<'",
"'>'",
"'+'",
"'-'",
"'/'",
"'['",
"']'",
"'^'",
846 "','",
"';'",
"'&'",
"':'",
"UMINUS",
"'('",
"')'",
"'.'",
"'`'",
847 "$accept",
"lines",
"pprompt",
"flowctrl",
"example_dummy",
"command",
848 "assign",
"elemexpr",
"exprlist",
"expr",
"$@1",
"quote_start",
849 "assume_start",
"quote_end",
"expr_arithmetic",
"left_value",
850 "extendedid",
"declare_ip_variable",
"stringexpr",
"rlist",
"ordername",
851 "orderelem",
"OrderingList",
"ordering",
"cmdeq",
"mat_cmd",
"filecmd",
852 "$@2",
"helpcmd",
"examplecmd",
"exportcmd",
"killcmd",
"listcmd",
853 "ringcmd1",
"ringcmd",
"scriptcmd",
"setrings",
"setringcmd",
"typecmd",
854 "ifcmd",
"whilecmd",
"forcmd",
"proccmd",
"parametercmd",
"returncmd", 0
863 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
864 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
865 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
866 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
867 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
868 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
869 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
870 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
871 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
872 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
873 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
874 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
875 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
876 385, 386, 61, 60, 62, 43, 45, 47, 91, 93,
877 94, 44, 59, 38, 58, 387, 40, 41, 46, 96
884 0, 150, 151, 151, 152, 152, 152, 152, 152, 152,
885 152, 153, 153, 153, 153, 153, 153, 153, 153, 154,
886 155, 155, 155, 155, 155, 155, 155, 155, 155, 156,
887 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
888 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
889 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
890 157, 157, 157, 157, 157, 157, 158, 158, 159, 159,
891 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
892 159, 159, 160, 159, 161, 162, 163, 164, 164, 164,
893 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
894 164, 165, 165, 166, 166, 167, 167, 167, 167, 167,
895 167, 167, 167, 168, 169, 169, 170, 171, 171, 172,
896 172, 173, 173, 174, 175, 175, 175, 177, 176, 178,
897 178, 179, 180, 181, 181, 182, 182, 182, 182, 182,
898 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
899 182, 183, 184, 184, 184, 185, 186, 186, 187, 188,
900 188, 189, 189, 189, 189, 189, 190, 191, 192, 192,
901 192, 193, 193, 194, 194
907 0, 2, 0, 2, 1, 2, 2, 1, 1, 1,
908 2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
909 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
910 1, 1, 3, 3, 3, 4, 3, 1, 1, 1,
911 4, 4, 4, 3, 4, 4, 3, 4, 4, 4,
912 4, 6, 6, 6, 6, 8, 8, 8, 8, 3,
913 4, 8, 4, 8, 4, 3, 3, 1, 1, 1,
914 3, 6, 4, 6, 6, 6, 6, 6, 6, 3,
915 5, 5, 0, 5, 2, 2, 1, 2, 2, 3,
916 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
917 2, 2, 2, 1, 3, 2, 2, 2, 2, 8,
918 2, 3, 2, 1, 1, 5, 1, 1, 4, 1,
919 3, 1, 3, 1, 1, 1, 1, 0, 4, 3,
920 2, 3, 2, 2, 3, 4, 4, 4, 4, 4,
921 4, 4, 4, 6, 6, 6, 6, 6, 6, 6,
922 3, 1, 8, 2, 4, 2, 1, 1, 2, 2,
923 1, 5, 2, 5, 1, 1, 3, 5, 3, 3,
932 2, 0, 1, 0, 0, 126, 125, 0, 151, 124,
933 157, 0, 0, 0, 0, 0, 0, 0, 0, 0,
934 0, 0, 0, 0, 0, 0, 0, 0, 156, 0,
935 113, 37, 103, 30, 0, 0, 0, 164, 165, 0,
936 0, 0, 0, 0, 8, 0, 0, 0, 38, 0,
937 0, 0, 9, 0, 0, 3, 4, 13, 0, 20,
938 69, 160, 67, 0, 0, 68, 0, 31, 0, 39,
939 0, 16, 17, 18, 21, 22, 23, 0, 25, 26,
940 0, 27, 28, 11, 12, 14, 15, 24, 7, 10,
941 0, 0, 0, 0, 0, 0, 38, 99, 0, 0,
942 69, 0, 31, 0, 0, 0, 0, 0, 0, 0,
943 0, 0, 0, 69, 0, 69, 0, 69, 0, 69,
944 0, 19, 132, 0, 130, 69, 0, 159, 0, 0,
945 85, 162, 82, 84, 0, 0, 0, 0, 0, 172,
946 171, 155, 127, 100, 0, 0, 0, 5, 0, 0,
947 102, 0, 0, 0, 88, 0, 87, 0, 0, 0,
948 0, 0, 0, 0, 0, 0, 0, 0, 29, 0,
949 123, 0, 6, 101, 0, 69, 0, 69, 158, 0,
950 0, 0, 0, 0, 0, 67, 168, 0, 114, 0,
951 0, 0, 0, 0, 0, 0, 0, 59, 0, 67,
952 43, 0, 67, 46, 0, 131, 129, 0, 0, 0,
953 0, 0, 0, 150, 69, 0, 0, 169, 0, 0,
954 0, 0, 166, 174, 0, 0, 36, 70, 104, 32,
955 34, 0, 66, 97, 96, 95, 93, 89, 90, 91,
956 0, 92, 94, 98, 33, 0, 86, 79, 0, 65,
957 69, 0, 0, 69, 0, 0, 0, 0, 0, 0,
958 0, 40, 67, 64, 0, 47, 0, 0, 0, 48,
959 0, 49, 0, 0, 50, 60, 41, 42, 44, 45,
960 141, 139, 135, 136, 137, 138, 0, 142, 140, 170,
961 0, 0, 0, 0, 173, 128, 35, 72, 0, 0,
962 0, 0, 62, 0, 69, 114, 0, 42, 45, 0,
963 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
964 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
965 83, 167, 161, 163, 0, 80, 81, 0, 0, 0,
966 0, 0, 51, 0, 52, 0, 0, 53, 0, 54,
967 149, 147, 143, 144, 145, 146, 148, 73, 74, 75,
968 76, 77, 78, 71, 0, 0, 0, 115, 116, 0,
969 117, 121, 0, 0, 0, 0, 0, 0, 0, 0,
970 119, 0, 0, 63, 55, 56, 57, 58, 61, 109,
971 152, 0, 122, 0, 120, 118
977 -1, 1, 55, 56, 57, 58, 59, 60, 145, 62,
978 219, 63, 64, 247, 65, 66, 67, 68, 69, 189,
979 370, 371, 381, 372, 173, 98, 71, 225, 72, 73,
980 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
986 #define YYPACT_NINF -363
989 -363, 326, -363, -129, 1852, -363, -363, 1910, -95, -363,
990 -363, -75, -67, -58, -42, -37, -30, -25, -13, 1970,
991 2028, 2088, 2146, -87, 1852, -104, 1852, -5, -363, 1852,
992 -363, -363, -363, -363, -71, 20, 29, -363, -363, 58,
993 39, 77, -68, 83, -363, 130, 98, 2206, 137, 137,
994 1852, 1852, -363, 1852, 1852, -363, -363, -363, 112, -363,
995 35, -111, 1335, 1852, 1852, -363, 1852, 247, -122, -363,
996 2264, -363, -363, -363, -363, 131, -363, 1852, -363, -363,
997 1852, -363, -363, -363, -363, -363, -363, -363, -363, -363,
998 127, -95, 129, 132, 133, 134, -363, 30, 135, 1852,
999 359, 1335, -8, 2324, 1852, 1852, 1852, 1852, 1852, 1852,
1000 1852, 1498, 1852, 375, 1556, 405, 1852, 447, 1616, 469,
1001 140, -363, 142, 143, -363, 92, 1674, 1335, -53, 1852,
1002 -363, -363, -363, -363, 172, 1852, 174, 1734, 1910, 1335,
1003 147, -363, -363, 30, -52, -105, 120, -363, 1852, 1792,
1004 -363, 1852, 1852, 1852, -363, 1852, -363, 1852, 1852, 1852,
1005 1852, 1852, 1852, 1852, 1852, 1852, 236, 531, 142, 176,
1006 -363, 1852, -363, -363, 1852, 220, 1852, 72, 1335, 1852,
1007 1852, 1556, 1852, 1616, 1852, 545, -363, 1852, 561, 149,
1008 577, 593, 735, 2, 267, 749, 341, -363, -102, 763,
1009 -363, -98, 779, -363, -93, -363, -363, -55, -50, -46,
1010 -39, -32, -27, -363, 74, -15, 178, -363, 795, 1852,
1011 180, 809, -363, -363, -85, 152, -363, -363, -363, -363,
1012 -363, -69, 1335, 1349, 1389, 1389, 169, 25, 25, 30,
1013 54, 21, 1363, 25, -363, 1852, -363, -363, 1852, -363,
1014 622, 483, 1852, 95, 2324, 545, 763, -66, 779, -65,
1015 483, -363, 825, -363, 2324, -363, 1852, 1852, 1852, -363,
1016 1852, -363, 1852, 1852, -363, -363, -363, -363, -363, -363,
1017 -363, -363, -363, -363, -363, -363, 1012, -363, -363, -363,
1018 2382, 839, 182, -86, -363, -363, -363, -363, 1852, 855,
1019 855, 1852, -363, 997, 42, 1335, 156, -363, -363, 1852,
1020 157, 1011, 1027, 1041, 1057, 499, 515, 154, 163, 164,
1021 175, 177, 181, 183, 70, 79, 101, 105, 115, 1071,
1022 -363, -363, -363, -363, 1087, -363, -363, 1101, 161, 2324,
1023 -61, -113, -363, 1852, -363, 1852, 1852, -363, 1852, -363,
1024 -363, -363, -363, -363, -363, -363, -363, -363, -363, -363,
1025 -363, -363, -363, -363, 1852, 1852, 162, -363, -363, 204,
1026 179, -363, 184, 1115, 1257, 1273, 1289, 1305, 1321, -113,
1027 188, 185, 1852, -363, -363, -363, -363, -363, -363, -363,
1028 -363, 204, -363, -57, -363, -363
1034 -363, -363, -363, -363, -363, -363, -363, -4, -1, 48,
1035 -363, -363, -363, -206, -363, -363, 316, 286, 217, -240,
1036 -363, -362, -56, -43, 160, 0, -363, -363, -363, -363,
1037 -363, -363, -363, -363, -363, -363, -363, -363, -363, -363,
1038 -363, -363, -363, -363, -363
1045 #define YYTABLE_NINF -155
1048 61, 70, 368, 100, 169, 152, 153, 380, 123, 154,
1049 170, 155, 156, 89, 306, 113, 115, 117, 119, 171,
1050 172, 150, 125, 122, 310, 120, 121, 332, 154, 380,
1051 151, 156, 154, 369, 333, 156, 151, 154, 124, 151,
1052 156, 128, 227, 151, 134, 275, 148, 70, 151, 277,
1053 144, 103, 97, 148, 279, 101, 151, 152, 153, 216,
1054 217, 154, 294, 155, 156, 168, 175, 101, 101, 101,
1055 101, 104, 151, 177, 101, 151, 151, 127, 296, 105,
1056 151, 307, 308, 148, 151, 148, 367, 226, 106, 151,
1057 395, 179, 280, 335, 336, 139, 103, 281, 143, 366,
1058 180, 282, 146, 148, 107, 186, 148, 181, 283, 108,
1059 198, 166, 167, 201, 182, 284, 109, 204, 101, 183,
1060 285, 110, 214, 152, 153, 101, 215, 154, 178, 155,
1061 156, 184, 288, 111, 100, 157, 224, 158, 159, 160,
1062 161, 126, 162, 268, 229, 163, 164, 185, 231, 269,
1063 165, 188, 190, 191, 192, 193, 194, 195, 196, 161,
1064 199, 244, 160, 161, 202, 162, 129, 250, 161, 165,
1065 162, 131, 253, 165, 101, 130, 154, 218, 165, 156,
1066 257, 149, 259, 221, -154, 132, 101, 157, 149, 158,
1067 159, 160, 161, 297, 162, 298, 101, 163, 164, 232,
1068 233, 234, 165, 235, 170, 236, 237, 238, 239, 240,
1069 241, 242, 243, 101, -153, 286, 104, 357, 149, 101,
1070 149, 287, 251, 133, 101, 107, 358, 255, 256, 135,
1071 258, 148, 260, -133, -133, 262, -134, -134, 149, 152,
1072 153, 149, 136, 154, 137, 155, 156, 108, 359, 30,
1073 304, 110, 360, 157, 147, 158, 159, 160, 161, 169,
1074 162, 111, 361, 163, 164, 141, 142, 291, 165, 228,
1075 152, 153, 176, 179, 154, 180, 155, 156, 181, 182,
1076 183, 184, 205, 151, 220, 206, 323, 222, 171, 249,
1077 264, 289, 292, 299, 295, 331, 300, 339, 341, 365,
1078 303, 350, 305, 379, 158, 159, 160, 161, 340, 162,
1079 351, 352, 305, 164, 311, 312, 313, 165, 314, 368,
1080 315, 316, 353, 102, 354, 382, 2, 3, 355, 391,
1081 356, 383, 392, 140, 4, 394, 390, 254, 329, 0,
1082 5, 6, 7, 8, 152, 153, 334, 9, 154, 337,
1083 155, 156, -110, 0, 0, 0, 0, 0, 252, 0,
1084 0, -110, -110, 0, 0, 0, 149, 10, 245, 157,
1085 148, 158, 159, 160, 161, 0, 162, 0, 0, 163,
1086 164, 393, 0, 246, 165, 0, 148, 305, 0, 0,
1087 0, 373, 0, 374, 375, 0, 376, 0, 0, 0,
1088 157, 0, 158, 159, 160, 161, 0, 162, 270, 0,
1089 163, 164, 377, 378, 271, 165, 148, 0, 11, 12,
1090 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1091 23, 24, 25, 26, 0, 27, 28, 29, 30, 0,
1092 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1093 41, 42, 43, 44, 45, 46, 47, 48, 148, 49,
1094 0, 0, 50, 0, 51, 0, 0, 0, 52, 0,
1095 0, 0, 53, 0, 157, 54, 158, 159, 160, 161,
1096 148, 162, 273, 0, 163, 164, 152, 153, 274, 165,
1097 154, -112, 155, 156, 0, 0, 0, 0, 0, 0,
1098 -112, -112, 152, 153, 0, 149, 154, -105, 155, 156,
1099 0, 0, 0, 0, 0, 0, -105, -105, 152, 153,
1100 0, 149, 154, 0, 155, 156, 0, 0, 0, 0,
1101 0, 0, 0, 0, 152, 153, 0, -106, 154, 0,
1102 155, 156, 0, 0, 0, 0, -106, -106, 152, 153,
1103 0, 149, 154, 0, 155, 156, 0, 0, 0, 0,
1104 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1105 155, 156, 0, 0, 0, 0, 0, 0, 0, -107,
1106 152, 153, 0, 0, 154, 0, 155, 156, -107, -107,
1107 0, 0, 0, 149, 0, 0, 152, 153, 0, 0,
1108 154, -108, 155, 156, 0, 0, 0, 0, 0, 0,
1109 -108, -108, 0, 0, 0, 149, 157, 0, 158, 159,
1110 160, 161, 0, 162, 301, 0, 163, 164, 0, 0,
1111 302, 165, 157, 148, 158, 159, 160, 161, 0, 162,
1112 346, 0, 163, 164, 0, 0, 347, 165, 157, 0,
1113 158, 159, 160, 161, 0, 162, 348, 0, 163, 164,
1114 0, 0, 349, 165, 157, 0, 158, 159, 160, 161,
1115 0, 162, 248, 0, 163, 164, 0, 0, 157, 165,
1116 158, 159, 160, 161, 0, 162, 0, 0, 163, 164,
1117 0, 0, 261, 165, 157, 0, 158, 159, 160, 161,
1118 0, 162, 0, 0, 163, 164, 0, 0, 263, 165,
1119 157, 0, 158, 159, 160, 161, 0, 162, 0, 0,
1120 163, 164, 0, 0, 265, 165, 157, 0, 158, 159,
1121 160, 161, 0, 162, 266, 0, 163, 164, 152, 153,
1122 0, 165, 154, 0, 155, 156, 0, 0, 0, 0,
1123 0, 0, 152, 153, -111, 0, 154, 0, 155, 156,
1124 0, 0, 0, -111, -111, 0, 152, 153, 149, 0,
1125 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1126 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1127 0, 0, 0, 0, 0, 0, 0, 0, 152, 153,
1128 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1129 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1130 0, 0, 0, 0, 0, 0, 0, 0, 152, 153,
1131 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1132 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1133 0, 0, 0, 0, 0, 0, 0, 0, 152, 153,
1134 0, 0, 154, 0, 155, 156, 0, 0, 157, 0,
1135 158, 159, 160, 161, 0, 162, 267, 0, 163, 164,
1136 0, 0, 157, 165, 158, 159, 160, 161, 0, 162,
1137 272, 0, 163, 164, 0, 0, 157, 165, 158, 159,
1138 160, 161, 0, 162, 0, 0, 163, 164, 0, 0,
1139 276, 165, 157, 0, 158, 159, 160, 161, 0, 162,
1140 0, 0, 163, 164, 0, 0, 278, 165, 157, 0,
1141 158, 159, 160, 161, 0, 162, 290, 0, 163, 164,
1142 0, 0, 157, 165, 158, 159, 160, 161, 0, 162,
1143 0, 0, 163, 164, 0, 0, 293, 165, 157, 0,
1144 158, 159, 160, 161, 0, 162, 309, 0, 163, 164,
1145 0, 0, 157, 165, 158, 159, 160, 161, 0, 162,
1146 0, 0, 163, 164, 0, 0, 330, 165, 157, 0,
1147 158, 159, 160, 161, 0, 162, 0, 0, 163, 164,
1148 152, 153, 246, 165, 154, 0, 155, 156, 0, 0,
1149 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1150 155, 156, 0, 0, 0, 0, 5, 6, 317, 318,
1151 152, 153, 0, 9, 154, 0, 155, 156, 0, 0,
1152 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1153 155, 156, 0, 0, 0, 0, 0, 0, 0, 0,
1154 152, 153, 0, 0, 154, 0, 155, 156, 0, 0,
1155 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1156 155, 156, 0, 0, 0, 0, 0, 0, 0, 0,
1157 152, 153, 0, 0, 154, 0, 155, 156, 0, 0,
1158 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1159 155, 156, 319, 320, 321, 322, 0, 0, 152, 153,
1160 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1161 157, 0, 158, 159, 160, 161, 338, 162, 0, 0,
1162 163, 164, 0, 0, 157, 165, 158, 159, 160, 161,
1163 0, 162, 0, 0, 163, 164, 0, 0, 342, 165,
1164 157, 0, 158, 159, 160, 161, 0, 162, 343, 0,
1165 163, 164, 0, 0, 157, 165, 158, 159, 160, 161,
1166 0, 162, 0, 0, 163, 164, 0, 0, 344, 165,
1167 157, 0, 158, 159, 160, 161, 0, 162, 345, 0,
1168 163, 164, 0, 0, 157, 165, 158, 159, 160, 161,
1169 0, 162, 0, 0, 163, 164, 0, 0, 362, 165,
1170 157, 0, 158, 159, 160, 161, 363, 162, 0, 0,
1171 163, 164, 0, 0, 157, 165, 158, 159, 160, 161,
1172 0, 162, 364, 0, 163, 164, 0, 0, 157, 165,
1173 158, 159, 160, 161, 0, 162, 0, 0, 163, 164,
1174 152, 153, 384, 165, 154, 0, 155, 156, 0, 0,
1175 0, 0, 0, 0, 0, 0, 152, 153, 0, 0,
1176 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1177 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1178 0, 0, 0, 0, 0, 0, 0, 0, 152, 153,
1179 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1180 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1181 155, 156, 0, 0, 0, 0, 0, 0, 152, 153,
1182 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1183 0, 0, -155, 153, 0, 0, 154, 0, 155, 156,
1184 0, 0, 0, 0, 0, 0, 0, 153, 0, 0,
1185 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1186 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1187 157, 0, 158, 159, 160, 161, 154, 162, 0, 156,
1188 163, 164, 0, 0, 385, 165, 157, 0, 158, 159,
1189 160, 161, 0, 162, 0, 0, 163, 164, 0, 0,
1190 386, 165, 157, 0, 158, 159, 160, 161, 0, 162,
1191 0, 0, 163, 164, 0, 0, 387, 165, 157, 0,
1192 158, 159, 160, 161, 0, 162, 0, 0, 163, 164,
1193 0, 0, 388, 165, 157, 0, 158, 159, 160, 161,
1194 389, 162, 0, 0, 163, 164, 0, 0, 157, 165,
1195 158, 159, 160, 161, 0, 162, 0, 0, 163, 164,
1196 0, 0, 157, 165, 158, 159, 160, 161, 0, 162,
1197 0, 0, 163, 164, 0, 0, 157, 165, 158, 159,
1198 160, 161, 0, 162, 0, 0, 4, 164, 0, 0,
1199 0, 165, 5, 6, 90, 91, 0, 0, 0, 9,
1200 0, 0, 157, 0, 158, 159, 160, 161, 0, 162,
1201 0, 0, 0, 164, 0, 0, 0, 165, 0, 0,
1202 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1203 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1204 0, 0, 0, 0, 4, 0, 0, 0, 0, 0,
1205 5, 6, 90, 91, 0, 0, 0, 9, 0, 0,
1206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1207 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1208 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1209 30, 0, 31, 32, 33, 0, 35, 36, 0, 0,
1210 0, 40, 41, 0, 4, 0, 0, 0, 0, 96,
1211 5, 6, 90, 91, 50, 0, 51, 9, 0, 0,
1212 0, 0, 0, 0, 53, 197, 0, 54, 11, 12,
1213 13, 14, 15, 16, 17, 18, 92, 93, 94, 95,
1214 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
1215 31, 32, 33, 0, 35, 36, 0, 0, 0, 40,
1216 41, 0, 4, 0, 0, 0, 0, 96, 5, 6,
1217 207, 208, 50, 0, 51, 9, 0, 0, 0, 0,
1218 0, 0, 53, 200, 0, 54, 0, 0, 11, 12,
1219 13, 14, 15, 16, 17, 18, 92, 93, 94, 95,
1220 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
1221 31, 32, 33, 0, 35, 36, 0, 0, 0, 40,
1222 41, 0, 4, 0, 0, 0, 0, 96, 5, 6,
1223 90, 91, 50, 0, 51, 9, 0, 0, 0, 0,
1224 0, 0, 53, 203, 0, 54, 11, 12, 13, 14,
1225 15, 16, 17, 18, 209, 210, 211, 212, 0, 0,
1226 0, 0, 0, 0, 0, 0, 30, 0, 31, 32,
1227 33, 0, 35, 36, 0, 0, 0, 40, 41, 0,
1228 4, 0, 0, 0, 0, 96, 5, 6, 90, 91,
1229 50, 0, 51, 9, 0, 0, 0, 0, 0, 0,
1230 53, 213, 0, 54, 0, 0, 11, 12, 13, 14,
1231 15, 16, 17, 18, 92, 93, 94, 95, 0, 0,
1232 0, 0, 0, 0, 0, 0, 30, 0, 31, 32,
1233 33, 0, 35, 36, 0, 0, 0, 40, 41, 0,
1234 4, 0, 0, 0, 0, 96, 5, 6, 90, 91,
1235 50, 0, 51, 9, 0, 0, 0, 0, 0, 0,
1236 53, 223, 0, 54, 11, 12, 13, 14, 15, 16,
1237 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1238 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1239 35, 36, 0, 0, 0, 40, 41, 0, 4, 0,
1240 0, 0, 0, 96, 5, 6, 90, 91, 50, 0,
1241 51, 9, 0, 0, 0, 0, 0, 0, 53, 230,
1242 0, 54, 0, 0, 11, 12, 13, 14, 15, 16,
1243 17, 18, 92, 93, 94, 95, 0, 0, 0, 0,
1244 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1245 35, 36, 0, 0, 0, 40, 41, 0, 4, 0,
1246 0, 0, 0, 96, 5, 6, 90, 91, 50, 0,
1247 51, 9, 0, 0, 0, 0, 0, 0, 53, 0,
1248 0, 54, 11, 12, 13, 14, 15, 16, 17, 18,
1249 92, 93, 94, 95, 0, 0, 0, 0, 0, 0,
1250 0, 0, 30, 0, 31, 32, 33, 0, 35, 36,
1251 0, 0, 0, 40, 41, 0, 4, 0, 0, 0,
1252 0, 96, 5, 6, 90, 91, 50, 0, 51, 9,
1253 0, 0, 0, 0, 0, 0, 99, 0, 0, 54,
1254 0, 0, 11, 12, 13, 14, 15, 16, 17, 18,
1255 92, 93, 94, 95, 0, 0, 0, 0, 0, 0,
1256 0, 0, 30, 0, 31, 32, 33, 0, 35, 36,
1257 0, 0, 0, 40, 41, 0, 4, 0, 0, 0,
1258 0, 96, 5, 6, 90, 91, 50, 0, 51, 9,
1259 0, 0, 0, 0, 0, 0, 112, 0, 0, 54,
1260 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1261 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1262 30, 0, 31, 32, 33, 0, 35, 36, 0, 0,
1263 0, 40, 41, 0, 4, 0, 0, 0, 0, 96,
1264 5, 6, 90, 91, 50, 0, 51, 9, 0, 0,
1265 0, 0, 0, 0, 114, 0, 0, 54, 0, 0,
1266 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1267 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1268 30, 0, 31, 32, 33, 0, 35, 36, 0, 0,
1269 0, 40, 41, 0, 4, 0, 0, 0, 0, 96,
1270 5, 6, 138, 91, 50, 0, 51, 9, 0, 0,
1271 0, 0, 0, 0, 116, 0, 0, 54, 11, 12,
1272 13, 14, 15, 16, 17, 18, 92, 93, 94, 95,
1273 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
1274 31, 32, 33, 0, 35, 36, 0, 0, 0, 40,
1275 41, 0, 4, 0, 0, 0, 0, 96, 5, 6,
1276 90, 91, 50, 0, 51, 9, 0, 0, 0, 0,
1277 0, 0, 118, 0, 0, 54, 0, 0, 11, 12,
1278 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1279 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
1280 31, 32, 33, 0, 35, 36, 0, 0, 0, 40,
1281 41, 0, 4, 0, 0, 0, 0, 96, 5, 6,
1282 90, 91, 50, 0, 51, 9, 0, 0, 0, 0,
1283 0, 0, 53, 0, 0, 54, 11, 12, 13, 14,
1284 15, 16, 17, 18, 92, 93, 94, 95, 0, 0,
1285 0, 0, 0, 0, 0, 0, 30, 0, 31, 32,
1286 33, 0, 35, 36, 0, 0, 0, 40, 41, 0,
1287 4, 0, 0, 0, 0, 96, 5, 6, 90, 91,
1288 50, 0, 51, 9, 0, 0, 0, 0, 0, 0,
1289 174, 0, 0, 54, 0, 0, 11, 12, 13, 14,
1290 15, 16, 17, 18, 92, 93, 94, 95, 0, 0,
1291 0, 0, 0, 0, 0, 0, 30, 0, 31, 32,
1292 33, 0, 35, 36, 0, 0, 0, 40, 41, 0,
1293 0, 0, 0, 0, 0, 96, 0, 0, 0, 0,
1294 50, 0, 51, 0, 0, 0, 0, 0, 0, 0,
1295 187, 0, 0, 54, 324, 12, 13, 325, 326, 16,
1296 327, 328, 92, 93, 94, 95, 0, 0, 0, 0,
1297 0, 0, 0, 0, 30, 0, 31, 32, 33, 0,
1298 35, 36, 0, 0, 0, 40, 41, 0, 0, 0,
1299 0, 0, 0, 96, 0, 0, 0, 0, 50, 0,
1300 51, 0, 0, 0, 0, 0, 0, 0, 53, 0,
1306 1, 1, 115, 7, 12, 3, 4, 369, 112, 7,
1307 132, 9, 10, 142, 254, 19, 20, 21, 22, 141,
1308 142, 132, 26, 24, 264, 112, 113, 113, 7, 391,
1309 141, 10, 7, 146, 120, 10, 141, 7, 142, 141,
1310 10, 112, 147, 141, 112, 147, 11, 47, 141, 147,
1311 51, 146, 4, 11, 147, 7, 141, 3, 4, 112,
1312 113, 7, 147, 9, 10, 66, 70, 19, 20, 21,
1313 22, 146, 141, 77, 26, 141, 141, 29, 147, 146,
1314 141, 147, 147, 11, 141, 11, 147, 139, 146, 141,
1315 147, 146, 147, 299, 300, 47, 146, 147, 50, 339,
1316 146, 147, 54, 11, 146, 113, 11, 146, 147, 146,
1317 111, 63, 64, 114, 146, 147, 146, 118, 70, 146,
1318 147, 146, 126, 3, 4, 77, 126, 7, 80, 9,
1319 10, 146, 147, 146, 138, 133, 137, 135, 136, 137,
1320 138, 146, 140, 141, 148, 143, 144, 99, 149, 147,
1321 148, 103, 104, 105, 106, 107, 108, 109, 110, 138,
1322 112, 165, 137, 138, 116, 140, 146, 171, 138, 148,
1323 140, 113, 176, 148, 126, 146, 7, 129, 148, 10,
1324 181, 146, 183, 135, 142, 146, 138, 133, 146, 135,
1325 136, 137, 138, 139, 140, 141, 148, 143, 144, 151,
1326 152, 153, 148, 155, 132, 157, 158, 159, 160, 161,
1327 162, 163, 164, 165, 142, 141, 146, 147, 146, 171,
1328 146, 147, 174, 146, 176, 146, 147, 179, 180, 146,
1329 182, 11, 184, 141, 142, 187, 141, 142, 146, 3,
1330 4, 146, 112, 7, 146, 9, 10, 146, 147, 112,
1331 254, 146, 147, 133, 142, 135, 136, 137, 138, 12,
1332 140, 146, 147, 143, 144, 48, 49, 219, 148, 149,
1333 3, 4, 141, 146, 7, 146, 9, 10, 146, 146,
1334 146, 146, 142, 141, 112, 142, 286, 113, 141, 113,
1335 141, 113, 112, 245, 142, 113, 248, 141, 141, 138,
1336 252, 147, 254, 141, 135, 136, 137, 138, 309, 140,
1337 147, 147, 264, 144, 266, 267, 268, 148, 270, 115,
1338 272, 273, 147, 7, 147, 146, 0, 1, 147, 141,
1339 147, 147, 147, 47, 8, 391, 379, 177, 290, -1,
1340 14, 15, 16, 17, 3, 4, 298, 21, 7, 301,
1341 9, 10, 132, -1, -1, -1, -1, -1, 138, -1,
1342 -1, 141, 142, -1, -1, -1, 146, 41, 132, 133,
1343 11, 135, 136, 137, 138, -1, 140, -1, -1, 143,
1344 144, 382, -1, 147, 148, -1, 11, 339, -1, -1,
1345 -1, 343, -1, 345, 346, -1, 348, -1, -1, -1,
1346 133, -1, 135, 136, 137, 138, -1, 140, 141, -1,
1347 143, 144, 364, 365, 147, 148, 11, -1, 92, 93,
1348 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1349 104, 105, 106, 107, -1, 109, 110, 111, 112, -1,
1350 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1351 124, 125, 126, 127, 128, 129, 130, 131, 11, 133,
1352 -1, -1, 136, -1, 138, -1, -1, -1, 142, -1,
1353 -1, -1, 146, -1, 133, 149, 135, 136, 137, 138,
1354 11, 140, 141, -1, 143, 144, 3, 4, 147, 148,
1355 7, 132, 9, 10, -1, -1, -1, -1, -1, -1,
1356 141, 142, 3, 4, -1, 146, 7, 132, 9, 10,
1357 -1, -1, -1, -1, -1, -1, 141, 142, 3, 4,
1358 -1, 146, 7, -1, 9, 10, -1, -1, -1, -1,
1359 -1, -1, -1, -1, 3, 4, -1, 132, 7, -1,
1360 9, 10, -1, -1, -1, -1, 141, 142, 3, 4,
1361 -1, 146, 7, -1, 9, 10, -1, -1, -1, -1,
1362 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1363 9, 10, -1, -1, -1, -1, -1, -1, -1, 132,
1364 3, 4, -1, -1, 7, -1, 9, 10, 141, 142,
1365 -1, -1, -1, 146, -1, -1, 3, 4, -1, -1,
1366 7, 132, 9, 10, -1, -1, -1, -1, -1, -1,
1367 141, 142, -1, -1, -1, 146, 133, -1, 135, 136,
1368 137, 138, -1, 140, 141, -1, 143, 144, -1, -1,
1369 147, 148, 133, 11, 135, 136, 137, 138, -1, 140,
1370 141, -1, 143, 144, -1, -1, 147, 148, 133, -1,
1371 135, 136, 137, 138, -1, 140, 141, -1, 143, 144,
1372 -1, -1, 147, 148, 133, -1, 135, 136, 137, 138,
1373 -1, 140, 141, -1, 143, 144, -1, -1, 133, 148,
1374 135, 136, 137, 138, -1, 140, -1, -1, 143, 144,
1375 -1, -1, 147, 148, 133, -1, 135, 136, 137, 138,
1376 -1, 140, -1, -1, 143, 144, -1, -1, 147, 148,
1377 133, -1, 135, 136, 137, 138, -1, 140, -1, -1,
1378 143, 144, -1, -1, 147, 148, 133, -1, 135, 136,
1379 137, 138, -1, 140, 141, -1, 143, 144, 3, 4,
1380 -1, 148, 7, -1, 9, 10, -1, -1, -1, -1,
1381 -1, -1, 3, 4, 132, -1, 7, -1, 9, 10,
1382 -1, -1, -1, 141, 142, -1, 3, 4, 146, -1,
1383 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1384 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1385 -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1386 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1387 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1388 -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1389 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1390 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1391 -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1392 -1, -1, 7, -1, 9, 10, -1, -1, 133, -1,
1393 135, 136, 137, 138, -1, 140, 141, -1, 143, 144,
1394 -1, -1, 133, 148, 135, 136, 137, 138, -1, 140,
1395 141, -1, 143, 144, -1, -1, 133, 148, 135, 136,
1396 137, 138, -1, 140, -1, -1, 143, 144, -1, -1,
1397 147, 148, 133, -1, 135, 136, 137, 138, -1, 140,
1398 -1, -1, 143, 144, -1, -1, 147, 148, 133, -1,
1399 135, 136, 137, 138, -1, 140, 141, -1, 143, 144,
1400 -1, -1, 133, 148, 135, 136, 137, 138, -1, 140,
1401 -1, -1, 143, 144, -1, -1, 147, 148, 133, -1,
1402 135, 136, 137, 138, -1, 140, 141, -1, 143, 144,
1403 -1, -1, 133, 148, 135, 136, 137, 138, -1, 140,
1404 -1, -1, 143, 144, -1, -1, 147, 148, 133, -1,
1405 135, 136, 137, 138, -1, 140, -1, -1, 143, 144,
1406 3, 4, 147, 148, 7, -1, 9, 10, -1, -1,
1407 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1408 9, 10, -1, -1, -1, -1, 14, 15, 16, 17,
1409 3, 4, -1, 21, 7, -1, 9, 10, -1, -1,
1410 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1411 9, 10, -1, -1, -1, -1, -1, -1, -1, -1,
1412 3, 4, -1, -1, 7, -1, 9, 10, -1, -1,
1413 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1414 9, 10, -1, -1, -1, -1, -1, -1, -1, -1,
1415 3, 4, -1, -1, 7, -1, 9, 10, -1, -1,
1416 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1417 9, 10, 100, 101, 102, 103, -1, -1, 3, 4,
1418 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1419 133, -1, 135, 136, 137, 138, 139, 140, -1, -1,
1420 143, 144, -1, -1, 133, 148, 135, 136, 137, 138,
1421 -1, 140, -1, -1, 143, 144, -1, -1, 147, 148,
1422 133, -1, 135, 136, 137, 138, -1, 140, 141, -1,
1423 143, 144, -1, -1, 133, 148, 135, 136, 137, 138,
1424 -1, 140, -1, -1, 143, 144, -1, -1, 147, 148,
1425 133, -1, 135, 136, 137, 138, -1, 140, 141, -1,
1426 143, 144, -1, -1, 133, 148, 135, 136, 137, 138,
1427 -1, 140, -1, -1, 143, 144, -1, -1, 147, 148,
1428 133, -1, 135, 136, 137, 138, 139, 140, -1, -1,
1429 143, 144, -1, -1, 133, 148, 135, 136, 137, 138,
1430 -1, 140, 141, -1, 143, 144, -1, -1, 133, 148,
1431 135, 136, 137, 138, -1, 140, -1, -1, 143, 144,
1432 3, 4, 147, 148, 7, -1, 9, 10, -1, -1,
1433 -1, -1, -1, -1, -1, -1, 3, 4, -1, -1,
1434 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1435 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1436 -1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
1437 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1438 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1439 9, 10, -1, -1, -1, -1, -1, -1, 3, 4,
1440 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1441 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1442 -1, -1, -1, -1, -1, -1, -1, 4, -1, -1,
1443 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1444 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1445 133, -1, 135, 136, 137, 138, 7, 140, -1, 10,
1446 143, 144, -1, -1, 147, 148, 133, -1, 135, 136,
1447 137, 138, -1, 140, -1, -1, 143, 144, -1, -1,
1448 147, 148, 133, -1, 135, 136, 137, 138, -1, 140,
1449 -1, -1, 143, 144, -1, -1, 147, 148, 133, -1,
1450 135, 136, 137, 138, -1, 140, -1, -1, 143, 144,
1451 -1, -1, 147, 148, 133, -1, 135, 136, 137, 138,
1452 139, 140, -1, -1, 143, 144, -1, -1, 133, 148,
1453 135, 136, 137, 138, -1, 140, -1, -1, 143, 144,
1454 -1, -1, 133, 148, 135, 136, 137, 138, -1, 140,
1455 -1, -1, 143, 144, -1, -1, 133, 148, 135, 136,
1456 137, 138, -1, 140, -1, -1, 8, 144, -1, -1,
1457 -1, 148, 14, 15, 16, 17, -1, -1, -1, 21,
1458 -1, -1, 133, -1, 135, 136, 137, 138, -1, 140,
1459 -1, -1, -1, 144, -1, -1, -1, 148, -1, -1,
1460 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1461 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1462 -1, -1, -1, -1, 8, -1, -1, -1, -1, -1,
1463 14, 15, 16, 17, -1, -1, -1, 21, -1, -1,
1464 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1465 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1466 102, 103, -1, -1, -1, -1, -1, -1, -1, -1,
1467 112, -1, 114, 115, 116, -1, 118, 119, -1, -1,
1468 -1, 123, 124, -1, 8, -1, -1, -1, -1, 131,
1469 14, 15, 16, 17, 136, -1, 138, 21, -1, -1,
1470 -1, -1, -1, -1, 146, 147, -1, 149, 92, 93,
1471 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1472 -1, -1, -1, -1, -1, -1, -1, -1, 112, -1,
1473 114, 115, 116, -1, 118, 119, -1, -1, -1, 123,
1474 124, -1, 8, -1, -1, -1, -1, 131, 14, 15,
1475 16, 17, 136, -1, 138, 21, -1, -1, -1, -1,
1476 -1, -1, 146, 147, -1, 149, -1, -1, 92, 93,
1477 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1478 -1, -1, -1, -1, -1, -1, -1, -1, 112, -1,
1479 114, 115, 116, -1, 118, 119, -1, -1, -1, 123,
1480 124, -1, 8, -1, -1, -1, -1, 131, 14, 15,
1481 16, 17, 136, -1, 138, 21, -1, -1, -1, -1,
1482 -1, -1, 146, 147, -1, 149, 92, 93, 94, 95,
1483 96, 97, 98, 99, 100, 101, 102, 103, -1, -1,
1484 -1, -1, -1, -1, -1, -1, 112, -1, 114, 115,
1485 116, -1, 118, 119, -1, -1, -1, 123, 124, -1,
1486 8, -1, -1, -1, -1, 131, 14, 15, 16, 17,
1487 136, -1, 138, 21, -1, -1, -1, -1, -1, -1,
1488 146, 147, -1, 149, -1, -1, 92, 93, 94, 95,
1489 96, 97, 98, 99, 100, 101, 102, 103, -1, -1,
1490 -1, -1, -1, -1, -1, -1, 112, -1, 114, 115,
1491 116, -1, 118, 119, -1, -1, -1, 123, 124, -1,
1492 8, -1, -1, -1, -1, 131, 14, 15, 16, 17,
1493 136, -1, 138, 21, -1, -1, -1, -1, -1, -1,
1494 146, 147, -1, 149, 92, 93, 94, 95, 96, 97,
1495 98, 99, 100, 101, 102, 103, -1, -1, -1, -1,
1496 -1, -1, -1, -1, 112, -1, 114, 115, 116, -1,
1497 118, 119, -1, -1, -1, 123, 124, -1, 8, -1,
1498 -1, -1, -1, 131, 14, 15, 16, 17, 136, -1,
1499 138, 21, -1, -1, -1, -1, -1, -1, 146, 147,
1500 -1, 149, -1, -1, 92, 93, 94, 95, 96, 97,
1501 98, 99, 100, 101, 102, 103, -1, -1, -1, -1,
1502 -1, -1, -1, -1, 112, -1, 114, 115, 116, -1,
1503 118, 119, -1, -1, -1, 123, 124, -1, 8, -1,
1504 -1, -1, -1, 131, 14, 15, 16, 17, 136, -1,
1505 138, 21, -1, -1, -1, -1, -1, -1, 146, -1,
1506 -1, 149, 92, 93, 94, 95, 96, 97, 98, 99,
1507 100, 101, 102, 103, -1, -1, -1, -1, -1, -1,
1508 -1, -1, 112, -1, 114, 115, 116, -1, 118, 119,
1509 -1, -1, -1, 123, 124, -1, 8, -1, -1, -1,
1510 -1, 131, 14, 15, 16, 17, 136, -1, 138, 21,
1511 -1, -1, -1, -1, -1, -1, 146, -1, -1, 149,
1512 -1, -1, 92, 93, 94, 95, 96, 97, 98, 99,
1513 100, 101, 102, 103, -1, -1, -1, -1, -1, -1,
1514 -1, -1, 112, -1, 114, 115, 116, -1, 118, 119,
1515 -1, -1, -1, 123, 124, -1, 8, -1, -1, -1,
1516 -1, 131, 14, 15, 16, 17, 136, -1, 138, 21,
1517 -1, -1, -1, -1, -1, -1, 146, -1, -1, 149,
1518 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1519 102, 103, -1, -1, -1, -1, -1, -1, -1, -1,
1520 112, -1, 114, 115, 116, -1, 118, 119, -1, -1,
1521 -1, 123, 124, -1, 8, -1, -1, -1, -1, 131,
1522 14, 15, 16, 17, 136, -1, 138, 21, -1, -1,
1523 -1, -1, -1, -1, 146, -1, -1, 149, -1, -1,
1524 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1525 102, 103, -1, -1, -1, -1, -1, -1, -1, -1,
1526 112, -1, 114, 115, 116, -1, 118, 119, -1, -1,
1527 -1, 123, 124, -1, 8, -1, -1, -1, -1, 131,
1528 14, 15, 16, 17, 136, -1, 138, 21, -1, -1,
1529 -1, -1, -1, -1, 146, -1, -1, 149, 92, 93,
1530 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1531 -1, -1, -1, -1, -1, -1, -1, -1, 112, -1,
1532 114, 115, 116, -1, 118, 119, -1, -1, -1, 123,
1533 124, -1, 8, -1, -1, -1, -1, 131, 14, 15,
1534 16, 17, 136, -1, 138, 21, -1, -1, -1, -1,
1535 -1, -1, 146, -1, -1, 149, -1, -1, 92, 93,
1536 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1537 -1, -1, -1, -1, -1, -1, -1, -1, 112, -1,
1538 114, 115, 116, -1, 118, 119, -1, -1, -1, 123,
1539 124, -1, 8, -1, -1, -1, -1, 131, 14, 15,
1540 16, 17, 136, -1, 138, 21, -1, -1, -1, -1,
1541 -1, -1, 146, -1, -1, 149, 92, 93, 94, 95,
1542 96, 97, 98, 99, 100, 101, 102, 103, -1, -1,
1543 -1, -1, -1, -1, -1, -1, 112, -1, 114, 115,
1544 116, -1, 118, 119, -1, -1, -1, 123, 124, -1,
1545 8, -1, -1, -1, -1, 131, 14, 15, 16, 17,
1546 136, -1, 138, 21, -1, -1, -1, -1, -1, -1,
1547 146, -1, -1, 149, -1, -1, 92, 93, 94, 95,
1548 96, 97, 98, 99, 100, 101, 102, 103, -1, -1,
1549 -1, -1, -1, -1, -1, -1, 112, -1, 114, 115,
1550 116, -1, 118, 119, -1, -1, -1, 123, 124, -1,
1551 -1, -1, -1, -1, -1, 131, -1, -1, -1, -1,
1552 136, -1, 138, -1, -1, -1, -1, -1, -1, -1,
1553 146, -1, -1, 149, 92, 93, 94, 95, 96, 97,
1554 98, 99, 100, 101, 102, 103, -1, -1, -1, -1,
1555 -1, -1, -1, -1, 112, -1, 114, 115, 116, -1,
1556 118, 119, -1, -1, -1, 123, 124, -1, -1, -1,
1557 -1, -1, -1, 131, -1, -1, -1, -1, 136, -1,
1558 138, -1, -1, -1, -1, -1, -1, -1, 146, -1,
1566 0, 151, 0, 1, 8, 14, 15, 16, 17, 21,
1567 41, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1568 101, 102, 103, 104, 105, 106, 107, 109, 110, 111,
1569 112, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1570 123, 124, 125, 126, 127, 128, 129, 130, 131, 133,
1571 136, 138, 142, 146, 149, 152, 153, 154, 155, 156,
1572 157, 158, 159, 161, 162, 164, 165, 166, 167, 168,
1573 175, 176, 178, 179, 180, 181, 182, 183, 184, 185,
1574 186, 187, 188, 189, 190, 191, 192, 193, 194, 142,
1575 16, 17, 100, 101, 102, 103, 131, 159, 175, 146,
1576 157, 159, 166, 146, 146, 146, 146, 146, 146, 146,
1577 146, 146, 146, 157, 146, 157, 146, 157, 146, 157,
1578 112, 113, 158, 112, 142, 157, 146, 159, 112, 146,
1579 146, 113, 146, 146, 112, 146, 112, 146, 16, 159,
1580 167, 168, 168, 159, 158, 158, 159, 142, 11, 146,
1581 132, 141, 3, 4, 7, 9, 10, 133, 135, 136,
1582 137, 138, 140, 143, 144, 148, 159, 159, 158, 12,
1583 132, 141, 142, 174, 146, 157, 141, 157, 159, 146,
1584 146, 146, 146, 146, 146, 159, 113, 146, 159, 169,
1585 159, 159, 159, 159, 159, 159, 159, 147, 158, 159,
1586 147, 158, 159, 147, 158, 142, 142, 16, 17, 100,
1587 101, 102, 103, 147, 157, 175, 112, 113, 159, 160,
1588 112, 159, 113, 147, 158, 177, 139, 147, 149, 157,
1589 147, 158, 159, 159, 159, 159, 159, 159, 159, 159,
1590 159, 159, 159, 159, 157, 132, 147, 163, 141, 113,
1591 157, 159, 138, 157, 174, 159, 159, 158, 159, 158,
1592 159, 147, 159, 147, 141, 147, 141, 141, 141, 147,
1593 141, 147, 141, 141, 147, 147, 147, 147, 147, 147,
1594 147, 147, 147, 147, 147, 147, 141, 147, 147, 113,
1595 141, 159, 112, 147, 147, 142, 147, 139, 141, 159,
1596 159, 141, 147, 159, 157, 159, 169, 147, 147, 141,
1597 169, 159, 159, 159, 159, 159, 159, 16, 17, 100,
1598 101, 102, 103, 175, 92, 95, 96, 98, 99, 159,
1599 147, 113, 113, 120, 159, 163, 163, 159, 139, 141,
1600 158, 141, 147, 141, 147, 141, 141, 147, 141, 147,
1601 147, 147, 147, 147, 147, 147, 147, 147, 147, 147,
1602 147, 147, 147, 139, 141, 138, 169, 147, 115, 146,
1603 170, 171, 173, 159, 159, 159, 159, 159, 159, 141,
1604 171, 172, 146, 147, 147, 147, 147, 147, 147, 139,
1605 173, 141, 147, 158, 172, 147
1608 #define yyerrok (yyerrstatus = 0)
1609 #define yyclearin (yychar = YYEMPTY)
1610 #define YYEMPTY (-2)
1613 #define YYACCEPT goto yyacceptlab
1614 #define YYABORT goto yyabortlab
1615 #define YYERROR goto yyerrorlab
1625 #define YYFAIL goto yyerrlab
1633 #define YYRECOVERING() (!!yyerrstatus)
1635 #define YYBACKUP(Token, Value) \
1637 if (yychar == YYEMPTY && yylen == 1) \
1641 yytoken = YYTRANSLATE (yychar); \
1647 yyerror (YY_("syntax error: cannot back up")); \
1654 #define YYERRCODE 256
1661 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
1662 #ifndef YYLLOC_DEFAULT
1663 # define YYLLOC_DEFAULT(Current, Rhs, N) \
1667 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
1668 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
1669 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
1670 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
1674 (Current).first_line = (Current).last_line = \
1675 YYRHSLOC (Rhs, 0).last_line; \
1676 (Current).first_column = (Current).last_column = \
1677 YYRHSLOC (Rhs, 0).last_column; \
1687 #ifndef YY_LOCATION_PRINT
1688 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
1689 # define YY_LOCATION_PRINT(File, Loc) \
1690 fprintf (File, "%d.%d-%d.%d", \
1691 (Loc).first_line, (Loc).first_column, \
1692 (Loc).last_line, (Loc).last_column)
1694 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1702 # define YYLEX yylex (&yylval, YYLEX_PARAM)
1704 # define YYLEX yylex (&yylval)
1712 # define YYFPRINTF fprintf
1715 # define YYDPRINTF(Args) \
1721 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1725 YYFPRINTF (stderr, "%s ", Title); \
1726 yy_symbol_print (stderr, \
1728 YYFPRINTF (stderr, "\n"); \
1738 #if (defined __STDC__ || defined __C99__FUNC__ \
1739 || defined __cplusplus || defined _MSC_VER)
1754 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1770 #if (defined __STDC__ || defined __C99__FUNC__ \
1771 || defined __cplusplus || defined _MSC_VER)
1783 YYFPRINTF (yyoutput,
"token %s (", yytname[yytype]);
1785 YYFPRINTF (yyoutput,
"nterm %s (", yytname[yytype]);
1796 #if (defined __STDC__ || defined __C99__FUNC__ \
1797 || defined __cplusplus || defined _MSC_VER)
1808 for (; yybottom <= yytop; yybottom++)
1810 int yybot = *yybottom;
1816 # define YY_STACK_PRINT(Bottom, Top) \
1819 yy_stack_print ((Bottom), (Top)); \
1827 #if (defined __STDC__ || defined __C99__FUNC__ \
1828 || defined __cplusplus || defined _MSC_VER)
1838 int yynrhs = yyr2[yyrule];
1840 unsigned long int yylno = yyrline[yyrule];
1841 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1844 for (yyi = 0; yyi < yynrhs; yyi++)
1848 &(yyvsp[(yyi + 1) - (yynrhs)])
1854 # define YY_REDUCE_PRINT(Rule) \
1857 yy_reduce_print (yyvsp, Rule); \
1864 # define YYDPRINTF(Args)
1865 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1866 # define YY_STACK_PRINT(Bottom, Top)
1867 # define YY_REDUCE_PRINT(Rule)
1873 # define YYINITDEPTH 200
1884 # define YYMAXDEPTH 10000
1892 # if defined __GLIBC__ && defined _STRING_H
1893 # define yystrlen strlen
1896 #if (defined __STDC__ || defined __C99__FUNC__ \
1897 || defined __cplusplus || defined _MSC_VER)
1899 yystrlen (
const char *yystr)
1907 for (yylen = 0; yystr[yylen]; yylen++)
1915 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1916 # define yystpcpy stpcpy
1920 #if (defined __STDC__ || defined __C99__FUNC__ \
1921 || defined __cplusplus || defined _MSC_VER)
1923 yystpcpy (
char *yydest,
const char *yysrc)
1926 yystpcpy (yydest, yysrc)
1932 const char *yys = yysrc;
1934 while ((*yyd++ = *yys++) !=
'\0')
1951 yytnamerr (
char *yyres,
const char *yystr)
1956 char const *yyp = yystr;
1963 goto do_not_strip_quotes;
1967 goto do_not_strip_quotes;
1980 do_not_strip_quotes: ;
1984 return yystrlen (yystr);
1986 return yystpcpy (yyres, yystr) - yyres;
1998 yysyntax_error (
char *yyresult,
int yystate,
int yychar)
2000 int yyn = yypact[yystate];
2007 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2010 int yysize_overflow = 0;
2011 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2012 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2018 YY_(
"syntax error, unexpected %s");
2019 YY_(
"syntax error, unexpected %s, expecting %s");
2020 YY_(
"syntax error, unexpected %s, expecting %s or %s");
2021 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s");
2022 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s");
2026 static char const yyunexpected[] =
"syntax error, unexpected %s";
2027 static char const yyexpecting[] =
", expecting %s";
2028 static char const yyor[] =
" or %s";
2029 char yyformat[
sizeof yyunexpected
2030 +
sizeof yyexpecting - 1
2031 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2032 * (
sizeof yyor - 1))];
2033 char const *yyprefix = yyexpecting;
2037 int yyxbegin = yyn < 0 ? -yyn : 0;
2040 int yychecklim =
YYLAST - yyn + 1;
2044 yyarg[0] = yytname[yytype];
2045 yyfmt = yystpcpy (yyformat, yyunexpected);
2047 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2048 if (yycheck[yyx + yyn] == yyx && yyx !=
YYTERROR)
2050 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2054 yyformat[
sizeof yyunexpected - 1] =
'\0';
2057 yyarg[yycount++] = yytname[yyx];
2058 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2059 yysize_overflow |= (yysize1 < yysize);
2061 yyfmt = yystpcpy (yyfmt, yyprefix);
2065 yyf =
YY_(yyformat);
2066 yysize1 = yysize + yystrlen (yyf);
2067 yysize_overflow |= (yysize1 < yysize);
2070 if (yysize_overflow)
2078 char *yyp = yyresult;
2080 while ((*yyp = *yyf) !=
'\0')
2082 if (*yyp ==
'%' && yyf[1] ==
's' && yyi < yycount)
2084 yyp += yytnamerr (yyp, yyarg[yyi++]);
2105 #if (defined __STDC__ || defined __C99__FUNC__ \
2106 || defined __cplusplus || defined _MSC_VER)
2132 #ifdef YYPARSE_PARAM
2133 #if defined __STDC__ || defined __cplusplus
2134 int yyparse (
void *YYPARSE_PARAM);
2139 #if defined __STDC__ || defined __cplusplus
2154 #ifdef YYPARSE_PARAM
2155 #if (defined __STDC__ || defined __C99__FUNC__ \
2156 || defined __cplusplus || defined _MSC_VER)
2162 void *YYPARSE_PARAM;
2165 #if (defined __STDC__ || defined __C99__FUNC__ \
2166 || defined __cplusplus || defined _MSC_VER)
2219 char *yymsg = yymsgbuf;
2220 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
2223 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2234 YYDPRINTF ((stderr,
"Starting parse\n"));
2261 if (yyss + yystacksize - 1 <= yyssp)
2264 YYSIZE_T yysize = yyssp - yyss + 1;
2278 yyoverflow (
YY_(
"memory exhausted"),
2279 &yyss1, yysize *
sizeof (*yyssp),
2280 &yyvs1, yysize *
sizeof (*yyvsp),
2287 # ifndef YYSTACK_RELOCATE
2288 goto yyexhaustedlab;
2292 goto yyexhaustedlab;
2299 union yyalloc *yyptr =
2300 (
union yyalloc *)
YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2302 goto yyexhaustedlab;
2303 YYSTACK_RELOCATE (yyss_alloc, yyss);
2304 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
2305 # undef YYSTACK_RELOCATE
2312 yyssp = yyss + yysize - 1;
2313 yyvsp = yyvs + yysize - 1;
2315 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
2316 (
unsigned long int) yystacksize));
2318 if (yyss + yystacksize - 1 <= yyssp)
2322 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
2338 yyn = yypact[yystate];
2347 YYDPRINTF ((stderr,
"Reading a token: "));
2351 if (yychar <=
YYEOF)
2353 yychar = yytoken =
YYEOF;
2354 YYDPRINTF ((stderr,
"Now at end of input.\n"));
2365 if (yyn < 0 ||
YYLAST < yyn || yycheck[yyn] != yytoken)
2397 yyn = yydefact[yystate];
2418 yyval = yyvsp[1-yylen];
2427 #line 367 "grammar.y"
2463 #line 402 "grammar.y"
2470 #line 404 "grammar.y"
2477 #line 406 "grammar.y"
2486 #line 410 "grammar.y"
2496 #line 415 "grammar.y"
2503 #line 417 "grammar.y"
2513 if ((
inerror!=3) && ((yyvsp[(1) - (2)].
i)<
UMINUS) && ((yyvsp[(1) - (2)].
i)>
' '))
2557 #line 475 "grammar.y"
2564 #line 478 "grammar.y"
2571 #line 493 "grammar.y"
2580 #line 500 "grammar.y"
2590 #line 505 "grammar.y"
2592 syMake(&(yyval.lv),(yyvsp[(1) - (1)].name));
2599 #line 509 "grammar.y"
2608 #line 513 "grammar.y"
2610 if(
iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv),
'.', &(yyvsp[(3) - (3)].lv)))
YYERROR;
2617 #line 517 "grammar.y"
2626 #line 521 "grammar.y"
2628 if ((yyvsp[(1) - (4)].lv).rtyp==
UNKNOWN)
2635 memcpy((yyvsp[(1) - (4)].lv).
next,&(yyvsp[(3) - (4)].lv),
sizeof(
sleftv));
2644 #line 534 "grammar.y"
2648 memset(&(yyval.lv),0,
sizeof(
sleftv));
2650 leftv v = &(yyvsp[(2) - (3)].lv);
2655 memset(&tmp,0,
sizeof(tmp));
2660 (yyvsp[(2) - (3)].lv).CleanUp();
2665 (yyval.lv).data = (
void *)
pAdd((
poly)(yyval.lv).data,p);
2670 (yyvsp[(2) - (3)].lv).CleanUp();
2677 #line 562 "grammar.y"
2679 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2680 int i = atoi((yyvsp[(1) - (1)].
name));
2684 (yyval.lv).data = (
void *)(long)i;
2687 int l = strlen((yyvsp[(1) - (1)].
name))+2;
2692 sprintf(tmp,
"%d",i);
2693 if (strcmp(tmp,(yyvsp[(1) - (1)].
name))!=0)
2697 (yyval.lv).data = n;
2706 #line 586 "grammar.y"
2708 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2709 (yyval.lv).rtyp = (yyvsp[(1) - (1)].
i);
2710 (yyval.lv).data = (yyval.lv).Data();
2717 #line 592 "grammar.y"
2719 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2721 (yyval.lv).data = (yyvsp[(1) - (1)].
name);
2728 #line 598 "grammar.y"
2737 #line 602 "grammar.y"
2746 #line 606 "grammar.y"
2755 #line 610 "grammar.y"
2764 #line 614 "grammar.y"
2773 #line 618 "grammar.y"
2782 #line 622 "grammar.y"
2791 #line 626 "grammar.y"
2800 #line 630 "grammar.y"
2809 #line 634 "grammar.y"
2818 #line 638 "grammar.y"
2827 #line 642 "grammar.y"
2836 #line 646 "grammar.y"
2845 #line 650 "grammar.y"
2854 #line 654 "grammar.y"
2863 #line 658 "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 662 "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 666 "grammar.y"
2883 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2890 #line 670 "grammar.y"
2892 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2899 #line 674 "grammar.y"
2908 #line 678 "grammar.y"
2910 int b=
iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i));
2919 #line 684 "grammar.y"
2921 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2928 #line 688 "grammar.y"
2937 #line 692 "grammar.y"
2946 #line 696 "grammar.y"
2955 #line 700 "grammar.y"
2957 if (
iiARROW(&(yyval.lv),(yyvsp[(1) - (3)].name),(yyvsp[(3) - (3)].name)))
YYERROR;
2964 #line 707 "grammar.y"
2966 leftv v = &(yyvsp[(1) - (3)].lv);
2972 memcpy(v->
next,&((yyvsp[(3) - (3)].lv)),
sizeof(
sleftv));
2973 (yyval.lv) = (yyvsp[(1) - (3)].lv);
2980 #line 718 "grammar.y"
2982 (yyval.lv) = (yyvsp[(1) - (1)].lv);
2989 #line 724 "grammar.y"
2992 (yyval.lv) = (yyvsp[(1) - (1)].lv);
2999 #line 728 "grammar.y"
3000 { (yyval.lv) = (yyvsp[(1) - (1)].lv); ;}
3006 #line 729 "grammar.y"
3007 { (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
3013 #line 731 "grammar.y"
3015 if(
iiExprArith3(&(yyval.lv),
'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv)))
YYERROR;
3022 #line 735 "grammar.y"
3031 #line 739 "grammar.y"
3040 #line 743 "grammar.y"
3049 #line 747 "grammar.y"
3058 #line 751 "grammar.y"
3067 #line 755 "grammar.y"
3076 #line 759 "grammar.y"
3078 if (
iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), 0, &(yyvsp[(5) - (6)].lv)))
YYERROR;
3085 #line 763 "grammar.y"
3087 (yyval.lv)=(yyvsp[(2) - (3)].lv);
3094 #line 767 "grammar.y"
3099 {
if (
iiExprArith2(&(yyval.lv),&(yyvsp[(2) - (5)].lv),
'=',&(yyvsp[(4) - (5)].lv)))
YYERROR; }
3103 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3104 (yyval.lv).rtyp=
NONE;
3116 #line 784 "grammar.y"
3118 iiTestAssume(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv));
3119 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3120 (yyval.lv).rtyp=
NONE;
3127 #line 790 "grammar.y"
3138 #line 796 "grammar.y"
3141 if (
siq<=0) (yyvsp[(4) - (5)].lv).Eval();
3143 (yyval.lv)=(yyvsp[(4) - (5)].lv);
3153 #line 808 "grammar.y"
3164 #line 816 "grammar.y"
3175 #line 824 "grammar.y"
3186 #line 833 "grammar.y"
3195 #line 837 "grammar.y"
3204 #line 841 "grammar.y"
3213 #line 845 "grammar.y"
3222 #line 849 "grammar.y"
3224 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3231 #line 853 "grammar.y"
3240 #line 857 "grammar.y"
3242 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3249 #line 861 "grammar.y"
3251 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3258 #line 865 "grammar.y"
3267 #line 869 "grammar.y"
3276 #line 873 "grammar.y"
3285 #line 877 "grammar.y"
3294 #line 881 "grammar.y"
3300 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3303 (yyval.lv).data = (
void *)(long)(i == 0 ? 1 : 0);
3311 #line 893 "grammar.y"
3320 #line 899 "grammar.y"
3321 { (yyval.lv) = (yyvsp[(1) - (2)].lv); ;}
3327 #line 901 "grammar.y"
3329 if ((yyvsp[(1) - (2)].lv).rtyp==0)
3331 Werror(
"`%s` is undefined",(yyvsp[(1) - (2)].lv).Fullname());
3334 else if (((yyvsp[(1) - (2)].lv).rtyp==
MODUL_CMD)
3336 && ((yyvsp[(1) - (2)].lv).e!=
NULL) && ((yyvsp[(1) - (2)].lv).e->next==
NULL))
3338 MYYERROR(
"matrix must have 2 indices");
3340 (yyval.lv) = (yyvsp[(1) - (2)].lv);
3347 #line 921 "grammar.y"
3351 MYYERROR(
"string expression expected");
3353 (yyval.name) = (
char *)(yyvsp[(2) - (3)].lv).CopyD(
STRING_CMD);
3354 (yyvsp[(2) - (3)].lv).CleanUp();
3361 #line 933 "grammar.y"
3363 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3371 #line 938 "grammar.y"
3373 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3381 #line 943 "grammar.y"
3390 #line 947 "grammar.y"
3399 #line 951 "grammar.y"
3404 MYYERROR(
"rows must be greater than 0");
3406 MYYERROR(
"cols must be greater than -1");
3420 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3430 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3444 #line 991 "grammar.y"
3452 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3466 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3475 #line 1017 "grammar.y"
3477 int t=(yyvsp[(1) - (3)].lv).Typ();
3479 memset(&r,0,
sizeof(
sleftv));
3487 if (
iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),
myynest,t,&((yyvsp[(3) - (3)].lv).req_packhdl->idroot)))
3490 leftv v=&(yyvsp[(1) - (3)].lv);
3494 (yyval.lv)=(yyvsp[(1) - (3)].lv);
3501 #line 1038 "grammar.y"
3503 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3511 #line 1051 "grammar.y"
3513 leftv v = &(yyvsp[(2) - (5)].lv);
3519 memcpy(v->
next,&((yyvsp[(4) - (5)].lv)),
sizeof(
sleftv));
3520 (yyval.lv) = (yyvsp[(2) - (5)].lv);
3527 #line 1065 "grammar.y"
3537 #line 1073 "grammar.y"
3539 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3542 (*iv)[1] = (yyvsp[(1) - (1)].i);
3544 (yyval.lv).data = (
void *)iv;
3551 #line 1082 "grammar.y"
3553 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3554 leftv sl = &(yyvsp[(3) - (4)].lv);
3558 int l = 2 + slLength;
3560 (*iv)[0] = slLength;
3561 (*iv)[1] = (yyvsp[(1) - (4)].i);
3564 while ((i<l) && (sl!=
NULL))
3568 (*iv)[i++] = (
int)((
long)(sl->
Data()));
3574 int ll = 0,l = ivv->
length();
3577 (*iv)[i++] = (*ivv)[ll++];
3583 (yyvsp[(3) - (4)].lv).CleanUp();
3584 MYYERROR(
"wrong type in ordering");
3589 (yyval.lv).data = (
void *)iv;
3591 (yyvsp[(3) - (4)].lv).CleanUp();
3598 #line 1128 "grammar.y"
3600 (yyval.lv) = (yyvsp[(1) - (3)].lv);
3602 memcpy((yyval.lv).next,&(yyvsp[(3) - (3)].lv),
sizeof(
sleftv));
3609 #line 1138 "grammar.y"
3611 (yyval.lv) = (yyvsp[(2) - (3)].lv);
3618 #line 1144 "grammar.y"
3627 #line 1151 "grammar.y"
3628 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3634 #line 1153 "grammar.y"
3635 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3641 #line 1155 "grammar.y"
3642 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3648 #line 1164 "grammar.y"
3649 {
if ((yyvsp[(1) - (2)].
i) !=
'<')
YYERROR;
3656 #line 1167 "grammar.y"
3663 #line 1172 "grammar.y"
3673 #line 1177 "grammar.y"
3682 #line 1184 "grammar.y"
3692 #line 1192 "grammar.y"
3694 if (
basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
3706 #line 1204 "grammar.y"
3708 leftv v=&(yyvsp[(2) - (2)].lv);
3727 #line 1220 "grammar.y"
3729 leftv v=&(yyvsp[(3) - (3)].lv);
3748 #line 1239 "grammar.y"
3757 #line 1243 "grammar.y"
3766 #line 1247 "grammar.y"
3776 #line 1252 "grammar.y"
3785 #line 1256 "grammar.y"
3794 #line 1260 "grammar.y"
3803 #line 1264 "grammar.y"
3812 #line 1268 "grammar.y"
3814 list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),
"// ",
TRUE);
3815 (yyvsp[(3) - (4)].lv).CleanUp();
3822 #line 1273 "grammar.y"
3826 (yyvsp[(3) - (6)].lv).CleanUp();
3833 #line 1279 "grammar.y"
3837 (yyvsp[(3) - (6)].lv).CleanUp();
3844 #line 1285 "grammar.y"
3848 (yyvsp[(3) - (6)].lv).CleanUp();
3855 #line 1291 "grammar.y"
3859 (yyvsp[(3) - (6)].lv).CleanUp();
3866 #line 1297 "grammar.y"
3870 (yyvsp[(3) - (6)].lv).CleanUp();
3877 #line 1303 "grammar.y"
3881 (yyvsp[(3) - (6)].lv).CleanUp();
3888 #line 1309 "grammar.y"
3892 (yyvsp[(3) - (6)].lv).CleanUp();
3899 #line 1321 "grammar.y"
3908 #line 1327 "grammar.y"
3915 #line 1336 "grammar.y"
3917 const char *ring_name = (yyvsp[(2) - (8)].lv).
name;
3919 rInit(&(yyvsp[(4) - (8)].lv),
3920 &(yyvsp[(6) - (8)].lv),
3921 &(yyvsp[(8) - (8)].lv));
3927 &((yyvsp[(2) - (8)].lv).req_packhdl->idroot),
FALSE);
3928 (yyvsp[(2) - (8)].lv).CleanUp();
3929 if (newRingHdl!=
NULL)
3939 if (newRingHdl==
NULL)
3953 #line 1369 "grammar.y"
3955 const char *ring_name = (yyvsp[(2) - (2)].lv).
name;
3958 (yyvsp[(2) - (2)].lv).CleanUp();
3965 #line 1376 "grammar.y"
3975 #line 1384 "grammar.y"
3984 #line 1393 "grammar.y"
3987 MYYERROR(
"only inside a proc allowed");
3988 const char *
n=(yyvsp[(2) - (2)].lv).Name();
3989 if ((((yyvsp[(2) - (2)].lv).Typ()==
RING_CMD)||((yyvsp[(2) - (2)].lv).Typ()==
QRING_CMD))
3990 && ((yyvsp[(2) - (2)].lv).rtyp==
IDHDL))
3993 if ((yyvsp[(2) - (2)].lv).e!=
NULL) h=
rFindHdl((ring)(yyvsp[(2) - (2)].lv).Data(),
NULL);
4024 #ifdef USE_IILOCALRING
4032 Werror(
"%s is no identifier",n);
4033 (yyvsp[(2) - (2)].lv).CleanUp();
4040 Werror(
"cannot find the name of the basering %s",n);
4041 (yyvsp[(2) - (2)].lv).CleanUp();
4044 (yyvsp[(2) - (2)].lv).CleanUp();
4048 Werror(
"%s is no name of a ring/qring",n);
4049 (yyvsp[(2) - (2)].lv).CleanUp();
4058 #line 1465 "grammar.y"
4060 type_cmd(&((yyvsp[(2) - (2)].lv)));
4067 #line 1469 "grammar.y"
4071 if ((yyvsp[(1) - (1)].lv).rtyp!=
COMMAND)
4074 if ((yyvsp[(1) - (1)].lv).Typ()==
UNKNOWN)
4076 if ((yyvsp[(1) - (1)].lv).
name!=
NULL)
4078 Werror(
"`%s` is undefined",(yyvsp[(1) - (1)].lv).
name);
4087 (yyvsp[(1) - (1)].lv).CleanUp(
currRing);
4095 #line 1498 "grammar.y"
4113 #line 1511 "grammar.y"
4135 #line 1528 "grammar.y"
4149 #line 1537 "grammar.y"
4159 #line 1542 "grammar.y"
4169 #line 1550 "grammar.y"
4172 char *
s = (
char *)
omAlloc( strlen((yyvsp[(2) - (3)].
name)) + strlen((yyvsp[(3) - (3)].
name)) + 36);
4173 sprintf(s,
"whileif (!(%s)) break;\n%scontinue;\n " ,(yyvsp[(2) - (3)].
name),(yyvsp[(3) - (3)].
name));
4183 #line 1562 "grammar.y"
4187 char *
s = (
char *)
omAlloc( strlen((yyvsp[(3) - (5)].
name))+strlen((yyvsp[(4) - (5)].
name))+strlen((yyvsp[(5) - (5)].
name))+36);
4188 sprintf(s,
"forif (!(%s)) break;\n%s%s;\ncontinue;\n "
4189 ,(yyvsp[(3) - (5)].
name),(yyvsp[(5) - (5)].
name),(yyvsp[(4) - (5)].
name));
4194 s = (
char *)
omAlloc( strlen((yyvsp[(2) - (5)].
name)) + 3);
4195 sprintf(s,
"%s;\n",(yyvsp[(2) - (5)].
name));
4204 #line 1581 "grammar.y"
4210 sprintf(
IDPROC(h)->data.s.body,
"parameter list #;\n%s;return();\n\n",(yyvsp[(3) - (3)].name));
4219 #line 1591 "grammar.y"
4232 IDPROC(h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(3) - (3)].
name))+strlen(args)+14);;
4233 sprintf(
IDPROC(h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(3) - (3)].name));
4243 #line 1610 "grammar.y"
4258 IDPROC(h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(4) - (4)].
name))+strlen(args)+14);;
4259 sprintf(
IDPROC(h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(4) - (4)].name));
4268 #line 1633 "grammar.y"
4279 #line 1639 "grammar.y"
4293 #line 1651 "grammar.y"
4296 (yyvsp[(3) - (4)].lv).CleanUp();
4304 #line 1657 "grammar.y"
4306 if ((yyvsp[(1) - (3)].
i)==
RETURN)
4318 #line 4320 "grammar.cc"
4335 yystate = yypgoto[yyn -
YYNTOKENS] + *yyssp;
4336 if (0 <= yystate && yystate <=
YYLAST && yycheck[yystate] == *yyssp)
4337 yystate = yytable[yystate];
4352 #if ! YYERROR_VERBOSE
4356 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
4362 if (yymsg != yymsgbuf)
4366 yymsg_alloc = yyalloc;
4370 yymsg_alloc =
sizeof yymsgbuf;
4374 if (0 < yysize && yysize <= yymsg_alloc)
4376 (void) yysyntax_error (yymsg, yystate, yychar);
4383 goto yyexhaustedlab;
4391 if (yyerrstatus == 3)
4396 if (yychar <=
YYEOF)
4399 if (yychar ==
YYEOF)
4443 yyn = yypact[yystate];
4461 yystos[yystate], yyvsp);
4491 #if !defined(yyoverflow) || YYERROR_VERBOSE
4509 while (yyssp != yyss)
4512 yystos[*yyssp], yyvsp);
4520 if (yymsg != yymsgbuf)
4524 return YYID (yyresult);
char * iiProcArgs(char *e, BOOLEAN withParenth)
const const intvec const intvec const ring _currRing const const intvec const intvec const ring _currRing int
BOOLEAN yyInRingConstruction
const CanonicalForm int s
int iiTestConvert(int inputType, int outputType)
unsigned short int yytype_uint16
Class used for (list of) interpreter objects.
void singular_example(char *str)
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. As defined here, it is merely a helper !!! method for parsing number input strings.
void syMake(leftv v, const char *id, idhdl packhdl)
procinfo * iiInitSingularProcinfo(procinfov pi, const char *libname, const char *procname, int line, long pos, BOOLEAN pstatic)
static void yy_symbol_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
BOOLEAN iiExprArith1(leftv res, leftv a, int op)
Compatiblity layer for legacy polynomial operations (over currRing)
static const yytype_uint16 yyrline[]
int exprlist_length(leftv v)
BOOLEAN iiExprArith3(leftv res, int op, leftv a, leftv b, leftv c)
void killid(const char *id, idhdl *ih)
void writeTime(const char *v)
const CanonicalForm CFMap CFMap int &both_non_zero int n
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
BOOLEAN iiAssignCR(leftv r, leftv arg)
static void yy_symbol_value_print(FILE *yyoutput, int yytype, YYSTYPE const *const yyvaluep)
BOOLEAN iiExprArithM(leftv res, leftv a, int op)
static const yytype_uint16 yyprhs[]
void WerrorS(const char *s)
static void yy_reduce_print(YYSTYPE *yyvsp, int yyrule)
BOOLEAN jjLOAD(const char *s, BOOLEAN autoexport)
load lib/module given in v
BOOLEAN exitBuffer(feBufferTypes typ)
BOOLEAN iiExport(leftv v, int toLev)
idhdl get(const char *s, int lev)
BOOLEAN iiParameter(leftv p)
BOOLEAN iiTestAssume(leftv a, leftv b)
unsigned char yytype_uint8
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
void killhdl2(idhdl h, idhdl *ih, ring r)
idhdl enterid(const char *s, int lev, int t, idhdl *root, BOOLEAN init, BOOLEAN search)
static const yytype_uint8 yyr2[]
const char * iiTwoOps(int t)
void list_cmd(int typ, const char *what, const char *prefix, BOOLEAN iterate, BOOLEAN fullname)
static void yy_stack_print(yytype_int16 *yybottom, yytype_int16 *yytop)
static const yytype_int16 yypact[]
#define YYSTACK_ALLOC_MAXIMUM
void * malloc(size_t size)
#define YY_REDUCE_PRINT(Rule)
int rOrderName(char *ordername)
void idDelete(ideal *h, ring r=currRing)
delete an ideal
#define YY_STACK_PRINT(Bottom, Top)
ring rDefault(const coeffs cf, int N, char **n, int ord_size, int *ord, int *block0, int *block1, int **wvhdl)
FILE * feFopen(const char *path, const char *mode, char *where, short useWerror, short path_only)
idhdl rFindHdl(ring r, idhdl n)
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
static const yytype_int16 yypgoto[]
static const yytype_uint8 yydefact[]
matrix mpNew(int r, int c)
create a r x c zero-matrix
int iiDeclCommand(leftv sy, leftv name, int lev, int t, idhdl *root, BOOLEAN isring, BOOLEAN init_b)
const Variable & v
< [in] a sqrfree bivariate poly
char name(const Variable &v)
static const yytype_uint8 yytranslate[]
const char * Tok2Cmdname(int tok)
void killhdl(idhdl h, package proot)
BOOLEAN iiConvert(int inputType, int outputType, int index, leftv input, leftv output, struct sConvertTypes *dConvertTypes)
void yyerror(const char *fmt)
void CleanUp(ring r=currRing)
static const yytype_int16 yyrhs[]
void newBuffer(char *s, feBufferTypes t, procinfo *pi, int lineno)
BOOLEAN newFile(char *fname, FILE *f)
BOOLEAN iiARROW(leftv r, char *a, char *s)
static const yytype_int16 yytable[]
static const yytype_int16 yydefgoto[]
static const yytype_int16 yycheck[]
ring rInit(sleftv *pn, sleftv *rv, sleftv *ord)
static const yytype_uint8 yyr1[]
static const char *const yytname[]
BOOLEAN iiExprArith2(leftv res, leftv a, int op, leftv b, BOOLEAN proccall)
BOOLEAN iiApply(leftv res, leftv a, int op, leftv proc)
void Werror(const char *fmt,...)
const char * lastreserved
void writeRTime(const char *v)
BOOLEAN iiAssign(leftv l, leftv r, BOOLEAN toplevel)
static const yytype_uint8 yystos[]
BOOLEAN contBuffer(feBufferTypes typ)