summaryrefslogtreecommitdiffstats
path: root/src/parser.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser.c')
-rw-r--r--src/parser.c1883
1 files changed, 976 insertions, 907 deletions
diff --git a/src/parser.c b/src/parser.c
index 80de8738..7491326b 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -1,8 +1,8 @@
-/* A Bison parser, made by GNU Bison 3.0.2. */
+/* A Bison parser, made by GNU Bison 3.0.4. */
/* Bison implementation for Yacc-like parsers in C
- Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
+ Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -44,7 +44,7 @@
#define YYBISON 1
/* Bison version. */
-#define YYBISON_VERSION "3.0.2"
+#define YYBISON_VERSION "3.0.4"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
@@ -164,13 +164,14 @@ struct lexer_param;
SETDEFINEDOR = 292,
LESSEQ = 293,
GREATEREQ = 294,
- QQSTRING_START = 295,
- QQSTRING_TEXT = 296,
- QQSTRING_INTERP_START = 297,
- QQSTRING_INTERP_END = 298,
- QQSTRING_END = 299,
- FUNCDEF = 300,
- NONOPT = 301
+ ALTERNATION = 295,
+ QQSTRING_START = 296,
+ QQSTRING_TEXT = 297,
+ QQSTRING_INTERP_START = 298,
+ QQSTRING_INTERP_END = 299,
+ QQSTRING_END = 300,
+ FUNCDEF = 301,
+ NONOPT = 302
};
#endif
/* Tokens. */
@@ -211,17 +212,18 @@ struct lexer_param;
#define SETDEFINEDOR 292
#define LESSEQ 293
#define GREATEREQ 294
-#define QQSTRING_START 295
-#define QQSTRING_TEXT 296
-#define QQSTRING_INTERP_START 297
-#define QQSTRING_INTERP_END 298
-#define QQSTRING_END 299
-#define FUNCDEF 300
-#define NONOPT 301
+#define ALTERNATION 295
+#define QQSTRING_START 296
+#define QQSTRING_TEXT 297
+#define QQSTRING_INTERP_START 298
+#define QQSTRING_INTERP_END 299
+#define QQSTRING_END 300
+#define FUNCDEF 301
+#define NONOPT 302
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
-typedef union YYSTYPE YYSTYPE;
+
union YYSTYPE
{
#line 31 "src/parser.y" /* yacc.c:355 */
@@ -229,8 +231,10 @@ union YYSTYPE
jv literal;
block blk;
-#line 233 "src/parser.c" /* yacc.c:355 */
+#line 235 "src/parser.c" /* yacc.c:355 */
};
+
+typedef union YYSTYPE YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define YYSTYPE_IS_DECLARED 1
#endif
@@ -256,7 +260,7 @@ int yyparse (block* answer, int* errors, struct locfile* locations, struct lexer
#endif /* !YY_YY_SRC_PARSER_H_INCLUDED */
/* Copy the second part of user declarations. */
-#line 123 "src/parser.y" /* yacc.c:358 */
+#line 124 "src/parser.y" /* yacc.c:358 */
#include "lexer.h"
struct lexer_param {
@@ -313,10 +317,6 @@ static jv check_object_key(block k) {
return jv_invalid();
}
-static block gen_dictpair(block k, block v) {
- return BLOCK(gen_subexp(k), gen_subexp(v), gen_op_simple(INSERT));
-}
-
static block gen_index(block obj, block key) {
return BLOCK(gen_subexp(key), obj, gen_op_simple(INDEX));
}
@@ -678,21 +678,21 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 27
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 1871
+#define YYLAST 1964
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 68
+#define YYNTOKENS 69
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 28
+#define YYNNTS 30
/* YYNRULES -- Number of rules. */
-#define YYNRULES 157
+#define YYNRULES 161
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 307
+#define YYNSTATES 311
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 301
+#define YYMAXUTOK 302
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -704,16 +704,16 @@ static const yytype_uint8 yytranslate[] =
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 61, 55, 2, 2,
- 59, 60, 53, 51, 47, 52, 63, 54, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 62, 58,
- 49, 48, 50, 57, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 62, 56, 2, 2,
+ 60, 61, 54, 52, 48, 53, 64, 55, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 63, 59,
+ 50, 49, 51, 58, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 64, 2, 65, 2, 2, 2, 2, 2, 2,
+ 2, 65, 2, 66, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 66, 46, 67, 2, 2, 2, 2,
+ 2, 2, 2, 67, 47, 68, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@@ -731,29 +731,30 @@ static const yytype_uint8 yytranslate[] =
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
- 45, 56
+ 45, 46, 57
};
#if YYDEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 303, 303, 306, 311, 314, 325, 328, 333, 336,
- 341, 345, 349, 353, 357, 361, 364, 369, 373, 377,
- 382, 389, 393, 397, 401, 405, 409, 413, 417, 421,
- 425, 429, 433, 437, 441, 445, 449, 453, 459, 465,
- 469, 473, 477, 481, 485, 489, 493, 497, 502, 505,
- 522, 531, 538, 546, 557, 562, 568, 571, 576, 581,
- 588, 588, 592, 592, 599, 602, 605, 611, 614, 619,
- 622, 625, 631, 634, 637, 645, 649, 652, 655, 658,
- 661, 664, 667, 670, 673, 677, 683, 686, 689, 692,
- 695, 698, 701, 704, 707, 710, 713, 716, 719, 722,
- 725, 728, 731, 738, 742, 746, 758, 763, 764, 765,
- 766, 769, 772, 777, 782, 786, 789, 794, 797, 802,
- 805, 810, 813, 816, 819, 822, 830, 836, 839, 842,
- 845, 848, 851, 854, 857, 860, 863, 866, 869, 872,
- 875, 878, 881, 884, 887, 890, 895, 898, 899, 900,
- 903, 906, 909, 912, 916, 920, 924, 932
+ 0, 300, 300, 303, 308, 311, 322, 325, 330, 333,
+ 338, 342, 345, 349, 353, 357, 360, 365, 369, 373,
+ 378, 385, 389, 393, 397, 401, 405, 409, 413, 417,
+ 421, 425, 429, 433, 437, 441, 445, 449, 455, 461,
+ 465, 469, 473, 477, 481, 485, 489, 493, 498, 501,
+ 518, 527, 534, 542, 553, 558, 564, 567, 572, 577,
+ 584, 584, 588, 588, 595, 598, 601, 607, 610, 615,
+ 618, 621, 627, 630, 633, 641, 645, 648, 651, 654,
+ 657, 660, 663, 666, 669, 673, 679, 682, 685, 688,
+ 691, 694, 697, 700, 703, 706, 709, 712, 715, 718,
+ 721, 724, 727, 734, 738, 742, 754, 759, 760, 761,
+ 762, 765, 768, 773, 778, 781, 786, 789, 794, 798,
+ 801, 806, 809, 814, 817, 822, 825, 828, 831, 834,
+ 842, 848, 851, 854, 857, 860, 863, 866, 869, 872,
+ 875, 878, 881, 884, 887, 890, 893, 896, 899, 902,
+ 907, 910, 911, 912, 915, 918, 921, 924, 928, 932,
+ 936, 944
};
#endif
@@ -768,15 +769,16 @@ static const char *const yytname[] =
"\"then\"", "\"else\"", "\"elif\"", "\"reduce\"", "\"foreach\"",
"\"end\"", "\"and\"", "\"or\"", "\"try\"", "\"catch\"", "\"label\"",
"\"break\"", "\"__loc__\"", "\"|=\"", "\"+=\"", "\"-=\"", "\"*=\"",
- "\"/=\"", "\"//=\"", "\"<=\"", "\">=\"", "QQSTRING_START",
+ "\"/=\"", "\"//=\"", "\"<=\"", "\">=\"", "\"?//\"", "QQSTRING_START",
"QQSTRING_TEXT", "QQSTRING_INTERP_START", "QQSTRING_INTERP_END",
"QQSTRING_END", "FUNCDEF", "'|'", "','", "'='", "'<'", "'>'", "'+'",
"'-'", "'*'", "'/'", "'%'", "NONOPT", "'?'", "';'", "'('", "')'", "'$'",
"':'", "'.'", "'['", "']'", "'{'", "'}'", "$accept", "TopLevel",
"Module", "Imports", "FuncDefs", "Exp", "Import", "ImportWhat",
"ImportFrom", "FuncDef", "Params", "Param", "String", "@1", "@2",
- "QQString", "ElseBody", "ExpD", "Term", "Args", "Arg", "Pattern",
- "ArrayPats", "ObjPats", "ObjPat", "Keyword", "MkDict", "MkDictPair", YY_NULLPTR
+ "QQString", "ElseBody", "ExpD", "Term", "Args", "Arg", "RepPatterns",
+ "Patterns", "Pattern", "ArrayPats", "ObjPats", "ObjPat", "Keyword",
+ "MkDict", "MkDictPair", YY_NULLPTR
};
#endif
@@ -789,57 +791,58 @@ static const yytype_uint16 yytoknum[] =
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
- 295, 296, 297, 298, 299, 300, 124, 44, 61, 60,
- 62, 43, 45, 42, 47, 37, 301, 63, 59, 40,
- 41, 36, 58, 46, 91, 93, 123, 125
+ 295, 296, 297, 298, 299, 300, 301, 124, 44, 61,
+ 60, 62, 43, 45, 42, 47, 37, 302, 63, 59,
+ 40, 41, 36, 58, 46, 91, 93, 123, 125
};
# endif
-#define YYPACT_NINF -155
+#define YYPACT_NINF -158
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-155)))
+ (!!((Yystate) == (-158)))
-#define YYTABLE_NINF -147
+#define YYTABLE_NINF -151
#define yytable_value_is_error(Yytable_value) \
- (!!((Yytable_value) == (-147)))
+ (!!((Yytable_value) == (-151)))
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 20, 709, 42, 50, 14, -3, -155, 7, -155, 58,
- 709, 191, 191, 709, 18, 2, -155, 709, 465, 19,
- 275, 438, 340, 1215, 709, -155, 6, -155, -2, -2,
- 709, 50, 619, 709, -155, -155, 9, 1564, 17, 46,
- 54, 111, -155, 116, -155, 3, 62, 1050, -155, -155,
- -155, 122, 7, 68, 66, -155, 851, -26, 72, -155,
- -155, -155, -155, -155, -155, -155, -155, -155, -155, -155,
- -155, -155, -155, -155, -155, -155, -155, -155, 709, 131,
- 74, 75, 71, 92, 709, 709, 709, 709, 709, 709,
- 709, 709, 709, 709, 709, 709, 709, 709, 709, 709,
- 709, 709, 709, 709, 709, 709, 709, 709, -155, -155,
- 1728, 84, -21, -2, 148, 130, -155, -155, -155, 1728,
- 709, -155, -155, 1265, 1728, -5, -155, -155, 0, 709,
- 529, -21, -21, 556, 98, -155, 34, -155, -155, -155,
- -155, -155, -155, 396, 689, -155, 689, 1083, -155, 689,
- 689, -155, 396, 1794, 335, 335, 1761, 768, 1814, 1794,
- 1794, 1794, 1794, 1794, 1794, 335, 335, 1728, 1761, 1794,
- 335, 335, 3, 3, 90, 90, 90, -155, 146, -21,
- 770, 105, 101, 94, 709, 103, 802, 11, -155, -155,
- 709, -155, 70, -155, 157, 61, -155, 1315, -155, 1515,
- 104, 106, -155, -155, 709, -155, 709, -155, -10, -155,
- 689, 121, 1, 121, 107, 121, 121, -155, -155, -155,
- -19, 110, 112, 709, 164, 114, -23, -155, 117, 709,
- -155, -155, 900, -155, 646, 123, -155, 169, -155, -155,
- -155, 0, 119, -155, 709, 709, -155, 709, 709, 1728,
- 1597, -155, 689, 689, -21, -155, -21, -21, 1116, -155,
- -21, 770, -155, -21, 1728, 125, 127, 949, -155, -155,
- -155, 709, 1646, 1695, 1365, 1415, -155, 121, 121, -155,
- -155, -155, 124, -155, -155, -155, -155, -155, 133, 1465,
- -155, 709, 709, 709, -21, -155, -155, 1515, 1149, 998,
- -155, -155, -155, 709, -155, 1182, -155
+ 21, 764, 3, 59, -45, -8, -158, 7, -158, 56,
+ 764, 193, 193, 764, 18, 1, -158, 764, 165, 10,
+ 279, 512, 345, 1282, 764, -158, 8, -158, 4, 4,
+ 764, 59, 672, 764, -158, -158, 11, 1638, 14, 17,
+ 34, 113, -158, 116, -158, 60, 62, 1112, -158, -158,
+ -158, 123, 7, 67, 61, -158, 909, -24, 63, -158,
+ -158, -158, -158, -158, -158, -158, -158, -158, -158, -158,
+ -158, -158, -158, -158, -158, -158, -158, -158, 764, 126,
+ 68, 70, 66, 88, 764, 764, 764, 764, 764, 764,
+ 764, 764, 764, 764, 764, 764, 764, 764, 764, 764,
+ 764, 764, 764, 764, 764, 764, 764, 764, -158, -158,
+ 1806, 81, -16, 4, 445, 130, -158, -158, -158, 1806,
+ 764, -158, -158, 1333, 1806, -19, -158, -158, 2, 764,
+ 579, -16, -16, 644, 100, -158, 13, -158, -158, -158,
+ -158, -158, -158, 402, 430, -158, 430, 1146, -158, 430,
+ 430, -158, 402, 1874, 340, 340, 1840, 493, 1906, 1874,
+ 1874, 1874, 1874, 1874, 1874, 340, 340, 1806, 1840, 1874,
+ 340, 340, 60, 60, 90, 90, 90, -158, 146, -16,
+ 826, 111, 105, 114, 95, 89, 764, 98, 859, 50,
+ -158, -158, 764, -158, 23, -158, 153, 0, -158, 1384,
+ -158, 1588, 99, 101, -158, -158, 764, -158, 764, -158,
+ -11, -158, 430, 115, 5, 115, 97, 115, 115, -158,
+ -158, -158, -23, 102, 104, 764, 159, 112, -15, -158,
+ 117, -16, 764, -158, -158, 959, -158, 736, 106, -158,
+ 164, -158, -158, -158, 2, 118, -158, 764, 764, -158,
+ 764, 764, 1806, 1672, -158, 430, 430, -16, -158, -16,
+ -16, 1180, -158, -16, 826, -158, -16, 134, 1806, 119,
+ 120, 1009, -158, -158, -158, 764, 1722, 1772, 1435, 1486,
+ -158, 115, 115, -158, -158, -158, 121, -158, -158, -158,
+ -158, -158, 124, 1537, -158, 764, 764, 764, -16, -158,
+ -158, 1588, 1214, 1059, -158, -158, -158, 764, -158, 1248,
+ -158
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -852,48 +855,49 @@ static const yytype_uint8 yydefact[] =
0, 0, 0, 0, 0, 97, 47, 1, 0, 0,
8, 6, 0, 0, 77, 62, 0, 0, 0, 0,
18, 0, 75, 0, 64, 32, 0, 0, 104, 103,
- 84, 0, 0, 83, 0, 101, 0, 0, 155, 127,
- 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
- 138, 139, 140, 141, 142, 143, 144, 145, 0, 0,
- 153, 0, 0, 147, 0, 0, 0, 0, 0, 0,
+ 84, 0, 0, 83, 0, 101, 0, 0, 159, 131,
+ 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
+ 142, 143, 144, 145, 146, 147, 148, 149, 0, 0,
+ 157, 0, 0, 151, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 21, 5,
10, 80, 0, 0, 0, 0, 53, 52, 3, 2,
8, 7, 48, 0, 113, 0, 111, 64, 0, 0,
0, 0, 0, 0, 0, 74, 0, 107, 99, 85,
- 79, 108, 100, 0, 0, 110, 0, 0, 154, 0,
+ 79, 108, 100, 0, 0, 110, 0, 0, 158, 0,
0, 102, 0, 40, 41, 42, 25, 24, 23, 27,
31, 34, 36, 39, 26, 45, 46, 28, 29, 22,
43, 44, 30, 33, 35, 37, 38, 76, 0, 0,
- 0, 0, 82, 0, 0, 89, 0, 0, 9, 49,
- 0, 106, 0, 59, 0, 0, 56, 0, 16, 0,
- 0, 0, 19, 17, 0, 65, 0, 61, 0, 149,
- 0, 157, 71, 150, 0, 152, 151, 148, 114, 117,
- 0, 0, 0, 0, 0, 0, 0, 119, 0, 0,
- 78, 109, 0, 88, 0, 87, 51, 0, 112, 63,
- 58, 0, 0, 54, 0, 0, 15, 0, 0, 20,
- 0, 70, 0, 0, 0, 115, 0, 0, 0, 121,
- 0, 0, 116, 0, 11, 95, 94, 0, 86, 50,
- 57, 0, 0, 0, 0, 0, 66, 69, 156, 118,
- 126, 122, 0, 124, 120, 123, 92, 91, 93, 0,
- 68, 0, 0, 0, 0, 90, 55, 0, 0, 0,
- 125, 67, 12, 0, 14, 0, 13
+ 0, 0, 0, 117, 82, 0, 0, 89, 0, 0,
+ 9, 49, 0, 106, 0, 59, 0, 0, 56, 0,
+ 16, 0, 0, 0, 19, 17, 0, 65, 0, 61,
+ 0, 153, 0, 161, 71, 154, 0, 156, 155, 152,
+ 118, 121, 0, 0, 0, 0, 0, 0, 0, 123,
+ 0, 0, 0, 78, 109, 0, 88, 0, 87, 51,
+ 0, 112, 63, 58, 0, 0, 54, 0, 0, 15,
+ 0, 0, 20, 0, 70, 0, 0, 0, 119, 0,
+ 0, 0, 125, 0, 0, 120, 0, 116, 11, 95,
+ 94, 0, 86, 50, 57, 0, 0, 0, 0, 0,
+ 66, 69, 160, 122, 130, 126, 0, 128, 124, 127,
+ 92, 91, 93, 0, 68, 0, 0, 0, 0, 90,
+ 55, 0, 0, 0, 129, 67, 12, 0, 14, 0,
+ 13
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -155, -155, -155, 156, 73, -1, -155, -155, 162, -12,
- -155, -49, 5, -155, -155, 67, -96, -136, -4, -155,
- 12, -130, -155, -155, -57, -154, -104, -155
+ -158, -158, -158, 158, 73, -1, -158, -158, 161, -12,
+ -158, -48, 6, -158, -158, 75, -98, -145, -4, -158,
+ 12, -158, -10, -122, -158, -158, -55, -157, -105, -158
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 2, 3, 30, 118, 110, 31, 32, 115, 24,
- 195, 196, 25, 44, 127, 136, 246, 211, 26, 125,
- 126, 181, 220, 226, 227, 81, 82, 83
+ 197, 198, 25, 44, 127, 136, 249, 213, 26, 125,
+ 126, 181, 182, 183, 222, 228, 229, 81, 82, 83
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
@@ -901,444 +905,464 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 23, 200, 201, 42, 193, 52, 111, 38, 39, 37,
- 213, 111, 40, 215, 216, 236, 45, 47, 120, 112,
- 56, 143, 111, 48, 261, 53, 228, 80, 254, 119,
- 131, 123, 124, 116, 116, 1, 144, 143, 16, 209,
- 178, 145, 27, 179, 262, 180, 255, 35, 217, 219,
- 49, 111, 144, 190, 34, 191, 105, 106, 107, 132,
- 108, 194, 36, 43, 113, 114, 28, 29, 128, 113,
- 114, 129, 237, 33, 251, 205, 206, 147, 207, 41,
- 113, 114, 133, 153, 154, 155, 156, 157, 158, 159,
+ 23, 215, 42, 27, 217, 218, 195, 38, 39, 37,
+ 111, 52, 40, 111, 48, 33, 45, 47, 120, 111,
+ 56, 112, 111, 230, 143, 257, 53, 131, 80, 119,
+ 132, 123, 124, 264, 116, 116, 1, 143, 211, 144,
+ 192, 49, 193, 258, 145, 16, 178, 219, 35, 179,
+ 34, 180, 144, 265, 239, 207, 208, 221, 209, 244,
+ 36, 245, 133, 43, 196, 207, 208, 254, 242, 113,
+ 114, 128, 113, 114, 129, 28, 29, 147, 113, 114,
+ 41, 113, 114, 153, 154, 155, 156, 157, 158, 159,
160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
- 170, 171, 172, 173, 174, 175, 176, 228, 120, 113,
- 114, 205, 206, 186, 239, 134, 277, 278, 182, 241,
- 135, 242, 137, 139, 279, 140, 280, 281, 197, 199,
- 283, 141, 203, 285, 146, 148, 149, 150, 151, 152,
- 212, 177, 212, 187, 204, 212, 212, 108, 80, 183,
- 218, 229, 4, 5, 6, 7, 8, 80, 230, 231,
- 233, 240, 9, 247, 300, 248, 10, 252, 259, 253,
- 11, 12, 256, 269, 257, 13, 260, 14, 15, 263,
- 268, 271, 286, 232, 287, 225, 294, 121, 16, 124,
- 295, 117, 270, 188, 192, 4, 5, 6, 7, 8,
- 17, 301, 238, 249, 284, 250, 212, 18, 0, 19,
- 184, 20, 21, 185, 22, 0, 0, 0, 0, 0,
- 0, 15, 258, 0, 0, 0, 0, 0, 264, 0,
- 0, 16, 0, 267, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 272, 273, 0, 274, 275, 212, 212,
- 18, 0, 19, 0, 20, 21, 0, 22, 0, 0,
- 0, 0, 0, 0, 0, 0, 225, 0, 0, 0,
- 289, 0, 0, 0, 0, -72, 50, 0, 0, 51,
- -72, 0, 52, 0, -72, -72, -72, -72, -72, 0,
- 297, 298, 299, 0, -72, -72, -72, 0, 0, -72,
- -72, -72, 305, -72, 0, 0, 0, -72, -72, -72,
- -72, -72, -72, -72, -72, 16, 0, 0, -72, 0,
- 0, -72, -72, -72, -72, -72, -72, -72, -72, -72,
- -72, 0, -72, -72, 0, -72, 0, -72, -72, -72,
- -72, 57, -72, 0, 58, -147, -147, 52, 0, 0,
- 0, 0, 0, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
- 76, 77, 0, -147, -147, 0, 0, 0, 0, 0,
- 16, 0, 0, 0, -147, -147, 103, 104, 105, 106,
- 107, 0, 108, 0, 0, 0, 0, 208, 0, 78,
- 58, 79, 0, 52, 0, 0, 0, -146, 0, 59,
- 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
- 70, 71, 72, 73, 74, 75, 76, 77, 0, 0,
- 0, 0, 0, 0, 0, 0, 16, 0, 0, 54,
- 0, 0, 4, 5, 6, 7, 8, 0, 0, 0,
- 0, 0, 9, 0, 0, 78, 10, 79, 0, 0,
- 11, 12, 0, -146, 0, 13, 46, 14, 15, 4,
- 5, 6, 7, 8, 0, 0, 0, 0, 16, 9,
- 0, 0, 0, 10, 0, 0, 0, 11, 12, 0,
- 17, 0, 13, 0, 14, 15, 0, 18, 0, 19,
- 0, 20, 21, 55, 22, 16, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,
- 0, 0, 0, 0, 18, 0, 19, 0, 20, 21,
- 198, 22, 0, 4, 5, 6, 7, 8, 0, 0,
- 0, 0, 0, 9, 0, 0, 0, 10, 0, 0,
- 0, 11, 12, 0, 0, 0, 13, 202, 14, 15,
- 4, 5, 6, 7, 8, 0, 0, 0, 0, 16,
- 9, 0, 0, 0, 10, 0, 0, 0, 11, 12,
- 0, 17, 0, 13, 0, 14, 15, 0, 18, 0,
- 19, 0, 20, 21, 0, 22, 16, 0, 0, 0,
+ 170, 171, 172, 173, 174, 175, 176, 230, 120, 267,
+ 281, 282, 240, 188, 105, 106, 107, 134, 108, 184,
+ 135, 202, 203, 137, 139, 140, 146, 141, 199, 201,
+ 148, 149, 205, 150, 151, 283, 152, 284, 285, 177,
+ 214, 287, 214, 189, 289, 214, 214, 206, 108, 80,
+ 220, 231, 232, 233, -115, 234, 236, 243, 80, 250,
+ 256, 251, 255, 262, 272, 259, 46, 260, 273, 4,
+ 5, 6, 7, 8, -114, 263, 304, 290, 291, 9,
+ 266, 275, 299, 10, 298, 235, 227, 11, 12, 121,
+ 117, 124, 13, 190, 14, 15, 274, 4, 5, 6,
+ 7, 8, 194, 305, 241, 252, 16, 253, 214, 288,
0, 0, 0, 0, 0, 0, 0, 0, 17, 0,
- 0, 0, 0, 0, 0, 18, 0, 19, 0, 20,
- 21, 0, 22, 4, 5, 6, 7, 8, 0, 0,
+ 0, 0, 0, 15, 261, 18, 0, 19, 0, 20,
+ 21, 268, 22, 0, 16, 0, 271, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 276, 277, 0, 278,
+ 279, 214, 214, 18, 0, 19, 0, 20, 21, 0,
+ 22, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 227, 0, 0, 0, 293, 0, 0, 0, 0, -72,
+ 50, 0, 0, 51, -72, 0, 52, 0, -72, -72,
+ -72, -72, -72, 0, 301, 302, 303, 0, -72, -72,
+ -72, 0, 0, -72, -72, -72, 309, -72, 0, 0,
+ 0, -72, -72, -72, -72, -72, -72, -72, -72, 0,
+ 16, 0, 0, -72, 0, 0, -72, -72, -72, -72,
+ -72, -72, -72, -72, -72, -72, 0, -72, -72, 0,
+ -72, 0, -72, -72, -72, -72, 57, -72, 0, 58,
+ -151, -151, 52, 0, 0, 0, 0, 0, 59, 60,
+ 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
+ 71, 72, 73, 74, 75, 76, 77, 0, -151, -151,
+ 0, 0, 0, 0, 0, 0, 16, 0, 0, 0,
+ -151, -151, 103, 104, 105, 106, 107, 0, 108, 0,
+ 0, 0, 0, 210, 0, 78, 58, 79, 0, 52,
+ 0, 0, 0, -150, 0, 59, 60, 61, 62, 63,
+ 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
+ 74, 75, 76, 77, 4, 5, 6, 7, 8, 0,
+ 0, 0, 0, 16, 0, 0, 185, 0, 0, 4,
+ 5, 6, 7, 8, 0, 0, 0, 0, 0, 9,
+ 15, 0, 78, 10, 79, 0, 0, 11, 12, 0,
+ -150, 16, 13, 0, 14, 15, 0, 0, 0, 0,
+ 0, 0, 0, 212, 0, 0, 16, 0, 0, 0,
+ 18, 0, 19, 0, 20, 21, 0, 22, 17, 0,
+ 0, 0, 0, 85, 86, 18, 0, 19, 186, 20,
+ 21, 187, 22, 54, 0, 0, 4, 5, 6, 7,
+ 8, 0, 0, 0, 0, 0, 9, 0, 0, 0,
+ 10, 96, 97, 0, 11, 12, 0, 0, 0, 13,
+ 0, 14, 15, 101, 102, 103, 104, 105, 106, 107,
+ 0, 108, 0, 16, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 17, 0, 0, 0, 0,
+ 0, 0, 18, 0, 19, 0, 20, 21, 55, 22,
+ 200, 0, 0, 4, 5, 6, 7, 8, 0, 0,
0, 0, 0, 9, 0, 0, 0, 10, 0, 0,
0, 11, 12, 0, 0, 0, 13, 0, 14, 15,
- 4, 5, 6, 7, 8, 0, 0, 0, 0, 16,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 16, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 17, 0, 0, 0, 0, 0, 0, 18,
+ 0, 19, 0, 20, 21, 204, 22, 0, 4, 5,
+ 6, 7, 8, 0, 0, 0, 0, 0, 9, 0,
+ 0, 0, 10, 0, 0, 0, 11, 12, 0, 0,
+ 0, 13, 0, 14, 15, 0, 4, 5, 6, 7,
+ 8, 0, 0, 0, 0, 16, 9, 0, 0, 0,
+ 10, 0, 0, 0, 11, 12, 0, 17, 0, 13,
+ 0, 14, 15, 0, 18, 0, 19, 0, 20, 21,
+ 0, 22, 0, 16, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 17, 0, 0, 0, 0,
+ 0, 122, 18, 0, 19, 0, 20, 21, 0, 22,
+ 4, 5, 6, 7, 8, 0, 0, 0, 0, 0,
9, 0, 0, 0, 10, 0, 0, 0, 11, 12,
- 0, 17, 0, 13, 0, 14, 15, 122, 18, 0,
- 19, 0, 20, 21, 0, 22, 16, 0, 0, 0,
- 0, 0, 0, 4, 5, 6, 7, 8, 17, 0,
- 0, 0, 0, 0, 0, 18, 0, 19, 0, 20,
- 21, 266, 22, 4, 5, 6, 7, 8, 0, 15,
- 0, 0, 0, 9, 0, 0, 0, 10, 0, 16,
- 0, 11, 12, 0, 0, 0, 13, 0, 14, 15,
- 0, 210, 0, 0, 0, 0, 0, 0, 18, 16,
- 19, 0, 20, 21, 0, 22, 0, 0, 0, 0,
- 0, 17, 0, 0, 0, 0, 0, 0, 18, 0,
- 19, 221, 20, 21, 222, 22, 0, 52, 85, 86,
- 0, 0, 0, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
- 76, 77, 0, 0, 0, 0, 96, 97, 0, 0,
- 16, 84, 85, 86, 87, 0, 0, 101, 102, 103,
- 104, 105, 106, 107, 0, 108, 0, 88, 89, 223,
- 0, 224, 0, 0, 90, 91, 92, 93, 94, 95,
- 96, 97, 0, 0, 0, 0, 0, 0, 98, 99,
- 100, 101, 102, 103, 104, 105, 106, 107, 0, 108,
- 84, 85, 86, 87, 234, 0, 0, 235, 0, 0,
- 0, 0, 0, 0, 0, 0, 88, 89, 0, 0,
- 0, 0, 0, 90, 91, 92, 93, 94, 95, 96,
- 97, 0, 0, 0, 0, 0, 0, 98, 99, 100,
- 101, 102, 103, 104, 105, 106, 107, 0, 108, 84,
- 85, 86, 87, 0, 0, 0, 142, 0, 0, 0,
- 0, 0, 0, 0, 0, 88, 89, 0, 0, 0,
- 0, 0, 90, 91, 92, 93, 94, 95, 96, 97,
+ 0, 0, 0, 13, 0, 14, 15, 0, 4, 5,
+ 6, 7, 8, 0, 0, 0, 0, 16, 9, 0,
+ 0, 0, 10, 0, 0, 0, 11, 12, 0, 17,
+ 0, 13, 0, 14, 15, 0, 18, 0, 19, 0,
+ 20, 21, 270, 22, 0, 16, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,
+ 0, 0, 0, 0, 18, 0, 19, 223, 20, 21,
+ 224, 22, 0, 52, 0, 0, 0, 0, 0, 59,
+ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
+ 70, 71, 72, 73, 74, 75, 76, 77, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 16, 84, 85,
+ 86, 87, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 88, 89, 225, 0, 226, 0,
+ 0, 90, 91, 92, 93, 94, 95, 96, 97, 0,
0, 0, 0, 0, 0, 0, 98, 99, 100, 101,
102, 103, 104, 105, 106, 107, 0, 108, 84, 85,
- 86, 87, 0, 0, 0, 265, 0, 0, 0, 0,
+ 86, 87, 237, 0, 0, 238, 0, 0, 0, 0,
0, 0, 0, 0, 88, 89, 0, 0, 0, 0,
0, 90, 91, 92, 93, 94, 95, 96, 97, 0,
- 0, 0, 0, 0, 0, 98, 99, 100, 101, 102,
- 103, 104, 105, 106, 107, 0, 108, 84, 85, 86,
- 87, 0, 0, 0, 288, 0, 0, 0, 0, 0,
- 0, 0, 0, 88, 89, 0, 0, 0, 0, 0,
- 90, 91, 92, 93, 94, 95, 96, 97, 0, 0,
- 0, 0, 0, 0, 98, 99, 100, 101, 102, 103,
- 104, 105, 106, 107, 0, 108, 303, 0, 304, 84,
- 85, 86, 87, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 88, 89, 0, 0, 0,
- 0, 0, 90, 91, 92, 93, 94, 95, 96, 97,
- 0, 0, 84, 85, 86, 87, 98, 99, 100, 101,
- 102, 103, 104, 105, 106, 107, 0, 108, 88, 89,
- 138, 0, 0, 0, 0, 90, 91, 92, 93, 94,
- 95, 96, 97, 0, 0, 84, 85, 86, 87, 98,
- 99, 100, 101, 102, 103, 104, 105, 106, 107, 0,
- 108, 88, 89, 214, 0, 0, 0, 0, 90, 91,
- 92, 93, 94, 95, 96, 97, 0, 0, 84, 85,
- 86, 87, 98, 99, 100, 101, 102, 103, 104, 105,
- 106, 107, 0, 108, 88, 89, 282, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 0, 108, 84, 85,
+ 86, 87, 0, 0, 0, 142, 0, 0, 0, 0,
+ 0, 0, 0, 0, 88, 89, 0, 0, 0, 0,
+ 0, 90, 91, 92, 93, 94, 95, 96, 97, 0,
+ 0, 0, 0, 0, 0, 0, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 0, 108, 84, 85,
+ 86, 87, 0, 0, 0, 269, 0, 0, 0, 0,
+ 0, 0, 0, 0, 88, 89, 0, 0, 0, 0,
+ 0, 90, 91, 92, 93, 94, 95, 96, 97, 0,
+ 0, 0, 0, 0, 0, 0, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 0, 108, 84, 85,
+ 86, 87, 0, 0, 0, 292, 0, 0, 0, 0,
+ 0, 0, 0, 0, 88, 89, 0, 0, 0, 0,
0, 90, 91, 92, 93, 94, 95, 96, 97, 0,
+ 0, 0, 0, 0, 0, 0, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 0, 108, 307, 0,
+ 308, 84, 85, 86, 87, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 88, 89, 0,
+ 0, 0, 0, 0, 90, 91, 92, 93, 94, 95,
+ 96, 97, 0, 0, 0, 84, 85, 86, 87, 98,
+ 99, 100, 101, 102, 103, 104, 105, 106, 107, 0,
+ 108, 88, 89, 138, 0, 0, 0, 0, 90, 91,
+ 92, 93, 94, 95, 96, 97, 0, 0, 0, 84,
+ 85, 86, 87, 98, 99, 100, 101, 102, 103, 104,
+ 105, 106, 107, 0, 108, 88, 89, 216, 0, 0,
+ 0, 0, 90, 91, 92, 93, 94, 95, 96, 97,
+ 0, 0, 0, 84, 85, 86, 87, 98, 99, 100,
+ 101, 102, 103, 104, 105, 106, 107, 0, 108, 88,
+ 89, 286, 0, 0, 0, 0, 90, 91, 92, 93,
+ 94, 95, 96, 97, 0, 0, 0, 84, 85, 86,
+ 87, 98, 99, 100, 101, 102, 103, 104, 105, 106,
+ 107, 0, 108, 88, 89, 306, 0, 0, 0, 0,
+ 90, 91, 92, 93, 94, 95, 96, 97, 0, 0,
0, 84, 85, 86, 87, 98, 99, 100, 101, 102,
- 103, 104, 105, 106, 107, 0, 108, 88, 89, 302,
+ 103, 104, 105, 106, 107, 0, 108, 88, 89, 310,
0, 0, 0, 0, 90, 91, 92, 93, 94, 95,
- 96, 97, 0, 0, 84, 85, 86, 87, 98, 99,
- 100, 101, 102, 103, 104, 105, 106, 107, 0, 108,
- 88, 89, 306, 0, 0, 0, 0, 90, 91, 92,
- 93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
- 0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 109, 84, 85, 86, 87, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 90, 91, 92,
- 93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
- 0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 189, 84, 85, 86, 87, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 90, 91, 92,
- 93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
+ 96, 97, 0, 0, 0, 0, 0, 0, 0, 98,
+ 99, 100, 101, 102, 103, 104, 105, 106, 107, 0,
+ 108, 109, 84, 85, 86, 87, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 88, 89,
+ 0, 0, 0, 0, 0, 90, 91, 92, 93, 94,
+ 95, 96, 97, 0, 0, 0, 0, 0, 0, 0,
+ 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
+ 0, 108, 191, 84, 85, 86, 87, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 88,
+ 89, 0, 0, 0, 0, 0, 90, 91, 92, 93,
+ 94, 95, 96, 97, 0, 0, 0, 0, 0, 0,
0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 243, 84, 85, 86, 87, 0, 0,
+ 107, 0, 108, 246, 84, 85, 86, 87, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 89, 0, 0, 0, 0, 0, 90, 91, 92,
93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
- 0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 292, 84, 85, 86, 87, 0, 0,
+ 0, 0, 98, 99, 100, 101, 102, 103, 104, 105,
+ 106, 107, 0, 108, 296, 84, 85, 86, 87, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 90, 91, 92,
- 93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
- 0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 293, 84, 85, 86, 87, 0, 0,
+ 0, 88, 89, 0, 0, 0, 0, 0, 90, 91,
+ 92, 93, 94, 95, 96, 97, 0, 0, 0, 0,
+ 0, 0, 0, 98, 99, 100, 101, 102, 103, 104,
+ 105, 106, 107, 0, 108, 297, 84, 85, 86, 87,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 90, 91, 92,
- 93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
- 0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 296, 84, 85, 86, 87, 0, 0,
- 0, 0, 0, 0, 0, 244, 245, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 90, 91, 92,
- 93, 94, 95, 96, 97, 0, 0, 0, 0, 0,
- 0, 98, 99, 100, 101, 102, 103, 104, 105, 106,
- 107, 0, 108, 84, 85, 86, 87, 0, 0, 0,
- 0, 0, 0, 130, 0, 0, 0, 0, 0, 88,
- 89, 0, 0, 0, 0, 0, 90, 91, 92, 93,
- 94, 95, 96, 97, 0, 0, 84, 85, 86, 87,
- 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
- 0, 108, 88, 89, 0, 0, 0, 0, 0, 90,
+ 0, 0, 88, 89, 0, 0, 0, 0, 0, 90,
91, 92, 93, 94, 95, 96, 97, 0, 0, 0,
- 276, 0, 0, 98, 99, 100, 101, 102, 103, 104,
- 105, 106, 107, 0, 108, 84, 85, 86, 87, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 290, 88, 89, 0, 0, 0, 0, 0, 90, 91,
- 92, 93, 94, 95, 96, 97, 0, 0, 0, 0,
- 0, 0, 98, 99, 100, 101, 102, 103, 104, 105,
- 106, 107, 0, 108, 84, 85, 86, 87, 0, 0,
- 0, 0, 0, 0, 291, 0, 0, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 9