48 #define YYBISON_VERSION "2.4.3" 51 #define YYSKELETON_NAME "yacc.c" 63 #define YYLSP_NEEDED 0 117 const char *nn=v->
name;
124 else Print(
"`%s` not found in IDROOT\n",nn);
136 else Print(
"%s::%s not found\n",r->
id,nn);
166 #define YYMAXDEPTH MAX_INT_VAL 177 #define TESTSETINT(a,i) \ 178 if ((a).Typ() != INT_CMD) \ 180 WerrorS("no int expression"); \ 183 (i) = (int)((long)(a).Data());(a).CleanUp() 185 #define MYYERROR(a) { WerrorS(a); YYERROR; } 201 && (strncmp(fmt,
"parse",5)!=0)
202 && (strncmp(fmt,
"syntax",6)!=0))
204 Werror(
"error occurred in or before %s line %d: `%s`" 212 Werror(
"expected %s-expression. type \'help %s;\'",s,s);
216 Werror(
"wrong type declaration. type \'help %s;\'",s);
240 #line 241 "grammar.cc" 248 #ifdef YYERROR_VERBOSE 249 # undef YYERROR_VERBOSE 250 # define YYERROR_VERBOSE 1 252 # define YYERROR_VERBOSE 0 256 #ifndef YYTOKEN_TABLE 257 # define YYTOKEN_TABLE 0 355 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 357 # define yystype YYSTYPE 358 # define YYSTYPE_IS_DECLARED 1 366 #line 367 "grammar.cc" 380 #elif (defined __STDC__ || defined __C99__FUNC__ \ 381 || defined __cplusplus || defined _MSC_VER) 400 # ifdef __SIZE_TYPE__ 401 # define YYSIZE_T __SIZE_TYPE__ 402 # elif defined size_t 403 # define YYSIZE_T size_t 404 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ 405 || defined __cplusplus || defined _MSC_VER) 407 # define YYSIZE_T size_t 409 # define YYSIZE_T unsigned int 413 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 416 # if defined YYENABLE_NLS && YYENABLE_NLS 418 # include <libintl.h> 419 # define YY_(msgid) dgettext ("bison-runtime", msgid) 423 # define YY_(msgid) msgid 428 #if ! defined lint || defined __GNUC__ 429 # define YYUSE(e) ((void) (e)) 438 #if (defined __STDC__ || defined __C99__FUNC__ \ 439 || defined __cplusplus || defined _MSC_VER) 452 #if ! defined yyoverflow || YYERROR_VERBOSE 456 # ifdef YYSTACK_USE_ALLOCA 457 # if YYSTACK_USE_ALLOCA 459 # define YYSTACK_ALLOC __builtin_alloca 460 # elif defined __BUILTIN_VA_ARG_INCR 463 # define YYSTACK_ALLOC __alloca 464 # elif defined _MSC_VER 466 # define alloca _alloca 468 # define YYSTACK_ALLOC alloca 469 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 470 || defined __cplusplus || defined _MSC_VER) 480 # ifdef YYSTACK_ALLOC 482 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0)) 483 # ifndef YYSTACK_ALLOC_MAXIMUM 488 # define YYSTACK_ALLOC_MAXIMUM 4032 491 # define YYSTACK_ALLOC YYMALLOC 492 # define YYSTACK_FREE YYFREE 493 # ifndef YYSTACK_ALLOC_MAXIMUM 494 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 496 # if (defined __cplusplus && ! defined _STDLIB_H \ 497 && ! ((defined YYMALLOC || defined malloc) \ 498 && (defined YYFREE || defined free))) 505 # define YYMALLOC malloc 506 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 507 || defined __cplusplus || defined _MSC_VER) 513 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ 514 || defined __cplusplus || defined _MSC_VER) 522 #if (! defined yyoverflow \ 523 && (! defined __cplusplus \ 524 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 534 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 538 # define YYSTACK_BYTES(N) \ 539 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ 540 + YYSTACK_GAP_MAXIMUM) 545 # if defined __GNUC__ && 1 < __GNUC__ 546 # define YYCOPY(To, From, Count) \ 547 __builtin_memcpy (To, From, (Count) * sizeof (*(From))) 549 # define YYCOPY(To, From, Count) \ 553 for (yyi = 0; yyi < (Count); yyi++) \ 554 (To)[yyi] = (From)[yyi]; \ 565 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 568 YYSIZE_T yynewbytes; \ 569 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 570 Stack = &yyptr->Stack_alloc; \ 571 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 572 yyptr += yynewbytes / sizeof (*yyptr); \ 584 #define YYNTOKENS 103 590 #define YYNSTATES 399 594 #define YYMAXUTOK 340 596 #define YYTRANSLATE(YYX) \ 597 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 602 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
603 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
604 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
605 2, 2, 2, 2, 2, 2, 2, 2, 96, 2,
606 99, 100, 2, 88, 94, 89, 101, 90, 2, 2,
607 2, 2, 2, 2, 2, 2, 2, 2, 97, 95,
608 86, 85, 87, 2, 2, 2, 2, 2, 2, 2,
609 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
610 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
611 2, 91, 2, 92, 93, 2, 102, 2, 2, 2,
612 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
613 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
614 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
615 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
616 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
617 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
618 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
619 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
620 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
621 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
622 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
623 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
624 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
625 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
626 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
627 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
628 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
629 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
630 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
631 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
632 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
633 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
634 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
635 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
644 0, 0, 3, 4, 7, 9, 12, 15, 17, 19,
645 21, 24, 26, 28, 30, 32, 34, 36, 38, 40,
646 43, 45, 47, 49, 51, 53, 55, 57, 59, 61,
647 64, 66, 68, 72, 76, 80, 85, 89, 91, 93,
648 95, 100, 105, 110, 114, 119, 124, 128, 133, 138,
649 143, 148, 155, 162, 169, 176, 185, 194, 203, 212,
650 216, 221, 230, 235, 244, 249, 253, 257, 261, 263,
651 265, 267, 274, 279, 286, 293, 300, 307, 314, 321,
652 325, 331, 337, 338, 344, 347, 350, 352, 355, 358,
653 362, 366, 370, 374, 378, 382, 386, 390, 394, 398,
654 401, 404, 407, 410, 412, 416, 419, 422, 425, 428,
655 437, 440, 444, 447, 449, 451, 457, 459, 461, 466,
656 468, 472, 474, 478, 480, 482, 484, 486, 487, 492,
657 496, 499, 503, 506, 509, 513, 518, 523, 528, 533,
658 538, 543, 548, 553, 560, 567, 574, 581, 588, 595,
659 602, 606, 608, 617, 620, 625, 633, 636, 638, 640,
660 643, 646, 648, 654, 657, 663, 665, 667, 671, 677,
661 681, 685, 690, 693, 696, 701
667 104, 0, -1, -1, 104, 105, -1, 106, -1, 108,
668 95, -1, 120, 95, -1, 147, -1, 80, -1, 95,
669 -1, 1, 95, -1, 142, -1, 143, -1, 107, -1,
670 144, -1, 145, -1, 129, -1, 131, -1, 132, -1,
671 57, 66, -1, 109, -1, 133, -1, 134, -1, 135,
672 -1, 146, -1, 137, -1, 138, -1, 140, -1, 141,
673 -1, 118, 111, -1, 69, -1, 119, -1, 110, 11,
674 110, -1, 112, 101, 110, -1, 110, 99, 100, -1,
675 110, 99, 111, 100, -1, 91, 111, 92, -1, 67,
676 -1, 84, -1, 121, -1, 16, 99, 112, 100, -1,
677 53, 99, 112, 100, -1, 54, 99, 111, 100, -1,
678 54, 99, 100, -1, 55, 99, 112, 100, -1, 56,
679 99, 111, 100, -1, 56, 99, 100, -1, 45, 99,
680 112, 100, -1, 48, 99, 112, 100, -1, 49, 99,
681 112, 100, -1, 51, 99, 112, 100, -1, 46, 99,
682 112, 94, 112, 100, -1, 48, 99, 112, 94, 112,
683 100, -1, 50, 99, 112, 94, 112, 100, -1, 51,
684 99, 112, 94, 112, 100, -1, 47, 99, 112, 94,
685 112, 94, 112, 100, -1, 49, 99, 112, 94, 112,
686 94, 112, 100, -1, 50, 99, 112, 94, 112, 94,
687 112, 100, -1, 51, 99, 112, 94, 112, 94, 112,
688 100, -1, 52, 99, 100, -1, 52, 99, 111, 100,
689 -1, 128, 99, 112, 94, 112, 94, 112, 100, -1,
690 128, 99, 112, 100, -1, 17, 99, 122, 94, 122,
691 94, 126, 100, -1, 17, 99, 112, 100, -1, 119,
692 12, 66, -1, 99, 111, 100, -1, 111, 94, 112,
693 -1, 112, -1, 117, -1, 110, -1, 112, 91, 112,
694 94, 112, 92, -1, 112, 91, 112, 92, -1, 71,
695 99, 112, 94, 45, 100, -1, 71, 99, 112, 94,
696 48, 100, -1, 71, 99, 112, 94, 49, 100, -1,
697 71, 99, 112, 94, 51, 100, -1, 71, 99, 112,
698 94, 52, 100, -1, 71, 99, 112, 94, 112, 100,
699 -1, 114, 112, 116, -1, 114, 112, 85, 112, 116,
700 -1, 115, 112, 94, 112, 116, -1, -1, 76, 99,
701 113, 112, 100, -1, 77, 99, -1, 72, 99, -1,
702 100, -1, 112, 10, -1, 112, 7, -1, 112, 88,
703 112, -1, 112, 89, 112, -1, 112, 90, 112, -1,
704 112, 93, 112, -1, 112, 86, 112, -1, 112, 96,
705 112, -1, 112, 9, 112, -1, 112, 4, 112, -1,
706 112, 3, 112, -1, 112, 97, 112, -1, 8, 112,
707 -1, 89, 112, -1, 120, 127, -1, 111, 85, -1,
708 68, -1, 102, 112, 102, -1, 53, 110, -1, 54,
709 110, -1, 55, 110, -1, 56, 110, -1, 128, 110,
710 91, 112, 92, 91, 112, 92, -1, 128, 110, -1,
711 120, 94, 110, -1, 16, 110, -1, 65, -1, 112,
712 -1, 99, 112, 94, 111, 100, -1, 68, -1, 123,
713 -1, 123, 99, 111, 100, -1, 124, -1, 124, 94,
714 125, -1, 124, -1, 99, 125, 100, -1, 85, -1,
715 21, -1, 15, -1, 14, -1, -1, 86, 121, 130,
716 95, -1, 59, 65, 95, -1, 59, 95, -1, 57,
717 65, 95, -1, 58, 111, -1, 60, 110, -1, 134,
718 94, 110, -1, 62, 99, 53, 100, -1, 62, 99,
719 54, 100, -1, 62, 99, 55, 100, -1, 62, 99,
720 56, 100, -1, 62, 99, 17, 100, -1, 62, 99,
721 128, 100, -1, 62, 99, 16, 100, -1, 62, 99,
722 110, 100, -1, 62, 99, 110, 94, 53, 100, -1,
723 62, 99, 110, 94, 54, 100, -1, 62, 99, 110,
724 94, 55, 100, -1, 62, 99, 110, 94, 56, 100,
725 -1, 62, 99, 110, 94, 17, 100, -1, 62, 99,
726 110, 94, 128, 100, -1, 62, 99, 110, 94, 16,
727 100, -1, 62, 99, 100, -1, 17, -1, 136, 110,
728 127, 122, 94, 122, 94, 126, -1, 136, 110, -1,
729 136, 110, 127, 110, -1, 136, 110, 127, 110, 91,
730 111, 92, -1, 84, 121, -1, 63, -1, 31, -1,
731 139, 112, -1, 64, 112, -1, 111, -1, 79, 99,
732 112, 100, 66, -1, 75, 66, -1, 79, 99, 112,
733 100, 73, -1, 73, -1, 74, -1, 81, 65, 66,
734 -1, 78, 65, 65, 65, 66, -1, 16, 119, 66,
735 -1, 70, 65, 66, -1, 70, 65, 65, 66, -1,
736 83, 120, -1, 83, 112, -1, 82, 99, 111, 100,
743 0, 316, 316, 318, 352, 353, 355, 357, 361, 366,
744 368, 419, 420, 421, 422, 423, 424, 425, 426, 430,
745 433, 434, 435, 436, 437, 438, 439, 440, 441, 444,
746 451, 456, 460, 464, 468, 472, 486, 514, 538, 544,
747 550, 554, 558, 562, 566, 570, 574, 578, 582, 586,
748 590, 594, 598, 602, 606, 610, 614, 618, 622, 626,
749 630, 636, 640, 644, 648, 652, 656, 660, 671, 677,
750 682, 683, 687, 691, 695, 699, 703, 707, 711, 715,
751 719, 736, 743, 742, 760, 768, 776, 785, 789, 793,
752 797, 801, 805, 809, 813, 817, 821, 825, 829, 833,
753 845, 852, 853, 872, 873, 885, 890, 895, 899, 903,
754 939, 965, 986, 994, 998, 999, 1013, 1021, 1030, 1075,
755 1076, 1085, 1086, 1092, 1099, 1101, 1103, 1113, 1112, 1120,
756 1125, 1132, 1140, 1152, 1169, 1189, 1193, 1197, 1202, 1206,
757 1210, 1214, 1218, 1223, 1229, 1235, 1241, 1247, 1253, 1259,
758 1271, 1278, 1282, 1319, 1326, 1331, 1344, 1350, 1350, 1353,
759 1421, 1425, 1454, 1467, 1484, 1493, 1498, 1506, 1518, 1537,
760 1547, 1566, 1589, 1595, 1607, 1613
764 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE 769 "$end",
"error",
"$undefined",
"DOTDOT",
"EQUAL_EQUAL",
"GE",
"LE",
770 "MINUSMINUS",
"NOT",
"NOTEQUAL",
"PLUSPLUS",
"COLONCOLON",
"ARROW",
771 "GRING_CMD",
"BIGINTMAT_CMD",
"INTMAT_CMD",
"PROC_CMD",
"RING_CMD",
772 "BEGIN_RING",
"IDEAL_CMD",
"MAP_CMD",
"MATRIX_CMD",
"MODUL_CMD",
773 "NUMBER_CMD",
"POLY_CMD",
"RESOLUTION_CMD",
"VECTOR_CMD",
"BETTI_CMD",
774 "E_CMD",
"FETCH_CMD",
"FREEMODULE_CMD",
"KEEPRING_CMD",
"IMAP_CMD",
775 "KOSZUL_CMD",
"MAXID_CMD",
"MONOM_CMD",
"PAR_CMD",
"PREIMAGE_CMD",
776 "VAR_CMD",
"VALTVARS",
"VMAXDEG",
"VMAXMULT",
"VNOETHER",
"VMINPOLY",
777 "END_RING",
"CMD_1",
"CMD_2",
"CMD_3",
"CMD_12",
"CMD_13",
"CMD_23",
778 "CMD_123",
"CMD_M",
"ROOT_DECL",
"ROOT_DECL_LIST",
"RING_DECL",
779 "RING_DECL_LIST",
"EXAMPLE_CMD",
"EXPORT_CMD",
"HELP_CMD",
"KILL_CMD",
780 "LIB_CMD",
"LISTVAR_CMD",
"SETRING_CMD",
"TYPE_CMD",
"STRINGTOK",
781 "BLOCKTOK",
"INT_CONST",
"UNKNOWN_IDENT",
"RINGVAR",
"PROC_DEF",
"APPLY",
782 "ASSUME_CMD",
"BREAK_CMD",
"CONTINUE_CMD",
"ELSE_CMD",
"EVAL",
"QUOTE",
783 "FOR_CMD",
"IF_CMD",
"SYS_BREAK",
"WHILE_CMD",
"RETURN",
"PARAMETER",
784 "SYSVAR",
"'='",
"'<'",
"'>'",
"'+'",
"'-'",
"'/'",
"'['",
"']'",
"'^'",
785 "','",
"';'",
"'&'",
"':'",
"UMINUS",
"'('",
"')'",
"'.'",
"'`'",
786 "$accept",
"lines",
"pprompt",
"flowctrl",
"example_dummy",
"command",
787 "assign",
"elemexpr",
"exprlist",
"expr",
"$@1",
"quote_start",
788 "assume_start",
"quote_end",
"expr_arithmetic",
"left_value",
789 "extendedid",
"declare_ip_variable",
"stringexpr",
"rlist",
"ordername",
790 "orderelem",
"OrderingList",
"ordering",
"cmdeq",
"mat_cmd",
"filecmd",
791 "$@2",
"helpcmd",
"examplecmd",
"exportcmd",
"killcmd",
"listcmd",
792 "ringcmd1",
"ringcmd",
"scriptcmd",
"setrings",
"setringcmd",
"typecmd",
793 "ifcmd",
"whilecmd",
"forcmd",
"proccmd",
"parametercmd",
"returncmd", 0
802 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
803 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
804 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
805 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
806 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
807 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
808 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
809 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
810 335, 336, 337, 338, 339, 61, 60, 62, 43, 45,
811 47, 91, 93, 94, 44, 59, 38, 58, 340, 40,
819 0, 103, 104, 104, 105, 105, 105, 105, 105, 105,
820 105, 106, 106, 106, 106, 106, 106, 106, 106, 107,
821 108, 108, 108, 108, 108, 108, 108, 108, 108, 109,
822 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
823 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
824 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
825 110, 110, 110, 110, 110, 110, 110, 111, 111, 112,
826 112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
827 112, 112, 113, 112, 114, 115, 116, 117, 117, 117,
828 117, 117, 117, 117, 117, 117, 117, 117, 117, 117,
829 117, 118, 118, 119, 119, 120, 120, 120, 120, 120,
830 120, 120, 120, 121, 122, 122, 123, 124, 124, 125,
831 125, 126, 126, 127, 128, 128, 128, 130, 129, 131,
832 131, 132, 133, 134, 134, 135, 135, 135, 135, 135,
833 135, 135, 135, 135, 135, 135, 135, 135, 135, 135,
834 135, 136, 137, 137, 137, 137, 138, 139, 139, 140,
835 141, 141, 142, 142, 142, 142, 142, 143, 144, 145,
836 145, 145, 146, 146, 147, 147
842 0, 2, 0, 2, 1, 2, 2, 1, 1, 1,
843 2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
844 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
845 1, 1, 3, 3, 3, 4, 3, 1, 1, 1,
846 4, 4, 4, 3, 4, 4, 3, 4, 4, 4,
847 4, 6, 6, 6, 6, 8, 8, 8, 8, 3,
848 4, 8, 4, 8, 4, 3, 3, 3, 1, 1,
849 1, 6, 4, 6, 6, 6, 6, 6, 6, 3,
850 5, 5, 0, 5, 2, 2, 1, 2, 2, 3,
851 3, 3, 3, 3, 3, 3, 3, 3, 3, 2,
852 2, 2, 2, 1, 3, 2, 2, 2, 2, 8,
853 2, 3, 2, 1, 1, 5, 1, 1, 4, 1,
854 3, 1, 3, 1, 1, 1, 1, 0, 4, 3,
855 2, 3, 2, 2, 3, 4, 4, 4, 4, 4,
856 4, 4, 4, 6, 6, 6, 6, 6, 6, 6,
857 3, 1, 8, 2, 4, 7, 2, 1, 1, 2,
858 2, 1, 5, 2, 5, 1, 1, 3, 5, 3,
867 2, 0, 1, 0, 0, 126, 125, 0, 151, 124,
868 158, 0, 0, 0, 0, 0, 0, 0, 0, 0,
869 0, 0, 0, 0, 0, 0, 0, 0, 157, 0,
870 113, 37, 103, 30, 0, 0, 0, 165, 166, 0,
871 0, 0, 0, 0, 8, 0, 0, 0, 38, 0,
872 0, 0, 9, 0, 0, 3, 4, 13, 0, 20,
873 70, 161, 68, 0, 0, 69, 0, 31, 0, 39,
874 0, 16, 17, 18, 21, 22, 23, 0, 25, 26,
875 0, 27, 28, 11, 12, 14, 15, 24, 7, 10,
876 0, 0, 0, 0, 0, 0, 38, 99, 0, 0,
877 70, 0, 31, 0, 0, 0, 0, 0, 0, 0,
878 0, 0, 0, 70, 0, 70, 0, 70, 0, 70,
879 0, 19, 132, 0, 130, 70, 0, 160, 0, 0,
880 85, 163, 82, 84, 0, 0, 0, 0, 0, 173,
881 172, 156, 127, 100, 0, 0, 0, 5, 0, 0,
882 102, 0, 0, 0, 88, 0, 87, 0, 0, 0,
883 0, 0, 0, 0, 0, 0, 0, 0, 29, 0,
884 123, 0, 6, 101, 0, 70, 0, 70, 159, 0,
885 0, 0, 0, 0, 0, 68, 169, 0, 114, 0,
886 0, 0, 0, 0, 0, 0, 0, 59, 0, 68,
887 43, 0, 68, 46, 0, 131, 129, 0, 0, 0,
888 0, 0, 0, 150, 70, 0, 0, 170, 0, 0,
889 0, 0, 167, 175, 0, 0, 36, 66, 104, 32,
890 34, 0, 67, 97, 96, 95, 93, 89, 90, 91,
891 0, 92, 94, 98, 33, 0, 86, 79, 0, 65,
892 70, 0, 0, 70, 0, 0, 0, 0, 0, 0,
893 0, 40, 68, 64, 0, 47, 0, 0, 0, 48,
894 0, 49, 0, 0, 50, 60, 41, 42, 44, 45,
895 141, 139, 135, 136, 137, 138, 0, 142, 140, 171,
896 0, 0, 0, 0, 174, 128, 35, 72, 0, 0,
897 0, 0, 62, 0, 70, 114, 0, 42, 45, 0,
898 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
899 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
900 83, 168, 162, 164, 0, 80, 81, 0, 0, 0,
901 0, 0, 0, 51, 0, 52, 0, 0, 53, 0,
902 54, 149, 147, 143, 144, 145, 146, 148, 73, 74,
903 75, 76, 77, 78, 71, 0, 0, 0, 0, 115,
904 116, 0, 117, 121, 0, 0, 0, 0, 0, 0,
905 0, 155, 0, 119, 0, 0, 63, 55, 56, 57,
906 58, 61, 109, 152, 0, 122, 0, 120, 118
912 -1, 1, 55, 56, 57, 58, 59, 60, 145, 62,
913 219, 63, 64, 247, 65, 66, 67, 68, 69, 189,
914 372, 373, 384, 374, 173, 98, 71, 225, 72, 73,
915 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
921 #define YYPACT_NINF -365 924 -365, 374, -365, -71, 1840, -365, -365, 1905, -63, -365,
925 -365, -44, -24, -19, -15, -10, 8, 15, 25, 1970,
926 2035, 2100, 2165, -38, 1840, -60, 1840, 29, -365, 1840,
927 -365, -365, -365, -365, 65, 35, 48, -365, -365, 1,
928 71, 74, 111, 80, -365, 124, 87, 2230, 128, 128,
929 1840, 1840, -365, 1840, 1840, -365, -365, -365, 88, -365,
930 2, -76, 1348, 1840, 1840, -365, 1840, 187, -73, -365,
931 2295, -365, -365, -365, -365, 108, -365, 1840, -365, -365,
932 1840, -365, -365, -365, -365, -365, -365, -365, -365, -365,
933 107, -63, 109, 119, 123, 126, -365, 42, 134, 1840,
934 208, 1348, -6, 2360, 1840, 1840, 1840, 1840, 1840, 1840,
935 1840, 1450, 1840, 216, 1515, 249, 1840, 284, 1580, 581,
936 140, -365, 149, 150, -365, -7, 1645, 1348, -12, 1840,
937 -365, -365, -365, -365, 189, 1840, 195, 1710, 1905, 1348,
938 163, -365, -365, 42, -51, -74, 7, -365, 1840, 1775,
939 -365, 1840, 1840, 1840, -365, 1840, -365, 1840, 1840, 1840,
940 1840, 1840, 1840, 1840, 1840, 1840, 162, 563, 149, 201,
941 -365, 1840, -365, -365, 1840, -9, 1840, 68, 1348, 1840,
942 1840, 1515, 1840, 1580, 1840, 635, -365, 1840, 658, 171,
943 674, 690, 704, 266, 399, 730, 468, -365, -69, 799,
944 -365, -62, 825, -365, -55, -365, -365, 12, 46, 92,
945 97, 121, 138, -365, 130, 141, 212, -365, 841, 1840,
946 209, 855, -365, -365, -52, 190, -365, -365, -365, -365,
947 -365, -43, 1348, 30, 191, 191, 239, 84, 84, 42,
948 494, 51, 1362, 84, -365, 1840, -365, -365, 1840, -365,
949 611, 508, 1840, 55, 2360, 635, 799, -32, 825, -31,
950 508, -365, 871, -365, 2360, -365, 1840, 1840, 1840, -365,
951 1840, -365, 1840, 1840, -365, -365, -365, -365, -365, -365,
952 -365, -365, -365, -365, -365, -365, 521, -365, -365, -365,
953 2425, 894, 221, -58, -365, -365, -365, -365, 1840, 966,
954 966, 1840, -365, 989, 173, 1348, 202, -365, -365, 1840,
955 211, 1003, 1019, 1033, 1061, 524, 540, 214, 217, 223,
956 226, 231, 233, 235, 199, 213, 246, 265, 271, 1128,
957 -365, -365, -365, -365, 1156, -365, -365, 1170, 218, 1840,
958 2360, -30, -65, -365, 1840, -365, 1840, 1840, -365, 1840,
959 -365, -365, -365, -365, -365, -365, -365, -365, -365, -365,
960 -365, -365, -365, -365, -365, 1840, 1840, -48, 227, -365,
961 -365, 269, 240, -365, 241, 1184, 1200, 1223, 1295, 1318,
962 1334, -365, -65, 253, 251, 1840, -365, -365, -365, -365,
963 -365, -365, -365, -365, 269, -365, -17, -365, -365
969 -365, -365, -365, -365, -365, -365, -365, 118, -1, 52,
970 -365, -365, -365, 77, -365, -365, 342, 311, 242, -235,
971 -365, -364, -33, -14, 196, 0, -365, -365, -365, -365,
972 -365, -365, -365, -365, -365, -365, -365, -365, -365, -365,
973 -365, -365, -365, -365, -365
980 #define YYTABLE_NINF -155 983 61, 70, 148, 370, 148, 123, 169, 383, 332, 150,
984 152, 153, 170, 148, 154, 333, 155, 156, 151, 306,
985 151, 171, 172, 122, 89, 151, 227, 120, 121, 310,
986 383, 275, 151, -155, 371, 124, 103, 154, 277, 151,
987 156, 226, 151, 151, 381, 279, 151, 70, 294, 154,
988 144, 151, 156, 216, 217, 104, 97, 296, 154, 101,
989 186, 156, 151, 151, 151, 168, 148, 131, 307, 308,
990 369, 101, 101, 101, 101, 105, -110, 151, 101, 148,
991 106, 127, 252, 398, 107, -110, -110, -133, -133, 108,
992 149, 154, 149, 157, 156, 158, 159, 160, 161, 139,
993 162, 149, 143, 163, 164, 368, 146, 109, 165, 228,
994 198, 179, 280, 201, 110, 166, 167, 204, 158, 159,
995 160, 161, 101, 162, 111, 100, 215, 164, 126, 101,
996 128, 165, 178, 161, 129, 162, 224, 113, 115, 117,
997 119, 148, 161, 165, 125, 103, 281, 130, 231, -134,
998 -134, 185, 165, 170, 149, 188, 190, 191, 192, 193,
999 194, 195, 196, -153, 199, 152, 153, 149, 202, 154,
1000 132, 155, 156, 133, 160, 161, 134, 162, 101, 135,
1001 257, 218, 259, 147, 148, 165, 137, 221, 175, 136,
1002 101, 180, 282, 30, 152, 177, 181, 283, 154, 169,
1003 101, 156, 176, 232, 233, 234, 179, 235, 180, 236,
1004 237, 238, 239, 240, 241, 242, 243, 101, 181, 148,
1005 182, 284, 182, 101, 286, 183, 251, 148, 101, 149,
1006 287, 255, 256, 184, 258, 205, 260, 183, 285, 262,
1007 184, 288, 152, 151, 214, 206, 154, 245, 157, 156,
1008 158, 159, 160, 161, 220, 162, 100, 171, 163, 164,
1009 148, 222, 246, 165, 339, 264, 229, 249, -154, 152,
1010 153, 291, 149, 154, 292, 155, 156, 157, 289, 158,
1011 159, 160, 161, 244, 162, 295, 323, 331, 164, 250,
1012 141, 142, 165, -112, 253, 148, 340, 299, 104, 358,
1013 300, -105, -112, -112, 303, 342, 305, 149, 341, 366,
1014 -105, -105, 107, 359, 351, 149, 305, 352, 311, 312,
1015 313, 382, 314, 353, 315, 316, 354, 158, 159, 160,
1016 161, 355, 162, 356, -106, 357, 164, 370, 367, 385,
1017 165, 386, 329, -106, -106, 108, 360, 394, 149, 102,
1018 334, 395, 157, 337, 158, 159, 160, 161, 140, 162,
1019 268, 397, 163, 164, 110, 361, 269, 165, 393, -107,
1020 111, 362, 304, 254, 2, 3, 335, 336, -107, -107,
1021 0, 0, 4, 149, 396, 0, 0, 0, 5, 6,
1022 7, 8, 305, 0, 0, 9, 375, 0, 376, 377,
1023 0, 378, 152, 153, 0, 10, 154, 0, 155, 156,
1024 0, 0, 0, 0, 0, 0, 0, 379, 380, 11,
1025 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1026 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
1027 0, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1028 40, 41, 42, 43, 44, 45, 46, 47, 48, 0,
1029 49, 0, 0, 50, 0, 51, 0, 0, 0, 52,
1030 0, 152, 153, 53, 0, 154, 54, 155, 156, 0,
1031 0, 0, 0, 0, 0, 157, 0, 158, 159, 160,
1032 161, 0, 162, 270, 0, 163, 164, 152, 153, 271,
1033 165, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1034 0, 152, 153, 0, 0, 154, 0, 155, 156, 0,
1035 0, 0, 0, 0, 0, 0, 0, 152, 153, 0,
1036 0, 154, 0, 155, 156, 5, 6, 317, 318, 0,
1037 0, 0, 9, 152, 153, 0, 0, 154, 0, 155,
1038 156, 0, 0, 0, 157, 0, 158, 159, 160, 161,
1039 0, 162, 273, 0, 163, 164, 152, 153, 274, 165,
1040 154, 0, 155, 156, 319, 320, 321, 322, 0, 0,
1041 157, 0, 158, 159, 160, 161, 297, 162, 298, 0,
1042 163, 164, 148, 0, 157, 165, 158, 159, 160, 161,
1043 0, 162, 301, 0, 163, 164, 0, 0, 302, 165,
1044 157, 0, 158, 159, 160, 161, 0, 162, 347, 0,
1045 163, 164, 148, 0, 348, 165, 157, 0, 158, 159,
1046 160, 161, 0, 162, 349, 0, 163, 164, 152, 153,
1047 350, 165, 154, 0, 155, 156, 0, 0, 0, 157,
1048 0, 158, 159, 160, 161, 0, 162, 248, 0, 163,
1049 164, 152, 153, 0, 165, 154, -108, 155, 156, 0,
1050 0, 0, 0, 0, 0, -108, -108, 152, 153, 0,
1051 149, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1052 0, 0, 0, 152, 153, 0, -111, 154, 0, 155,
1053 156, 0, 0, 0, 0, -111, -111, 152, 153, 0,
1054 149, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1055 0, 157, 0, 158, 159, 160, 161, 0, 162, 0,
1056 0, 163, 164, 152, 153, 261, 165, 154, 0, 155,
1057 156, 0, 0, 0, 157, 0, 158, 159, 160, 161,
1058 0, 162, 0, 0, 163, 164, 0, 0, 263, 165,
1059 157, 0, 158, 159, 160, 161, 0, 162, 0, 0,
1060 163, 164, 0, 0, 265, 165, 157, 0, 158, 159,
1061 160, 161, 0, 162, 266, 0, 163, 164, 0, 0,
1062 157, 165, 158, 159, 160, 161, 0, 162, 267, 0,
1063 163, 164, 152, 153, 0, 165, 154, 0, 155, 156,
1064 0, 0, 0, 0, 0, 0, 157, 0, 158, 159,
1065 160, 161, 0, 162, 272, 0, 163, 164, 152, 153,
1066 0, 165, 154, 0, 155, 156, 0, 0, 0, 0,
1067 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1068 155, 156, 0, 0, 0, 0, 0, 0, 152, 153,
1069 0, 0, 154, 0, 155, 156, 0, 0, 0, 0,
1070 0, 0, 0, 0, 152, 153, 0, 0, 154, 0,
1071 155, 156, 0, 0, 0, 157, 0, 158, 159, 160,
1072 161, 0, 162, 0, 0, 163, 164, 152, 153, 276,
1073 165, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1074 0, 157, 0, 158, 159, 160, 161, 0, 162, 0,
1075 0, 163, 164, 0, 0, 278, 165, 157, 0, 158,
1076 159, 160, 161, 0, 162, 290, 0, 163, 164, 0,
1077 0, 157, 165, 158, 159, 160, 161, 0, 162, 0,
1078 0, 163, 164, 0, 0, 293, 165, 157, 0, 158,
1079 159, 160, 161, 0, 162, 309, 0, 163, 164, 152,
1080 153, 0, 165, 154, 0, 155, 156, 0, 0, 0,
1081 157, 0, 158, 159, 160, 161, 0, 162, 0, 0,
1082 163, 164, 152, 153, 330, 165, 154, 0, 155, 156,
1083 0, 0, 0, 0, 0, 0, 152, 153, 0, 0,
1084 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1085 0, 0, 152, 153, 0, 0, 154, 0, 155, 156,
1086 0, 0, 0, 0, 0, 0, 152, 153, 0, 0,
1087 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1088 0, 0, 157, 0, 158, 159, 160, 161, 0, 162,
1089 0, 0, 163, 164, 152, 153, 246, 165, 154, 0,
1090 155, 156, 0, 0, 0, 157, 0, 158, 159, 160,
1091 161, 338, 162, 0, 0, 163, 164, 0, 0, 157,
1092 165, 158, 159, 160, 161, 0, 162, 0, 0, 163,
1093 164, 0, 0, 343, 165, 157, 0, 158, 159, 160,
1094 161, 0, 162, 344, 0, 163, 164, 0, 0, 157,
1095 165, 158, 159, 160, 161, 0, 162, 0, 0, 163,
1096 164, 152, 153, 345, 165, 154, 0, 155, 156, 0,
1097 0, 0, 0, 0, 0, 0, 0, 157, 0, 158,
1098 159, 160, 161, 0, 162, 346, 0, 163, 164, 152,
1099 153, 0, 165, 154, 0, 155, 156, 0, 0, 0,
1100 0, 0, 0, 152, 153, 0, 0, 154, 0, 155,
1101 156, 0, 0, 0, 0, 0, 0, 152, 153, 0,
1102 0, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1103 0, 0, 0, 152, 153, 0, 0, 154, 0, 155,
1104 156, 0, 0, 0, 157, 0, 158, 159, 160, 161,
1105 0, 162, 0, 0, 163, 164, 152, 153, 363, 165,
1106 154, 0, 155, 156, 0, 0, 0, 0, 0, 0,
1107 0, 0, 157, 0, 158, 159, 160, 161, 364, 162,
1108 0, 0, 163, 164, 0, 0, 157, 165, 158, 159,
1109 160, 161, 0, 162, 365, 0, 163, 164, 0, 0,
1110 157, 165, 158, 159, 160, 161, 0, 162, 0, 0,
1111 163, 164, 0, 0, 387, 165, 157, 0, 158, 159,
1112 160, 161, 0, 162, 0, 0, 163, 164, 152, 153,
1113 388, 165, 154, 0, 155, 156, 0, 0, 0, 157,
1114 0, 158, 159, 160, 161, 0, 162, 0, 0, 163,
1115 164, 152, 153, 389, 165, 154, 0, 155, 156, 0,
1116 0, 0, 0, 0, 0, 0, 0, 152, 153, 0,
1117 0, 154, 0, 155, 156, 0, 0, 0, 0, 0,
1118 0, 152, 153, 0, 0, 154, 0, 155, 156, 0,
1119 0, 0, 0, 0, 0, 152, 153, 0, 0, 154,
1120 0, 155, 156, 0, 0, 0, 0, 0, 0, 0,
1121 0, 157, 0, 158, 159, 160, 161, 0, 162, 0,
1122 0, 163, 164, 0, 0, 390, 165, 0, 0, 0,
1123 0, 0, 0, 0, 157, 0, 158, 159, 160, 161,
1124 0, 162, 0, 0, 163, 164, 0, 0, 391, 165,
1125 157, 0, 158, 159, 160, 161, 392, 162, 0, 0,
1126 163, 164, 0, 0, 157, 165, 158, 159, 160, 161,
1127 0, 162, 0, 0, 163, 164, 0, 0, 157, 165,
1128 158, 159, 160, 161, 0, 162, 0, 0, 4, 164,
1129 0, 0, 0, 165, 5, 6, 90, 91, 0, 0,
1130 0, 9, 0, 0, 0, 0, 0, 0, 0, 0,
1131 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1132 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1133 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1134 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1135 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1136 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1137 0, 51, 0, 0, 0, 0, 0, 0, 0, 53,
1138 197, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1139 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1140 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1141 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1142 0, 40, 41, 0, 5, 6, 90, 91, 0, 96,
1143 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1144 0, 0, 0, 0, 53, 200, 0, 54, 0, 0,
1145 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1146 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1147 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1148 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1149 6, 207, 208, 0, 96, 0, 9, 0, 0, 50,
1150 0, 51, 0, 0, 0, 0, 0, 0, 0, 53,
1151 203, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1152 11, 12, 13, 14, 15, 16, 17, 18, 209, 210,
1153 211, 212, 0, 0, 0, 0, 0, 0, 0, 0,
1154 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1155 0, 40, 41, 0, 5, 6, 90, 91, 0, 96,
1156 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1157 0, 0, 0, 0, 53, 213, 0, 54, 0, 0,
1158 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1159 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1160 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1161 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1162 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1163 0, 51, 0, 0, 0, 0, 0, 0, 0, 53,
1164 223, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1165 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1166 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1167 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1168 0, 40, 41, 0, 5, 6, 90, 91, 0, 96,
1169 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1170 0, 0, 0, 0, 53, 230, 0, 54, 0, 0,
1171 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1172 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1173 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1174 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1175 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1176 0, 51, 0, 0, 0, 0, 0, 0, 0, 53,
1177 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1178 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1179 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1180 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1181 0, 40, 41, 0, 5, 6, 90, 91, 0, 96,
1182 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1183 0, 0, 0, 0, 99, 0, 0, 54, 0, 0,
1184 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1185 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1186 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1187 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1188 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1189 0, 51, 0, 0, 0, 0, 0, 0, 0, 112,
1190 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1191 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1192 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1193 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1194 0, 40, 41, 0, 5, 6, 90, 91, 0, 96,
1195 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1196 0, 0, 0, 0, 114, 0, 0, 54, 0, 0,
1197 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1198 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1199 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1200 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1201 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1202 0, 51, 0, 0, 0, 0, 0, 0, 0, 116,
1203 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1204 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1205 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1206 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1207 0, 40, 41, 0, 5, 6, 138, 91, 0, 96,
1208 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1209 0, 0, 0, 0, 118, 0, 0, 54, 0, 0,
1210 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1211 16, 17, 18, 19, 20, 21, 22, 0, 0, 0,
1212 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1213 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1214 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1215 0, 51, 0, 0, 0, 0, 0, 0, 0, 53,
1216 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1217 11, 12, 13, 14, 15, 16, 17, 18, 92, 93,
1218 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1219 30, 0, 31, 32, 33, 0, 35, 36, 4, 0,
1220 0, 40, 41, 0, 5, 6, 90, 91, 0, 96,
1221 0, 9, 0, 0, 50, 0, 51, 0, 0, 0,
1222 0, 0, 0, 0, 174, 0, 0, 54, 0, 0,
1223 0, 0, 0, 0, 0, 11, 12, 13, 14, 15,
1224 16, 17, 18, 92, 93, 94, 95, 0, 0, 0,
1225 0, 0, 0, 0, 0, 30, 0, 31, 32, 33,
1226 0, 35, 36, 4, 0, 0, 40, 41, 0, 5,
1227 6, 90, 91, 0, 96, 0, 9, 0, 0, 50,
1228 0, 51, 0, 0, 0, 0, 0, 0, 0, 187,
1229 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
1230 324, 12, 13, 325, 326, 16, 327, 328, 92, 93,
1231 94, 95, 0, 0, 0, 0, 0, 0, 0, 0,
1232 30, 0, 31, 32, 33, 0, 35, 36, 0, 0,
1233 0, 40, 41, 0, 0, 0, 0, 0, 0, 96,
1234 0, 0, 0, 0, 50, 0, 51, 0, 0, 0,
1235 0, 0, 0, 0, 53, 0, 0, 54
1240 1, 1, 11, 68, 11, 65, 12, 371, 66, 85,
1241 3, 4, 85, 11, 7, 73, 9, 10, 94, 254,
1242 94, 94, 95, 24, 95, 94, 100, 65, 66, 264,
1243 394, 100, 94, 3, 99, 95, 99, 7, 100, 94,
1244 10, 92, 94, 94, 92, 100, 94, 47, 100, 7,
1245 51, 94, 10, 65, 66, 99, 4, 100, 7, 7,
1246 66, 10, 94, 94, 94, 66, 11, 66, 100, 100,
1247 100, 19, 20, 21, 22, 99, 85, 94, 26, 11,
1248 99, 29, 91, 100, 99, 94, 95, 94, 95, 99,
1249 99, 7, 99, 86, 10, 88, 89, 90, 91, 47,
1250 93, 99, 50, 96, 97, 340, 54, 99, 101, 102,
1251 111, 99, 100, 114, 99, 63, 64, 118, 88, 89,
1252 90, 91, 70, 93, 99, 7, 126, 97, 99, 77,
1253 65, 101, 80, 91, 99, 93, 137, 19, 20, 21,
1254 22, 11, 91, 101, 26, 99, 100, 99, 149, 94,
1255 95, 99, 101, 85, 99, 103, 104, 105, 106, 107,
1256 108, 109, 110, 95, 112, 3, 4, 99, 116, 7,
1257 99, 9, 10, 99, 90, 91, 65, 93, 126, 99,
1258 181, 129, 183, 95, 11, 101, 99, 135, 70, 65,
1259 138, 99, 100, 65, 3, 77, 99, 100, 7, 12,
1260 148, 10, 94, 151, 152, 153, 99, 155, 99, 157,
1261 158, 159, 160, 161, 162, 163, 164, 165, 99, 11,
1262 99, 100, 99, 171, 94, 99, 174, 11, 176, 99,
1263 100, 179, 180, 99, 182, 95, 184, 99, 100, 187,
1264 99, 100, 3, 94, 126, 95, 7, 85, 86, 10,
1265 88, 89, 90, 91, 65, 93, 138, 94, 96, 97,
1266 11, 66, 100, 101, 91, 94, 148, 66, 95, 3,
1267 4, 219, 99, 7, 65, 9, 10, 86, 66, 88,
1268 89, 90, 91, 165, 93, 95, 286, 66, 97, 171,
1269 48, 49, 101, 85, 176, 11, 94, 245, 99, 100,
1270 248, 85, 94, 95, 252, 94, 254, 99, 309, 91,
1271 94, 95, 99, 100, 100, 99, 264, 100, 266, 267,
1272 268, 94, 270, 100, 272, 273, 100, 88, 89, 90,
1273 91, 100, 93, 100, 85, 100, 97, 68, 339, 99,
1274 101, 100, 290, 94, 95, 99, 100, 94, 99, 7,
1275 298, 100, 86, 301, 88, 89, 90, 91, 47, 93,
1276 94, 394, 96, 97, 99, 100, 100, 101, 382, 85,
1277 99, 100, 254, 177, 0, 1, 299, 300, 94, 95,
1278 -1, -1, 8, 99, 385, -1, -1, -1, 14, 15,
1279 16, 17, 340, -1, -1, 21, 344, -1, 346, 347,
1280 -1, 349, 3, 4, -1, 31, 7, -1, 9, 10,
1281 -1, -1, -1, -1, -1, -1, -1, 365, 366, 45,
1282 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1283 56, 57, 58, 59, 60, -1, 62, 63, 64, 65,
1284 -1, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1285 76, 77, 78, 79, 80, 81, 82, 83, 84, -1,
1286 86, -1, -1, 89, -1, 91, -1, -1, -1, 95,
1287 -1, 3, 4, 99, -1, 7, 102, 9, 10, -1,
1288 -1, -1, -1, -1, -1, 86, -1, 88, 89, 90,
1289 91, -1, 93, 94, -1, 96, 97, 3, 4, 100,
1290 101, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1291 -1, 3, 4, -1, -1, 7, -1, 9, 10, -1,
1292 -1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1293 -1, 7, -1, 9, 10, 14, 15, 16, 17, -1,
1294 -1, -1, 21, 3, 4, -1, -1, 7, -1, 9,
1295 10, -1, -1, -1, 86, -1, 88, 89, 90, 91,
1296 -1, 93, 94, -1, 96, 97, 3, 4, 100, 101,
1297 7, -1, 9, 10, 53, 54, 55, 56, -1, -1,
1298 86, -1, 88, 89, 90, 91, 92, 93, 94, -1,
1299 96, 97, 11, -1, 86, 101, 88, 89, 90, 91,
1300 -1, 93, 94, -1, 96, 97, -1, -1, 100, 101,
1301 86, -1, 88, 89, 90, 91, -1, 93, 94, -1,
1302 96, 97, 11, -1, 100, 101, 86, -1, 88, 89,
1303 90, 91, -1, 93, 94, -1, 96, 97, 3, 4,
1304 100, 101, 7, -1, 9, 10, -1, -1, -1, 86,
1305 -1, 88, 89, 90, 91, -1, 93, 94, -1, 96,
1306 97, 3, 4, -1, 101, 7, 85, 9, 10, -1,
1307 -1, -1, -1, -1, -1, 94, 95, 3, 4, -1,
1308 99, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1309 -1, -1, -1, 3, 4, -1, 85, 7, -1, 9,
1310 10, -1, -1, -1, -1, 94, 95, 3, 4, -1,
1311 99, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1312 -1, 86, -1, 88, 89, 90, 91, -1, 93, -1,
1313 -1, 96, 97, 3, 4, 100, 101, 7, -1, 9,
1314 10, -1, -1, -1, 86, -1, 88, 89, 90, 91,
1315 -1, 93, -1, -1, 96, 97, -1, -1, 100, 101,
1316 86, -1, 88, 89, 90, 91, -1, 93, -1, -1,
1317 96, 97, -1, -1, 100, 101, 86, -1, 88, 89,
1318 90, 91, -1, 93, 94, -1, 96, 97, -1, -1,
1319 86, 101, 88, 89, 90, 91, -1, 93, 94, -1,
1320 96, 97, 3, 4, -1, 101, 7, -1, 9, 10,
1321 -1, -1, -1, -1, -1, -1, 86, -1, 88, 89,
1322 90, 91, -1, 93, 94, -1, 96, 97, 3, 4,
1323 -1, 101, 7, -1, 9, 10, -1, -1, -1, -1,
1324 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1325 9, 10, -1, -1, -1, -1, -1, -1, 3, 4,
1326 -1, -1, 7, -1, 9, 10, -1, -1, -1, -1,
1327 -1, -1, -1, -1, 3, 4, -1, -1, 7, -1,
1328 9, 10, -1, -1, -1, 86, -1, 88, 89, 90,
1329 91, -1, 93, -1, -1, 96, 97, 3, 4, 100,
1330 101, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1331 -1, 86, -1, 88, 89, 90, 91, -1, 93, -1,
1332 -1, 96, 97, -1, -1, 100, 101, 86, -1, 88,
1333 89, 90, 91, -1, 93, 94, -1, 96, 97, -1,
1334 -1, 86, 101, 88, 89, 90, 91, -1, 93, -1,
1335 -1, 96, 97, -1, -1, 100, 101, 86, -1, 88,
1336 89, 90, 91, -1, 93, 94, -1, 96, 97, 3,
1337 4, -1, 101, 7, -1, 9, 10, -1, -1, -1,
1338 86, -1, 88, 89, 90, 91, -1, 93, -1, -1,
1339 96, 97, 3, 4, 100, 101, 7, -1, 9, 10,
1340 -1, -1, -1, -1, -1, -1, 3, 4, -1, -1,
1341 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1342 -1, -1, 3, 4, -1, -1, 7, -1, 9, 10,
1343 -1, -1, -1, -1, -1, -1, 3, 4, -1, -1,
1344 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1345 -1, -1, 86, -1, 88, 89, 90, 91, -1, 93,
1346 -1, -1, 96, 97, 3, 4, 100, 101, 7, -1,
1347 9, 10, -1, -1, -1, 86, -1, 88, 89, 90,
1348 91, 92, 93, -1, -1, 96, 97, -1, -1, 86,
1349 101, 88, 89, 90, 91, -1, 93, -1, -1, 96,
1350 97, -1, -1, 100, 101, 86, -1, 88, 89, 90,
1351 91, -1, 93, 94, -1, 96, 97, -1, -1, 86,
1352 101, 88, 89, 90, 91, -1, 93, -1, -1, 96,
1353 97, 3, 4, 100, 101, 7, -1, 9, 10, -1,
1354 -1, -1, -1, -1, -1, -1, -1, 86, -1, 88,
1355 89, 90, 91, -1, 93, 94, -1, 96, 97, 3,
1356 4, -1, 101, 7, -1, 9, 10, -1, -1, -1,
1357 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1358 10, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1359 -1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1360 -1, -1, -1, 3, 4, -1, -1, 7, -1, 9,
1361 10, -1, -1, -1, 86, -1, 88, 89, 90, 91,
1362 -1, 93, -1, -1, 96, 97, 3, 4, 100, 101,
1363 7, -1, 9, 10, -1, -1, -1, -1, -1, -1,
1364 -1, -1, 86, -1, 88, 89, 90, 91, 92, 93,
1365 -1, -1, 96, 97, -1, -1, 86, 101, 88, 89,
1366 90, 91, -1, 93, 94, -1, 96, 97, -1, -1,
1367 86, 101, 88, 89, 90, 91, -1, 93, -1, -1,
1368 96, 97, -1, -1, 100, 101, 86, -1, 88, 89,
1369 90, 91, -1, 93, -1, -1, 96, 97, 3, 4,
1370 100, 101, 7, -1, 9, 10, -1, -1, -1, 86,
1371 -1, 88, 89, 90, 91, -1, 93, -1, -1, 96,
1372 97, 3, 4, 100, 101, 7, -1, 9, 10, -1,
1373 -1, -1, -1, -1, -1, -1, -1, 3, 4, -1,
1374 -1, 7, -1, 9, 10, -1, -1, -1, -1, -1,
1375 -1, 3, 4, -1, -1, 7, -1, 9, 10, -1,
1376 -1, -1, -1, -1, -1, 3, 4, -1, -1, 7,
1377 -1, 9, 10, -1, -1, -1, -1, -1, -1, -1,
1378 -1, 86, -1, 88, 89, 90, 91, -1, 93, -1,
1379 -1, 96, 97, -1, -1, 100, 101, -1, -1, -1,
1380 -1, -1, -1, -1, 86, -1, 88, 89, 90, 91,
1381 -1, 93, -1, -1, 96, 97, -1, -1, 100, 101,
1382 86, -1, 88, 89, 90, 91, 92, 93, -1, -1,
1383 96, 97, -1, -1, 86, 101, 88, 89, 90, 91,
1384 -1, 93, -1, -1, 96, 97, -1, -1, 86, 101,
1385 88, 89, 90, 91, -1, 93, -1, -1, 8, 97,
1386 -1, -1, -1, 101, 14, 15, 16, 17, -1, -1,
1387 -1, 21, -1, -1, -1, -1, -1, -1, -1, -1,
1388 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1389 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1390 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1391 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1392 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1393 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1394 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1395 100, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1396 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1397 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1398 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1399 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1400 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1401 -1, -1, -1, -1, 99, 100, -1, 102, -1, -1,
1402 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1403 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1404 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1405 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1406 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1407 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1408 100, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1409 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1410 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1411 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1412 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1413 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1414 -1, -1, -1, -1, 99, 100, -1, 102, -1, -1,
1415 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1416 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1417 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1418 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1419 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1420 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1421 100, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1422 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1423 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1424 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1425 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1426 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1427 -1, -1, -1, -1, 99, 100, -1, 102, -1, -1,
1428 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1429 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1430 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1431 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1432 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1433 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1434 -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1435 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1436 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1437 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1438 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1439 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1440 -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
1441 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1442 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1443 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1444 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1445 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1446 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1447 -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1448 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1449 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1450 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1451 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1452 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1453 -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
1454 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1455 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1456 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1457 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1458 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1459 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1460 -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1461 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1462 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1463 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1464 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1465 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1466 -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
1467 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1468 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1469 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1470 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1471 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1472 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1473 -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1474 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1475 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1476 65, -1, 67, 68, 69, -1, 71, 72, 8, -1,
1477 -1, 76, 77, -1, 14, 15, 16, 17, -1, 84,
1478 -1, 21, -1, -1, 89, -1, 91, -1, -1, -1,
1479 -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
1480 -1, -1, -1, -1, -1, 45, 46, 47, 48, 49,
1481 50, 51, 52, 53, 54, 55, 56, -1, -1, -1,
1482 -1, -1, -1, -1, -1, 65, -1, 67, 68, 69,
1483 -1, 71, 72, 8, -1, -1, 76, 77, -1, 14,
1484 15, 16, 17, -1, 84, -1, 21, -1, -1, 89,
1485 -1, 91, -1, -1, -1, -1, -1, -1, -1, 99,
1486 -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
1487 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1488 55, 56, -1, -1, -1, -1, -1, -1, -1, -1,
1489 65, -1, 67, 68, 69, -1, 71, 72, -1, -1,
1490 -1, 76, 77, -1, -1, -1, -1, -1, -1, 84,
1491 -1, -1, -1, -1, 89, -1, 91, -1, -1, -1,
1492 -1, -1, -1, -1, 99, -1, -1, 102
1499 0, 104, 0, 1, 8, 14, 15, 16, 17, 21,
1500 31, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1501 54, 55, 56, 57, 58, 59, 60, 62, 63, 64,
1502 65, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1503 76, 77, 78, 79, 80, 81, 82, 83, 84, 86,
1504 89, 91, 95, 99, 102, 105, 106, 107, 108, 109,
1505 110, 111, 112, 114, 115, 117, 118, 119, 120, 121,
1506 128, 129, 131, 132, 133, 134, 135, 136, 137, 138,
1507 139, 140, 141, 142, 143, 144, 145, 146, 147, 95,
1508 16, 17, 53, 54, 55, 56, 84, 112, 128, 99,
1509 110, 112, 119, 99, 99, 99, 99, 99, 99, 99,
1510 99, 99, 99, 110, 99, 110, 99, 110, 99, 110,
1511 65, 66, 111, 65, 95, 110, 99, 112, 65, 99,
1512 99, 66, 99, 99, 65, 99, 65, 99, 16, 112,
1513 120, 121, 121, 112, 111, 111, 112, 95, 11, 99,
1514 85, 94, 3, 4, 7, 9, 10, 86, 88, 89,
1515 90, 91, 93, 96, 97, 101, 112, 112, 111, 12,
1516 85, 94, 95, 127, 99, 110, 94, 110, 112, 99,
1517 99, 99, 99, 99, 99, 112, 66, 99, 112, 122,
1518 112, 112, 112, 112, 112, 112, 112, 100, 111, 112,
1519 100, 111, 112, 100, 111, 95, 95, 16, 17, 53,
1520 54, 55, 56, 100, 110, 128, 65, 66, 112, 113,
1521 65, 112, 66, 100, 111, 130, 92, 100, 102, 110,
1522 100, 111, 112, 112, 112, 112, 112, 112, 112, 112,
1523 112, 112, 112, 112, 110, 85, 100, 116, 94, 66,
1524 110, 112, 91, 110, 127, 112, 112, 111, 112, 111,
1525 112, 100, 112, 100, 94, 100, 94, 94, 94, 100,
1526 94, 100, 94, 94, 100, 100, 100, 100, 100, 100,
1527 100, 100, 100, 100, 100, 100, 94, 100, 100, 66,
1528 94, 112, 65, 100, 100, 95, 100, 92, 94, 112,
1529 112, 94, 100, 112, 110, 112, 122, 100, 100, 94,
1530 122, 112, 112, 112, 112, 112, 112, 16, 17, 53,
1531 54, 55, 56, 128, 45, 48, 49, 51, 52, 112,
1532 100, 66, 66, 73, 112, 116, 116, 112, 92, 91,
1533 94, 111, 94, 100, 94, 100, 94, 94, 100, 94,
1534 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
1535 100, 100, 100, 100, 92, 94, 91, 111, 122, 100,
1536 68, 99, 123, 124, 126, 112, 112, 112, 112, 112,
1537 112, 92, 94, 124, 125, 99, 100, 100, 100, 100,
1538 100, 100, 92, 126, 94, 100, 111, 125, 100
1541 #define yyerrok (yyerrstatus = 0) 1542 #define yyclearin (yychar = YYEMPTY) 1543 #define YYEMPTY (-2) 1546 #define YYACCEPT goto yyacceptlab 1547 #define YYABORT goto yyabortlab 1548 #define YYERROR goto yyerrorlab 1558 #define YYFAIL goto yyerrlab 1566 #define YYRECOVERING() (!!yyerrstatus) 1568 #define YYBACKUP(Token, Value) \ 1570 if (yychar == YYEMPTY && yylen == 1) \ 1574 yytoken = YYTRANSLATE (yychar); \ 1580 yyerror (YY_("syntax error: cannot back up")); \ 1587 #define YYERRCODE 256 1594 #define YYRHSLOC(Rhs, K) ((Rhs)[K]) 1595 #ifndef YYLLOC_DEFAULT 1596 # define YYLLOC_DEFAULT(Current, Rhs, N) \ 1600 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ 1601 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ 1602 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ 1603 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ 1607 (Current).first_line = (Current).last_line = \ 1608 YYRHSLOC (Rhs, 0).last_line; \ 1609 (Current).first_column = (Current).last_column = \ 1610 YYRHSLOC (Rhs, 0).last_column; \ 1620 #ifndef YY_LOCATION_PRINT 1621 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL 1622 # define YY_LOCATION_PRINT(File, Loc) \ 1623 fprintf (File, "%d.%d-%d.%d", \ 1624 (Loc).first_line, (Loc).first_column, \ 1625 (Loc).last_line, (Loc).last_column) 1627 # define YY_LOCATION_PRINT(File, Loc) ((void) 0) 1635 # define YYLEX yylex (&yylval, YYLEX_PARAM) 1637 # define YYLEX yylex (&yylval) 1645 # define YYFPRINTF fprintf 1648 # define YYDPRINTF(Args) \ 1654 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 1658 YYFPRINTF (stderr, "%s ", Title); \ 1659 yy_symbol_print (stderr, \ 1661 YYFPRINTF (stderr, "\n"); \ 1671 #if (defined __STDC__ || defined __C99__FUNC__ \ 1672 || defined __cplusplus || defined _MSC_VER) 1680 YYSTYPE const *
const yyvaluep;
1687 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1703 #if (defined __STDC__ || defined __C99__FUNC__ \ 1704 || defined __cplusplus || defined _MSC_VER) 1712 YYSTYPE const *
const yyvaluep;
1716 YYFPRINTF (yyoutput,
"token %s (", yytname[yytype]);
1718 YYFPRINTF (yyoutput,
"nterm %s (", yytname[yytype]);
1729 #if (defined __STDC__ || defined __C99__FUNC__ \ 1730 || defined __cplusplus || defined _MSC_VER) 1741 for (; yybottom <= yytop; yybottom++)
1743 int yybot = *yybottom;
1749 # define YY_STACK_PRINT(Bottom, Top) \ 1752 yy_stack_print ((Bottom), (Top)); \ 1760 #if (defined __STDC__ || defined __C99__FUNC__ \ 1761 || defined __cplusplus || defined _MSC_VER) 1771 int yynrhs = yyr2[yyrule];
1773 unsigned long int yylno = yyrline[yyrule];
1774 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1777 for (yyi = 0; yyi < yynrhs; yyi++)
1781 &(yyvsp[(yyi + 1) - (yynrhs)])
1787 # define YY_REDUCE_PRINT(Rule) \ 1790 yy_reduce_print (yyvsp, Rule); \ 1797 # define YYDPRINTF(Args) 1798 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1799 # define YY_STACK_PRINT(Bottom, Top) 1800 # define YY_REDUCE_PRINT(Rule) 1806 # define YYINITDEPTH 200 1817 # define YYMAXDEPTH 10000 1825 # if defined __GLIBC__ && defined _STRING_H 1826 # define yystrlen strlen 1829 #if (defined __STDC__ || defined __C99__FUNC__ \ 1830 || defined __cplusplus || defined _MSC_VER) 1832 yystrlen (
const char *yystr)
1840 for (yylen = 0; yystr[yylen]; yylen++)
1848 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1849 # define yystpcpy stpcpy 1853 #if (defined __STDC__ || defined __C99__FUNC__ \ 1854 || defined __cplusplus || defined _MSC_VER) 1856 yystpcpy (
char *yydest,
const char *yysrc)
1859 yystpcpy (yydest, yysrc)
1865 const char *yys = yysrc;
1867 while ((*yyd++ = *yys++) !=
'\0')
1884 yytnamerr (
char *yyres,
const char *yystr)
1889 char const *yyp = yystr;
1896 goto do_not_strip_quotes;
1900 goto do_not_strip_quotes;
1913 do_not_strip_quotes: ;
1917 return yystrlen (yystr);
1919 return yystpcpy (yyres, yystr) - yyres;
1931 yysyntax_error (
char *yyresult,
int yystate,
int yychar)
1933 int yyn = yypact[yystate];
1940 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
1943 int yysize_overflow = 0;
1944 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1945 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1951 YY_(
"syntax error, unexpected %s");
1952 YY_(
"syntax error, unexpected %s, expecting %s");
1953 YY_(
"syntax error, unexpected %s, expecting %s or %s");
1954 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s");
1955 YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s");
1959 static char const yyunexpected[] =
"syntax error, unexpected %s";
1960 static char const yyexpecting[] =
", expecting %s";
1961 static char const yyor[] =
" or %s";
1962 char yyformat[
sizeof yyunexpected
1963 +
sizeof yyexpecting - 1
1964 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
1965 * (
sizeof yyor - 1))];
1966 char const *yyprefix = yyexpecting;
1970 int yyxbegin = yyn < 0 ? -yyn : 0;
1973 int yychecklim =
YYLAST - yyn + 1;
1977 yyarg[0] = yytname[yytype];
1978 yyfmt = yystpcpy (yyformat, yyunexpected);
1980 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1981 if (yycheck[yyx + yyn] == yyx && yyx !=
YYTERROR)
1983 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1987 yyformat[
sizeof yyunexpected - 1] =
'\0';
1990 yyarg[yycount++] = yytname[yyx];
1991 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
1992 yysize_overflow |= (yysize1 < yysize);
1994 yyfmt = yystpcpy (yyfmt, yyprefix);
1998 yyf =
YY_(yyformat);
1999 yysize1 = yysize + yystrlen (yyf);
2000 yysize_overflow |= (yysize1 < yysize);
2003 if (yysize_overflow)
2011 char *yyp = yyresult;
2013 while ((*yyp = *yyf) !=
'\0')
2015 if (*yyp ==
'%' && yyf[1] ==
's' && yyi < yycount)
2017 yyp += yytnamerr (yyp, yyarg[yyi++]);
2038 #if (defined __STDC__ || defined __C99__FUNC__ \ 2039 || defined __cplusplus || defined _MSC_VER) 2065 #ifdef YYPARSE_PARAM 2066 #if defined __STDC__ || defined __cplusplus 2067 int yyparse (
void *YYPARSE_PARAM);
2072 #if defined __STDC__ || defined __cplusplus 2087 #ifdef YYPARSE_PARAM 2088 #if (defined __STDC__ || defined __C99__FUNC__ \ 2089 || defined __cplusplus || defined _MSC_VER) 2095 void *YYPARSE_PARAM;
2098 #if (defined __STDC__ || defined __C99__FUNC__ \ 2099 || defined __cplusplus || defined _MSC_VER) 2152 char *yymsg = yymsgbuf;
2153 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
2156 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) 2167 YYDPRINTF ((stderr,
"Starting parse\n"));
2194 if (yyss + yystacksize - 1 <= yyssp)
2197 YYSIZE_T yysize = yyssp - yyss + 1;
2211 yyoverflow (
YY_(
"memory exhausted"),
2212 &yyss1, yysize *
sizeof (*yyssp),
2213 &yyvs1, yysize *
sizeof (*yyvsp),
2220 # ifndef YYSTACK_RELOCATE 2221 goto yyexhaustedlab;
2225 goto yyexhaustedlab;
2232 union yyalloc *yyptr =
2233 (
union yyalloc *)
YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2235 goto yyexhaustedlab;
2236 YYSTACK_RELOCATE (yyss_alloc, yyss);
2237 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
2238 # undef YYSTACK_RELOCATE 2245 yyssp = yyss + yysize - 1;
2246 yyvsp = yyvs + yysize - 1;
2248 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
2249 (
unsigned long int) yystacksize));
2251 if (yyss + yystacksize - 1 <= yyssp)
2255 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
2271 yyn = yypact[yystate];
2280 YYDPRINTF ((stderr,
"Reading a token: "));
2284 if (yychar <=
YYEOF)
2286 yychar = yytoken =
YYEOF;
2287 YYDPRINTF ((stderr,
"Now at end of input.\n"));
2298 if (yyn < 0 ||
YYLAST < yyn || yycheck[yyn] != yytoken)
2330 yyn = yydefact[yystate];
2351 yyval = yyvsp[1-yylen];
2360 #line 319 "grammar.y" 2396 #line 354 "grammar.y" 2403 #line 356 "grammar.y" 2410 #line 358 "grammar.y" 2419 #line 362 "grammar.y" 2429 #line 367 "grammar.y" 2436 #line 369 "grammar.y" 2446 if ((
inerror!=3) && ((yyvsp[(1) - (2)].
i)<
UMINUS) && ((yyvsp[(1) - (2)].
i)>
' '))
2490 #line 427 "grammar.y" 2497 #line 430 "grammar.y" 2504 #line 445 "grammar.y" 2513 #line 452 "grammar.y" 2523 #line 457 "grammar.y" 2525 syMake(&(yyval.lv),(yyvsp[(1) - (1)].name));
2532 #line 461 "grammar.y" 2541 #line 465 "grammar.y" 2543 if(
iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv),
'.', &(yyvsp[(3) - (3)].lv)))
YYERROR;
2550 #line 469 "grammar.y" 2559 #line 473 "grammar.y" 2561 if ((yyvsp[(1) - (4)].lv).
next==
NULL)
2564 memcpy((yyvsp[(1) - (4)].lv).
next,&(yyvsp[(3) - (4)].lv),
sizeof(
sleftv));
2567 else if ((yyvsp[(1) - (4)].lv).rtyp==
UNKNOWN)
2578 #line 487 "grammar.y" 2582 memset(&(yyval.lv),0,
sizeof(
sleftv));
2584 leftv v = &(yyvsp[(2) - (3)].lv);
2589 memset(&tmp,0,
sizeof(tmp));
2594 (yyvsp[(2) - (3)].lv).CleanUp();
2599 (yyval.lv).data = (
void *)
pAdd((
poly)(yyval.lv).data,p);
2604 (yyvsp[(2) - (3)].lv).CleanUp();
2611 #line 515 "grammar.y" 2613 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2614 int i = atoi((yyvsp[(1) - (1)].
name));
2618 (yyval.lv).data = (
void *)(long)i;
2621 int l = strlen((yyvsp[(1) - (1)].
name))+2;
2626 sprintf(tmp,
"%d",i);
2627 if (strcmp(tmp,(yyvsp[(1) - (1)].
name))!=0)
2631 (yyval.lv).data = n;
2640 #line 539 "grammar.y" 2642 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2643 (yyval.lv).rtyp = (yyvsp[(1) - (1)].
i);
2644 (yyval.lv).data = (yyval.lv).Data();
2651 #line 545 "grammar.y" 2653 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
2655 (yyval.lv).data = (yyvsp[(1) - (1)].
name);
2662 #line 551 "grammar.y" 2671 #line 555 "grammar.y" 2680 #line 559 "grammar.y" 2689 #line 563 "grammar.y" 2698 #line 567 "grammar.y" 2707 #line 571 "grammar.y" 2716 #line 575 "grammar.y" 2725 #line 579 "grammar.y" 2734 #line 583 "grammar.y" 2743 #line 587 "grammar.y" 2752 #line 591 "grammar.y" 2761 #line 595 "grammar.y" 2770 #line 599 "grammar.y" 2779 #line 603 "grammar.y" 2788 #line 607 "grammar.y" 2797 #line 611 "grammar.y" 2799 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2806 #line 615 "grammar.y" 2808 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2815 #line 619 "grammar.y" 2817 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2824 #line 623 "grammar.y" 2826 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2833 #line 627 "grammar.y" 2842 #line 631 "grammar.y" 2844 int b=
iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i));
2853 #line 637 "grammar.y" 2855 if(
iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv)))
YYERROR;
2862 #line 641 "grammar.y" 2871 #line 645 "grammar.y" 2880 #line 649 "grammar.y" 2889 #line 653 "grammar.y" 2891 if (
iiARROW(&(yyval.lv),(yyvsp[(1) - (3)].name),(yyvsp[(3) - (3)].name)))
YYERROR;
2898 #line 656 "grammar.y" 2899 { (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
2905 #line 661 "grammar.y" 2907 leftv v = &(yyvsp[(1) - (3)].lv);
2913 memcpy(v->
next,&((yyvsp[(3) - (3)].lv)),
sizeof(
sleftv));
2914 (yyval.lv) = (yyvsp[(1) - (3)].lv);
2921 #line 672 "grammar.y" 2923 (yyval.lv) = (yyvsp[(1) - (1)].lv);
2930 #line 678 "grammar.y" 2933 (yyval.lv) = (yyvsp[(1) - (1)].lv);
2940 #line 682 "grammar.y" 2941 { (yyval.lv) = (yyvsp[(1) - (1)].lv); ;}
2947 #line 684 "grammar.y" 2949 if(
iiExprArith3(&(yyval.lv),
'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv)))
YYERROR;
2956 #line 688 "grammar.y" 2965 #line 692 "grammar.y" 2974 #line 696 "grammar.y" 2983 #line 700 "grammar.y" 2992 #line 704 "grammar.y" 3001 #line 708 "grammar.y" 3010 #line 712 "grammar.y" 3012 if (
iiApply(&(yyval.lv), &(yyvsp[(3) - (6)].lv), 0, &(yyvsp[(5) - (6)].lv)))
YYERROR;
3019 #line 716 "grammar.y" 3021 (yyval.lv)=(yyvsp[(2) - (3)].lv);
3028 #line 720 "grammar.y" 3033 {
if (
iiExprArith2(&(yyval.lv),&(yyvsp[(2) - (5)].lv),
'=',&(yyvsp[(4) - (5)].lv)))
YYERROR; }
3037 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3038 (yyval.lv).rtyp=
NONE;
3050 #line 737 "grammar.y" 3052 iiTestAssume(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv));
3053 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3054 (yyval.lv).rtyp=
NONE;
3061 #line 743 "grammar.y" 3072 #line 749 "grammar.y" 3075 if (
siq<=0) (yyvsp[(4) - (5)].lv).Eval();
3077 (yyval.lv)=(yyvsp[(4) - (5)].lv);
3087 #line 761 "grammar.y" 3098 #line 769 "grammar.y" 3109 #line 777 "grammar.y" 3120 #line 786 "grammar.y" 3129 #line 790 "grammar.y" 3138 #line 794 "grammar.y" 3147 #line 798 "grammar.y" 3156 #line 802 "grammar.y" 3158 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3165 #line 806 "grammar.y" 3174 #line 810 "grammar.y" 3176 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3183 #line 814 "grammar.y" 3185 if(
iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].
i),&(yyvsp[(3) - (3)].lv)))
YYERROR;
3192 #line 818 "grammar.y" 3201 #line 822 "grammar.y" 3210 #line 826 "grammar.y" 3219 #line 830 "grammar.y" 3228 #line 834 "grammar.y" 3234 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3237 (yyval.lv).data = (
void *)(long)(i == 0 ? 1 : 0);
3245 #line 846 "grammar.y" 3254 #line 852 "grammar.y" 3255 { (yyval.lv) = (yyvsp[(1) - (2)].lv); ;}
3261 #line 854 "grammar.y" 3263 if ((yyvsp[(1) - (2)].lv).rtyp==0)
3265 Werror(
"`%s` is undefined",(yyvsp[(1) - (2)].lv).Fullname());
3268 else if (((yyvsp[(1) - (2)].lv).rtyp==
MODUL_CMD)
3270 && ((yyvsp[(1) - (2)].lv).e!=
NULL) && ((yyvsp[(1) - (2)].lv).e->next==
NULL))
3272 MYYERROR(
"matrix must have 2 indices");
3274 (yyval.lv) = (yyvsp[(1) - (2)].lv);
3281 #line 874 "grammar.y" 3285 MYYERROR(
"string expression expected");
3287 (yyval.name) = (
char *)(yyvsp[(2) - (3)].lv).CopyD(
STRING_CMD);
3288 (yyvsp[(2) - (3)].lv).CleanUp();
3295 #line 886 "grammar.y" 3297 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3305 #line 891 "grammar.y" 3307 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3315 #line 896 "grammar.y" 3324 #line 900 "grammar.y" 3333 #line 904 "grammar.y" 3350 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3360 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),
myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
3374 #line 940 "grammar.y" 3382 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3396 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3405 #line 966 "grammar.y" 3407 int t=(yyvsp[(1) - (3)].lv).Typ();
3409 memset(&r,0,
sizeof(
sleftv));
3417 if (
iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),
myynest,t,&((yyvsp[(3) - (3)].lv).req_packhdl->idroot)))
3420 leftv v=&(yyvsp[(1) - (3)].lv);
3424 (yyval.lv)=(yyvsp[(1) - (3)].lv);
3431 #line 987 "grammar.y" 3433 if (
iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),
myynest,(yyvsp[(1) - (2)].
i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
3441 #line 1000 "grammar.y" 3443 leftv v = &(yyvsp[(2) - (5)].lv);
3449 memcpy(v->
next,&((yyvsp[(4) - (5)].lv)),
sizeof(
sleftv));
3450 (yyval.lv) = (yyvsp[(2) - (5)].lv);
3457 #line 1014 "grammar.y" 3467 #line 1022 "grammar.y" 3469 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3472 (*iv)[1] = (yyvsp[(1) - (1)].i);
3474 (yyval.lv).data = (
void *)iv;
3481 #line 1031 "grammar.y" 3483 memset(&(yyval.lv),0,
sizeof((yyval.lv)));
3484 leftv sl = &(yyvsp[(3) - (4)].lv);
3488 int l = 2 + slLength;
3490 (*iv)[0] = slLength;
3491 (*iv)[1] = (yyvsp[(1) - (4)].i);
3494 while ((i<l) && (sl!=
NULL))
3498 (*iv)[i++] = (int)((
long)(sl->
Data()));
3504 int ll = 0,l = ivv->
length();
3507 (*iv)[i++] = (*ivv)[ll++];
3513 (yyvsp[(3) - (4)].lv).CleanUp();
3514 MYYERROR(
"wrong type in ordering");
3519 (yyval.lv).data = (
void *)iv;
3521 (yyvsp[(3) - (4)].lv).CleanUp();
3528 #line 1077 "grammar.y" 3530 (yyval.lv) = (yyvsp[(1) - (3)].lv);
3532 memcpy((yyval.lv).next,&(yyvsp[(3) - (3)].lv),
sizeof(
sleftv));
3539 #line 1087 "grammar.y" 3541 (yyval.lv) = (yyvsp[(2) - (3)].lv);
3548 #line 1093 "grammar.y" 3557 #line 1100 "grammar.y" 3558 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3564 #line 1102 "grammar.y" 3565 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3571 #line 1104 "grammar.y" 3572 { (yyval.i) = (yyvsp[(1) - (1)].
i); ;}
3578 #line 1113 "grammar.y" 3579 {
if ((yyvsp[(1) - (2)].
i) !=
'<')
YYERROR;
3586 #line 1116 "grammar.y" 3593 #line 1121 "grammar.y" 3603 #line 1126 "grammar.y" 3612 #line 1133 "grammar.y" 3622 #line 1141 "grammar.y" 3624 if (
basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
3636 #line 1153 "grammar.y" 3638 leftv v=&(yyvsp[(2) - (2)].lv);
3658 #line 1170 "grammar.y" 3660 leftv v=&(yyvsp[(3) - (3)].lv);
3680 #line 1190 "grammar.y" 3689 #line 1194 "grammar.y" 3698 #line 1198 "grammar.y" 3708 #line 1203 "grammar.y" 3717 #line 1207 "grammar.y" 3726 #line 1211 "grammar.y" 3735 #line 1215 "grammar.y" 3744 #line 1219 "grammar.y" 3746 list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),
"// ",
TRUE);
3747 (yyvsp[(3) - (4)].lv).CleanUp();
3754 #line 1224 "grammar.y" 3758 (yyvsp[(3) - (6)].lv).CleanUp();
3765 #line 1230 "grammar.y" 3769 (yyvsp[(3) - (6)].lv).CleanUp();
3776 #line 1236 "grammar.y" 3780 (yyvsp[(3) - (6)].lv).CleanUp();
3787 #line 1242 "grammar.y" 3791 (yyvsp[(3) - (6)].lv).CleanUp();
3798 #line 1248 "grammar.y" 3802 (yyvsp[(3) - (6)].lv).CleanUp();
3809 #line 1254 "grammar.y" 3813 (yyvsp[(3) - (6)].lv).CleanUp();
3820 #line 1260 "grammar.y" 3824 (yyvsp[(3) - (6)].lv).CleanUp();
3831 #line 1272 "grammar.y" 3840 #line 1278 "grammar.y" 3847 #line 1287 "grammar.y" 3849 const char *ring_name = (yyvsp[(2) - (8)].lv).
name;
3851 rInit(&(yyvsp[(4) - (8)].lv),
3852 &(yyvsp[(6) - (8)].lv),
3853 &(yyvsp[(8) - (8)].lv));
3859 &((yyvsp[(2) - (8)].lv).req_packhdl->idroot),
FALSE);
3860 (yyvsp[(2) - (8)].lv).CleanUp();
3861 if (newRingHdl!=
NULL)
3871 if (newRingHdl==
NULL)
3885 #line 1320 "grammar.y" 3887 const char *ring_name = (yyvsp[(2) - (2)].lv).
name;
3890 (yyvsp[(2) - (2)].lv).CleanUp();
3897 #line 1327 "grammar.y" 3907 #line 1332 "grammar.y" 3912 memcpy((yyvsp[(4) - (7)].lv).
next,&(yyvsp[(6) - (7)].lv),
sizeof(
sleftv));
3913 memset(&(yyvsp[(6) - (7)].lv),0,
sizeof(
sleftv));
3922 #line 1345 "grammar.y" 3931 #line 1354 "grammar.y" 3934 MYYERROR(
"only inside a proc allowed");
3935 const char * n=(yyvsp[(2) - (2)].lv).Name();
3936 if (((yyvsp[(2) - (2)].lv).Typ()==
RING_CMD)
3937 && ((yyvsp[(2) - (2)].lv).rtyp==
IDHDL))
3940 if ((yyvsp[(2) - (2)].lv).e!=
NULL) h=
rFindHdl((ring)(yyvsp[(2) - (2)].lv).Data(),
NULL);
3975 Werror(
"%s is no identifier",n);
3976 (yyvsp[(2) - (2)].lv).CleanUp();
3983 Werror(
"cannot find the name of the basering %s",n);
3984 (yyvsp[(2) - (2)].lv).CleanUp();
3987 (yyvsp[(2) - (2)].lv).CleanUp();
3991 Werror(
"%s is no name of a ring/qring",n);
3992 (yyvsp[(2) - (2)].lv).CleanUp();
4001 #line 1422 "grammar.y" 4003 type_cmd(&((yyvsp[(2) - (2)].lv)));
4010 #line 1426 "grammar.y" 4014 if ((yyvsp[(1) - (1)].lv).rtyp!=
COMMAND)
4017 if ((yyvsp[(1) - (1)].lv).Typ()==
UNKNOWN)
4019 if ((yyvsp[(1) - (1)].lv).
name!=
NULL)
4021 Werror(
"`%s` is undefined",(yyvsp[(1) - (1)].lv).
name);
4030 (yyvsp[(1) - (1)].lv).CleanUp(
currRing);
4038 #line 1455 "grammar.y" 4056 #line 1468 "grammar.y" 4078 #line 1485 "grammar.y" 4092 #line 1494 "grammar.y" 4102 #line 1499 "grammar.y" 4112 #line 1507 "grammar.y" 4115 char *
s = (
char *)
omAlloc( strlen((yyvsp[(2) - (3)].
name)) + strlen((yyvsp[(3) - (3)].
name)) + 36);
4116 sprintf(s,
"whileif (!(%s)) break;\n%scontinue;\n " ,(yyvsp[(2) - (3)].
name),(yyvsp[(3) - (3)].
name));
4126 #line 1519 "grammar.y" 4130 char *
s = (
char *)
omAlloc( strlen((yyvsp[(3) - (5)].
name))+strlen((yyvsp[(4) - (5)].
name))+strlen((yyvsp[(5) - (5)].
name))+36);
4131 sprintf(s,
"forif (!(%s)) break;\n%s%s;\ncontinue;\n " 4132 ,(yyvsp[(3) - (5)].
name),(yyvsp[(5) - (5)].
name),(yyvsp[(4) - (5)].
name));
4137 s = (
char *)
omAlloc( strlen((yyvsp[(2) - (5)].
name)) + 3);
4138 sprintf(s,
"%s;\n",(yyvsp[(2) - (5)].
name));
4147 #line 1538 "grammar.y" 4153 sprintf(
IDPROC(h)->data.s.body,
"parameter list #;\n%s;return();\n\n",(yyvsp[(3) - (3)].name));
4162 #line 1548 "grammar.y" 4175 IDPROC(h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(3) - (3)].
name))+strlen(args)+14);;
4176 sprintf(
IDPROC(h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(3) - (3)].name));
4186 #line 1567 "grammar.y" 4201 IDPROC(h)->data.s.body = (
char *)
omAlloc(strlen((yyvsp[(4) - (4)].
name))+strlen(args)+14);;
4202 sprintf(
IDPROC(h)->data.s.body,
"%s\n%s;return();\n\n",args,(yyvsp[(4) - (4)].name));
4211 #line 1590 "grammar.y" 4222 #line 1596 "grammar.y" 4236 #line 1608 "grammar.y" 4239 (yyvsp[(3) - (4)].lv).CleanUp();
4247 #line 1614 "grammar.y" 4249 if ((yyvsp[(1) - (3)].
i)==
RETURN)
4261 #line 4262 "grammar.cc" 4278 yystate = yypgoto[yyn -
YYNTOKENS] + *yyssp;
4279 if (0 <= yystate && yystate <=
YYLAST && yycheck[yystate] == *yyssp)
4280 yystate = yytable[yystate];
4295 #if ! YYERROR_VERBOSE 4299 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
4305 if (yymsg != yymsgbuf)
4309 yymsg_alloc = yyalloc;
4313 yymsg_alloc =
sizeof yymsgbuf;
4317 if (0 < yysize && yysize <= yymsg_alloc)
4319 (void) yysyntax_error (yymsg, yystate, yychar);
4326 goto yyexhaustedlab;
4334 if (yyerrstatus == 3)
4339 if (yychar <=
YYEOF)
4342 if (yychar ==
YYEOF)
4386 yyn = yypact[yystate];
4404 yystos[yystate], yyvsp);
4434 #if !defined(yyoverflow) || YYERROR_VERBOSE 4452 while (yyssp != yyss)
4455 yystos[*yyssp], yyvsp);
4463 if (yymsg != yymsgbuf)
4467 return YYID (yyresult);
char * iiProcArgs(char *e, BOOLEAN withParenth)
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.
#define idDelete(H)
delete an ideal
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)
BOOLEAN iiConvert(int inputType, int outputType, int index, leftv input, leftv output, const struct sConvertTypes *dConvertTypes)
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)
procinfo * iiInitSingularProcinfo(procinfov pi, const char *libname, const char *procname, int, long pos, BOOLEAN pstatic)
#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)
#define YY_STACK_PRINT(Bottom, Top)
FILE * feFopen(const char *path, const char *mode, char *where, short useWerror, short path_only)
ring rInit(leftv pn, leftv rv, leftv ord)
char name(const Variable &v)
idhdl rFindHdl(ring r, idhdl n)
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep)
ring rDefault(const coeffs cf, int N, char **n, int ord_size, rRingOrder_t *ord, int *block0, int *block1, int **wvhdl)
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
static const yytype_uint8 yytranslate[]
const char * Tok2Cmdname(int tok)
void killhdl(idhdl h, package proot)
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)
rRingOrder_t rOrderName(char *ordername)
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[]
static const yytype_uint8 yyr1[]
static const char *const yytname[]
BOOLEAN iiExprArith2(leftv res, leftv a, int op, leftv b, BOOLEAN proccall)
void syMake(leftv v, const char *id, package pa)
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)