Python-checkins
Threads by month
- ----- 2024 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
September 2009
- 21 participants
- 614 discussions
r75080 - in python/branches/py3k: Grammar/Grammar Include/graminit.h Lib/symbol.py Lib/test/test_parser.py Misc/NEWS Modules/parsermodule.c Python/ast.c Python/graminit.c
by benjamin.peterson 27 Sep '09
by benjamin.peterson 27 Sep '09
27 Sep '09
Author: benjamin.peterson
Date: Sun Sep 27 04:43:28 2009
New Revision: 75080
Log:
fix an ambiguity in the grammar from the implementation of extended unpacking
(one which was strangely "resolved" by pgen)
This also kills the unused testlist1 rule and fixes parse tree validation of
extended unpacking.
Modified:
python/branches/py3k/Grammar/Grammar
python/branches/py3k/Include/graminit.h
python/branches/py3k/Lib/symbol.py
python/branches/py3k/Lib/test/test_parser.py
python/branches/py3k/Misc/NEWS
python/branches/py3k/Modules/parsermodule.c
python/branches/py3k/Python/ast.c
python/branches/py3k/Python/graminit.c
Modified: python/branches/py3k/Grammar/Grammar
==============================================================================
--- python/branches/py3k/Grammar/Grammar (original)
+++ python/branches/py3k/Grammar/Grammar Sun Sep 27 04:43:28 2009
@@ -37,8 +37,9 @@
simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE
small_stmt: (expr_stmt | del_stmt | pass_stmt | flow_stmt |
import_stmt | global_stmt | nonlocal_stmt | assert_stmt)
-expr_stmt: testlist (augassign (yield_expr|testlist) |
- ('=' (yield_expr|testlist))*)
+expr_stmt: testlist_star_expr (augassign (yield_expr|testlist) |
+ ('=' (yield_expr|testlist_star_expr))*)
+testlist_star_expr: (test|star_expr) (',' (test|star_expr))* [',']
augassign: ('+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '|=' | '^=' |
'<<=' | '>>=' | '**=' | '//=')
# For normal assignments, additional restrictions enforced by the interpreter
@@ -86,9 +87,9 @@
or_test: and_test ('or' and_test)*
and_test: not_test ('and' not_test)*
not_test: 'not' not_test | comparison
-comparison: star_expr (comp_op star_expr)*
+comparison: expr (comp_op expr)*
comp_op: '<'|'>'|'=='|'>='|'<='|'<>'|'!='|'in'|'not' 'in'|'is'|'is' 'not'
-star_expr: ['*'] expr
+star_expr: '*' expr
expr: xor_expr ('|' xor_expr)*
xor_expr: and_expr ('^' and_expr)*
and_expr: shift_expr ('&' shift_expr)*
@@ -101,12 +102,12 @@
'[' [testlist_comp] ']' |
'{' [dictorsetmaker] '}' |
NAME | NUMBER | STRING+ | '...' | 'None' | 'True' | 'False')
-testlist_comp: test ( comp_for | (',' test)* [','] )
+testlist_comp: (test|star_expr) ( comp_for | (',' (test|star_expr))* [','] )
trailer: '(' [arglist] ')' | '[' subscriptlist ']' | '.' NAME
subscriptlist: subscript (',' subscript)* [',']
subscript: test | [test] ':' [test] [sliceop]
sliceop: ':' [test]
-exprlist: star_expr (',' star_expr)* [',']
+exprlist: (expr|star_expr) (',' (expr|star_expr))* [',']
testlist: test (',' test)* [',']
dictorsetmaker: ( (test ':' test (comp_for | (',' test ':' test)* [','])) |
(test (comp_for | (',' test)* [','])) )
@@ -123,8 +124,6 @@
comp_for: 'for' exprlist 'in' or_test [comp_iter]
comp_if: 'if' test_nocond [comp_iter]
-testlist1: test (',' test)*
-
# not used in grammar, but may appear in "node" passed from Parser to Compiler
encoding_decl: NAME
Modified: python/branches/py3k/Include/graminit.h
==============================================================================
--- python/branches/py3k/Include/graminit.h (original)
+++ python/branches/py3k/Include/graminit.h Sun Sep 27 04:43:28 2009
@@ -16,68 +16,68 @@
#define simple_stmt 269
#define small_stmt 270
#define expr_stmt 271
-#define augassign 272
-#define del_stmt 273
-#define pass_stmt 274
-#define flow_stmt 275
-#define break_stmt 276
-#define continue_stmt 277
-#define return_stmt 278
-#define yield_stmt 279
-#define raise_stmt 280
-#define import_stmt 281
-#define import_name 282
-#define import_from 283
-#define import_as_name 284
-#define dotted_as_name 285
-#define import_as_names 286
-#define dotted_as_names 287
-#define dotted_name 288
-#define global_stmt 289
-#define nonlocal_stmt 290
-#define assert_stmt 291
-#define compound_stmt 292
-#define if_stmt 293
-#define while_stmt 294
-#define for_stmt 295
-#define try_stmt 296
-#define with_stmt 297
-#define with_item 298
-#define except_clause 299
-#define suite 300
-#define test 301
-#define test_nocond 302
-#define lambdef 303
-#define lambdef_nocond 304
-#define or_test 305
-#define and_test 306
-#define not_test 307
-#define comparison 308
-#define comp_op 309
-#define star_expr 310
-#define expr 311
-#define xor_expr 312
-#define and_expr 313
-#define shift_expr 314
-#define arith_expr 315
-#define term 316
-#define factor 317
-#define power 318
-#define atom 319
-#define testlist_comp 320
-#define trailer 321
-#define subscriptlist 322
-#define subscript 323
-#define sliceop 324
-#define exprlist 325
-#define testlist 326
-#define dictorsetmaker 327
-#define classdef 328
-#define arglist 329
-#define argument 330
-#define comp_iter 331
-#define comp_for 332
-#define comp_if 333
-#define testlist1 334
+#define testlist_star_expr 272
+#define augassign 273
+#define del_stmt 274
+#define pass_stmt 275
+#define flow_stmt 276
+#define break_stmt 277
+#define continue_stmt 278
+#define return_stmt 279
+#define yield_stmt 280
+#define raise_stmt 281
+#define import_stmt 282
+#define import_name 283
+#define import_from 284
+#define import_as_name 285
+#define dotted_as_name 286
+#define import_as_names 287
+#define dotted_as_names 288
+#define dotted_name 289
+#define global_stmt 290
+#define nonlocal_stmt 291
+#define assert_stmt 292
+#define compound_stmt 293
+#define if_stmt 294
+#define while_stmt 295
+#define for_stmt 296
+#define try_stmt 297
+#define with_stmt 298
+#define with_item 299
+#define except_clause 300
+#define suite 301
+#define test 302
+#define test_nocond 303
+#define lambdef 304
+#define lambdef_nocond 305
+#define or_test 306
+#define and_test 307
+#define not_test 308
+#define comparison 309
+#define comp_op 310
+#define star_expr 311
+#define expr 312
+#define xor_expr 313
+#define and_expr 314
+#define shift_expr 315
+#define arith_expr 316
+#define term 317
+#define factor 318
+#define power 319
+#define atom 320
+#define testlist_comp 321
+#define trailer 322
+#define subscriptlist 323
+#define subscript 324
+#define sliceop 325
+#define exprlist 326
+#define testlist 327
+#define dictorsetmaker 328
+#define classdef 329
+#define arglist 330
+#define argument 331
+#define comp_iter 332
+#define comp_for 333
+#define comp_if 334
#define encoding_decl 335
#define yield_expr 336
Modified: python/branches/py3k/Lib/symbol.py
==============================================================================
--- python/branches/py3k/Lib/symbol.py (original)
+++ python/branches/py3k/Lib/symbol.py Sun Sep 27 04:43:28 2009
@@ -26,69 +26,69 @@
simple_stmt = 269
small_stmt = 270
expr_stmt = 271
-augassign = 272
-del_stmt = 273
-pass_stmt = 274
-flow_stmt = 275
-break_stmt = 276
-continue_stmt = 277
-return_stmt = 278
-yield_stmt = 279
-raise_stmt = 280
-import_stmt = 281
-import_name = 282
-import_from = 283
-import_as_name = 284
-dotted_as_name = 285
-import_as_names = 286
-dotted_as_names = 287
-dotted_name = 288
-global_stmt = 289
-nonlocal_stmt = 290
-assert_stmt = 291
-compound_stmt = 292
-if_stmt = 293
-while_stmt = 294
-for_stmt = 295
-try_stmt = 296
-with_stmt = 297
-with_item = 298
-except_clause = 299
-suite = 300
-test = 301
-test_nocond = 302
-lambdef = 303
-lambdef_nocond = 304
-or_test = 305
-and_test = 306
-not_test = 307
-comparison = 308
-comp_op = 309
-star_expr = 310
-expr = 311
-xor_expr = 312
-and_expr = 313
-shift_expr = 314
-arith_expr = 315
-term = 316
-factor = 317
-power = 318
-atom = 319
-testlist_comp = 320
-trailer = 321
-subscriptlist = 322
-subscript = 323
-sliceop = 324
-exprlist = 325
-testlist = 326
-dictorsetmaker = 327
-classdef = 328
-arglist = 329
-argument = 330
-comp_iter = 331
-comp_for = 332
-comp_if = 333
-testlist1 = 334
+testlist_star_expr = 272
+augassign = 273
+del_stmt = 274
+pass_stmt = 275
+flow_stmt = 276
+break_stmt = 277
+continue_stmt = 278
+return_stmt = 279
+yield_stmt = 280
+raise_stmt = 281
+import_stmt = 282
+import_name = 283
+import_from = 284
+import_as_name = 285
+dotted_as_name = 286
+import_as_names = 287
+dotted_as_names = 288
+dotted_name = 289
+global_stmt = 290
+nonlocal_stmt = 291
+assert_stmt = 292
+compound_stmt = 293
+if_stmt = 294
+while_stmt = 295
+for_stmt = 296
+try_stmt = 297
+with_stmt = 298
+with_item = 299
+except_clause = 300
+suite = 301
+test = 302
+test_nocond = 303
+lambdef = 304
+lambdef_nocond = 305
+or_test = 306
+and_test = 307
+not_test = 308
+comparison = 309
+comp_op = 310
+star_expr = 311
+expr = 312
+xor_expr = 313
+and_expr = 314
+shift_expr = 315
+arith_expr = 316
+term = 317
+factor = 318
+power = 319
+atom = 320
+testlist_comp = 321
+trailer = 322
+subscriptlist = 323
+subscript = 324
+sliceop = 325
+exprlist = 326
+testlist = 327
+dictorsetmaker = 328
+classdef = 329
+arglist = 330
+argument = 331
+comp_iter = 332
+comp_for = 333
+comp_if = 334
encoding_decl = 335
yield_expr = 336
#--end constants--
Modified: python/branches/py3k/Lib/test/test_parser.py
==============================================================================
--- python/branches/py3k/Lib/test/test_parser.py (original)
+++ python/branches/py3k/Lib/test/test_parser.py Sun Sep 27 04:43:28 2009
@@ -242,6 +242,12 @@
(0, '', 2, -1)],
terminals)
+ def test_extended_unpacking(self):
+ self.check_suite("*a = y")
+ self.check_suite("x, *b, = m")
+ self.check_suite("[*a, *b] = y")
+ self.check_suite("for [*x, b] in x: pass")
+
#
# Second, we take *invalid* trees and make sure we get ParserError
Modified: python/branches/py3k/Misc/NEWS
==============================================================================
--- python/branches/py3k/Misc/NEWS (original)
+++ python/branches/py3k/Misc/NEWS Sun Sep 27 04:43:28 2009
@@ -12,6 +12,8 @@
Core and Builtins
-----------------
+- Issue #5460: Fix an ambiguity in the grammar.
+
- Issue #1766304: Improve performance of membership tests on range objects.
- Issue #6713: Improve performance of integer -> string conversions.
Modified: python/branches/py3k/Modules/parsermodule.c
==============================================================================
--- python/branches/py3k/Modules/parsermodule.c (original)
+++ python/branches/py3k/Modules/parsermodule.c Sun Sep 27 04:43:28 2009
@@ -943,7 +943,7 @@
VALIDATER(import_stmt); VALIDATER(import_stmt);
VALIDATER(import_name); VALIDATER(yield_stmt);
VALIDATER(global_stmt); VALIDATER(assert_stmt);
-VALIDATER(compound_stmt);
+VALIDATER(compound_stmt); VALIDATER(test_or_star_expr);
VALIDATER(while); VALIDATER(for);
VALIDATER(try); VALIDATER(except_clause);
VALIDATER(test); VALIDATER(and_test);
@@ -958,10 +958,10 @@
VALIDATER(subscriptlist); VALIDATER(sliceop);
VALIDATER(exprlist); VALIDATER(dictorsetmaker);
VALIDATER(arglist); VALIDATER(argument);
-VALIDATER(testlist1); VALIDATER(comp_for);
+VALIDATER(comp_for);
VALIDATER(comp_iter); VALIDATER(comp_if);
VALIDATER(testlist_comp); VALIDATER(yield_expr);
-VALIDATER(yield_or_testlist); VALIDATER(or_test);
+VALIDATER(or_test);
VALIDATER(test_nocond); VALIDATER(lambdef_nocond);
#undef VALIDATER
@@ -1183,12 +1183,11 @@
validate_test, "testlist"));
}
-
static int
-validate_testlist1(node *tree)
+validate_testlist_star_expr(node *tl)
{
- return (validate_repeating_list(tree, testlist1,
- validate_test, "testlist1"));
+ return (validate_repeating_list(tl, testlist_star_expr, validate_test_or_star_expr,
+ "testlist"));
}
@@ -1516,12 +1515,17 @@
}
static int
-validate_yield_or_testlist(node *tree)
+validate_yield_or_testlist(node *tree, int tse)
{
- if (TYPE(tree) == yield_expr)
- return validate_yield_expr(tree);
- else
- return validate_testlist(tree);
+ if (TYPE(tree) == yield_expr) {
+ return validate_yield_expr(tree);
+ }
+ else {
+ if (tse)
+ return validate_testlist_star_expr(tree);
+ else
+ return validate_testlist(tree);
+ }
}
static int
@@ -1531,12 +1535,12 @@
int nch = NCH(tree);
int res = (validate_ntype(tree, expr_stmt)
&& is_odd(nch)
- && validate_testlist(CHILD(tree, 0)));
+ && validate_testlist_star_expr(CHILD(tree, 0)));
if (res && nch == 3
&& TYPE(CHILD(tree, 1)) == augassign) {
res = validate_numnodes(CHILD(tree, 1), 1, "augassign")
- && validate_yield_or_testlist(CHILD(tree, 2));
+ && validate_yield_or_testlist(CHILD(tree, 2), 0);
if (res) {
char *s = STR(CHILD(CHILD(tree, 1), 0));
@@ -1560,7 +1564,7 @@
else {
for (j = 1; res && (j < nch); j += 2)
res = validate_equal(CHILD(tree, j))
- && validate_yield_or_testlist(CHILD(tree, j + 1));
+ && validate_yield_or_testlist(CHILD(tree, j + 1), 1);
}
return (res);
}
@@ -2077,11 +2081,11 @@
int nch = NCH(tree);
int res = (validate_ntype(tree, comparison)
&& is_odd(nch)
- && validate_star_expr(CHILD(tree, 0)));
+ && validate_expr(CHILD(tree, 0)));
for (pos = 1; res && (pos < nch); pos += 2)
res = (validate_comp_op(CHILD(tree, pos))
- && validate_star_expr(CHILD(tree, pos + 1)));
+ && validate_expr(CHILD(tree, pos + 1)));
return (res);
}
@@ -2143,12 +2147,10 @@
{
int res = validate_ntype(tree, star_expr);
if (!res) return res;
- if (NCH(tree) == 2) {
- return validate_ntype(CHILD(tree, 0), STAR) && \
- validate_expr(CHILD(tree, 1));
- } else {
- return validate_expr(CHILD(tree, 0));
- }
+ if (!validate_numnodes(tree, 2, "star_expr"))
+ return 0;
+ return validate_ntype(CHILD(tree, 0), STAR) && \
+ validate_expr(CHILD(tree, 1));
}
@@ -2379,7 +2381,7 @@
if (nch == 0)
err_string("missing child nodes of testlist_comp");
else {
- ok = validate_test(CHILD(tree, 0));
+ ok = validate_test_or_star_expr(CHILD(tree, 0));
}
/*
@@ -2392,7 +2394,7 @@
int i = 1;
while (ok && nch - i >= 2) {
ok = (validate_comma(CHILD(tree, i))
- && validate_test(CHILD(tree, i+1)));
+ && validate_test_or_star_expr(CHILD(tree, i+1)));
i += 2;
}
if (ok && i == nch-1)
@@ -2786,10 +2788,27 @@
static int
+validate_test_or_star_expr(node *n)
+{
+ if (TYPE(n) == test)
+ return validate_test(n);
+ return validate_star_expr(n);
+}
+
+static int
+validate_expr_or_star_expr(node *n)
+{
+ if (TYPE(n) == expr)
+ return validate_expr(n);
+ return validate_star_expr(n);
+}
+
+
+static int
validate_exprlist(node *tree)
{
return (validate_repeating_list(tree, exprlist,
- validate_star_expr, "exprlist"));
+ validate_expr_or_star_expr, "exprlist"));
}
@@ -2970,9 +2989,6 @@
case yield_expr:
res = validate_yield_expr(tree);
break;
- case testlist1:
- res = validate_testlist1(tree);
- break;
case test:
res = validate_test(tree);
break;
Modified: python/branches/py3k/Python/ast.c
==============================================================================
--- python/branches/py3k/Python/ast.c (original)
+++ python/branches/py3k/Python/ast.c Sun Sep 27 04:43:28 2009
@@ -603,20 +603,23 @@
static asdl_seq *
seq_for_testlist(struct compiling *c, const node *n)
{
- /* testlist: test (',' test)* [','] */
+ /* testlist: test (',' test)* [',']
+ testlist_star_expr: test|star_expr (',' test|star_expr)* [',']
+ */
asdl_seq *seq;
expr_ty expression;
int i;
- assert(TYPE(n) == testlist || TYPE(n) == testlist_comp);
+ assert(TYPE(n) == testlist || TYPE(n) == testlist_star_expr || TYPE(n) == testlist_comp);
seq = asdl_seq_new((NCH(n) + 1) / 2, c->c_arena);
if (!seq)
return NULL;
for (i = 0; i < NCH(n); i += 2) {
- assert(TYPE(CHILD(n, i)) == test || TYPE(CHILD(n, i)) == test_nocond);
+ const node *ch = CHILD(n, i);
+ assert(TYPE(ch) == test || TYPE(ch) == test_nocond || TYPE(ch) == star_expr);
- expression = ast_for_expr(c, CHILD(n, i));
+ expression = ast_for_expr(c, ch);
if (!expression)
return NULL;
@@ -1886,10 +1889,9 @@
break;
case star_expr:
- if (TYPE(CHILD(n, 0)) == STAR) {
- return ast_for_starred(c, n);
- }
- /* Fallthrough */
+ if (TYPE(CHILD(n, 0)) == STAR)
+ return ast_for_starred(c, n);
+ /* Fall through to generic case. */
/* The next five cases all handle BinOps. The main body of code
is the same in each case, but the switch turned inside out to
reuse the code for each type of operator.
@@ -2067,7 +2069,6 @@
{
/* testlist_comp: test (comp_for | (',' test)* [',']) */
/* testlist: test (',' test)* [','] */
- /* testlist1: test (',' test)* */
assert(NCH(n) > 0);
if (TYPE(n) == testlist_comp) {
if (NCH(n) > 1)
@@ -2075,7 +2076,7 @@
}
else {
assert(TYPE(n) == testlist ||
- TYPE(n) == testlist1);
+ TYPE(n) == testlist_star_expr);
}
if (NCH(n) == 1)
return ast_for_expr(c, CHILD(n, 0));
@@ -2091,9 +2092,9 @@
ast_for_expr_stmt(struct compiling *c, const node *n)
{
REQ(n, expr_stmt);
- /* expr_stmt: testlist (augassign (yield_expr|testlist)
+ /* expr_stmt: testlist_star_expr (augassign (yield_expr|testlist)
| ('=' (yield_expr|testlist))*)
- testlist: test (',' test)* [',']
+ testlist_star_expr: (test|star_expr) (',' test|star_expr)* [',']
augassign: '+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '|=' | '^='
| '<<=' | '>>=' | '**=' | '//='
test: ... here starts the operator precendence dance
@@ -2161,7 +2162,7 @@
asdl_seq_SET(targets, i / 2, e);
}
value = CHILD(n, NCH(n) - 1);
- if (TYPE(value) == testlist)
+ if (TYPE(value) == testlist_star_expr)
expression = ast_for_testlist(c, value);
else
expression = ast_for_expr(c, value);
Modified: python/branches/py3k/Python/graminit.c
==============================================================================
--- python/branches/py3k/Python/graminit.c (original)
+++ python/branches/py3k/Python/graminit.c Sun Sep 27 04:43:28 2009
@@ -364,20 +364,20 @@
{1, arcs_14_1},
};
static arc arcs_15_0[1] = {
- {9, 1},
+ {45, 1},
};
static arc arcs_15_1[3] = {
- {45, 2},
+ {46, 2},
{29, 3},
{0, 1},
};
static arc arcs_15_2[2] = {
- {46, 4},
+ {47, 4},
{9, 4},
};
static arc arcs_15_3[2] = {
- {46, 5},
- {9, 5},
+ {47, 5},
+ {45, 5},
};
static arc arcs_15_4[1] = {
{0, 4},
@@ -394,9 +394,25 @@
{1, arcs_15_4},
{2, arcs_15_5},
};
-static arc arcs_16_0[12] = {
- {47, 1},
+static arc arcs_16_0[2] = {
+ {24, 1},
+ {48, 1},
+};
+static arc arcs_16_1[2] = {
+ {30, 2},
+ {0, 1},
+};
+static arc arcs_16_2[3] = {
+ {24, 1},
{48, 1},
+ {0, 2},
+};
+static state states_16[3] = {
+ {2, arcs_16_0},
+ {2, arcs_16_1},
+ {3, arcs_16_2},
+};
+static arc arcs_17_0[12] = {
{49, 1},
{50, 1},
{51, 1},
@@ -407,64 +423,56 @@
{56, 1},
{57, 1},
{58, 1},
-};
-static arc arcs_16_1[1] = {
- {0, 1},
-};
-static state states_16[2] = {
- {12, arcs_16_0},
- {1, arcs_16_1},
-};
-static arc arcs_17_0[1] = {
{59, 1},
+ {60, 1},
};
static arc arcs_17_1[1] = {
- {60, 2},
-};
-static arc arcs_17_2[1] = {
- {0, 2},
+ {0, 1},
};
-static state states_17[3] = {
- {1, arcs_17_0},
+static state states_17[2] = {
+ {12, arcs_17_0},
{1, arcs_17_1},
- {1, arcs_17_2},
};
static arc arcs_18_0[1] = {
{61, 1},
};
static arc arcs_18_1[1] = {
- {0, 1},
+ {62, 2},
+};
+static arc arcs_18_2[1] = {
+ {0, 2},
};
-static state states_18[2] = {
+static state states_18[3] = {
{1, arcs_18_0},
{1, arcs_18_1},
+ {1, arcs_18_2},
};
-static arc arcs_19_0[5] = {
- {62, 1},
+static arc arcs_19_0[1] = {
{63, 1},
- {64, 1},
- {65, 1},
- {66, 1},
};
static arc arcs_19_1[1] = {
{0, 1},
};
static state states_19[2] = {
- {5, arcs_19_0},
+ {1, arcs_19_0},
{1, arcs_19_1},
};
-static arc arcs_20_0[1] = {
+static arc arcs_20_0[5] = {
+ {64, 1},
+ {65, 1},
+ {66, 1},
{67, 1},
+ {68, 1},
};
static arc arcs_20_1[1] = {
{0, 1},
};
static state states_20[2] = {
- {1, arcs_20_0},
+ {5, arcs_20_0},
{1, arcs_20_1},
};
static arc arcs_21_0[1] = {
- {68, 1},
+ {69, 1},
};
static arc arcs_21_1[1] = {
{0, 1},
@@ -474,144 +482,135 @@
{1, arcs_21_1},
};
static arc arcs_22_0[1] = {
- {69, 1},
+ {70, 1},
};
-static arc arcs_22_1[2] = {
- {9, 2},
+static arc arcs_22_1[1] = {
{0, 1},
};
-static arc arcs_22_2[1] = {
- {0, 2},
-};
-static state states_22[3] = {
+static state states_22[2] = {
{1, arcs_22_0},
- {2, arcs_22_1},
- {1, arcs_22_2},
+ {1, arcs_22_1},
};
static arc arcs_23_0[1] = {
- {46, 1},
+ {71, 1},
};
-static arc arcs_23_1[1] = {
+static arc arcs_23_1[2] = {
+ {9, 2},
{0, 1},
};
-static state states_23[2] = {
+static arc arcs_23_2[1] = {
+ {0, 2},
+};
+static state states_23[3] = {
{1, arcs_23_0},
- {1, arcs_23_1},
+ {2, arcs_23_1},
+ {1, arcs_23_2},
};
static arc arcs_24_0[1] = {
- {70, 1},
+ {47, 1},
+};
+static arc arcs_24_1[1] = {
+ {0, 1},
+};
+static state states_24[2] = {
+ {1, arcs_24_0},
+ {1, arcs_24_1},
+};
+static arc arcs_25_0[1] = {
+ {72, 1},
};
-static arc arcs_24_1[2] = {
+static arc arcs_25_1[2] = {
{24, 2},
{0, 1},
};
-static arc arcs_24_2[2] = {
- {71, 3},
+static arc arcs_25_2[2] = {
+ {73, 3},
{0, 2},
};
-static arc arcs_24_3[1] = {
+static arc arcs_25_3[1] = {
{24, 4},
};
-static arc arcs_24_4[1] = {
+static arc arcs_25_4[1] = {
{0, 4},
};
-static state states_24[5] = {
- {1, arcs_24_0},
- {2, arcs_24_1},
- {2, arcs_24_2},
- {1, arcs_24_3},
- {1, arcs_24_4},
+static state states_25[5] = {
+ {1, arcs_25_0},
+ {2, arcs_25_1},
+ {2, arcs_25_2},
+ {1, arcs_25_3},
+ {1, arcs_25_4},
};
-static arc arcs_25_0[2] = {
- {72, 1},
- {73, 1},
+static arc arcs_26_0[2] = {
+ {74, 1},
+ {75, 1},
};
-static arc arcs_25_1[1] = {
+static arc arcs_26_1[1] = {
{0, 1},
};
-static state states_25[2] = {
- {2, arcs_25_0},
- {1, arcs_25_1},
+static state states_26[2] = {
+ {2, arcs_26_0},
+ {1, arcs_26_1},
};
-static arc arcs_26_0[1] = {
- {74, 1},
+static arc arcs_27_0[1] = {
+ {76, 1},
};
-static arc arcs_26_1[1] = {
- {75, 2},
+static arc arcs_27_1[1] = {
+ {77, 2},
};
-static arc arcs_26_2[1] = {
+static arc arcs_27_2[1] = {
{0, 2},
};
-static state states_26[3] = {
- {1, arcs_26_0},
- {1, arcs_26_1},
- {1, arcs_26_2},
+static state states_27[3] = {
+ {1, arcs_27_0},
+ {1, arcs_27_1},
+ {1, arcs_27_2},
};
-static arc arcs_27_0[1] = {
- {71, 1},
+static arc arcs_28_0[1] = {
+ {73, 1},
};
-static arc arcs_27_1[3] = {
- {76, 2},
- {77, 2},
+static arc arcs_28_1[3] = {
+ {78, 2},
+ {79, 2},
{12, 3},
};
-static arc arcs_27_2[4] = {
- {76, 2},
- {77, 2},
+static arc arcs_28_2[4] = {
+ {78, 2},
+ {79, 2},
{12, 3},
- {74, 4},
+ {76, 4},
};
-static arc arcs_27_3[1] = {
- {74, 4},
+static arc arcs_28_3[1] = {
+ {76, 4},
};
-static arc arcs_27_4[3] = {
+static arc arcs_28_4[3] = {
{31, 5},
{13, 6},
- {78, 5},
+ {80, 5},
};
-static arc arcs_27_5[1] = {
+static arc arcs_28_5[1] = {
{0, 5},
};
-static arc arcs_27_6[1] = {
- {78, 7},
+static arc arcs_28_6[1] = {
+ {80, 7},
};
-static arc arcs_27_7[1] = {
+static arc arcs_28_7[1] = {
{15, 5},
};
-static state states_27[8] = {
- {1, arcs_27_0},
- {3, arcs_27_1},
- {4, arcs_27_2},
- {1, arcs_27_3},
- {3, arcs_27_4},
- {1, arcs_27_5},
- {1, arcs_27_6},
- {1, arcs_27_7},
-};
-static arc arcs_28_0[1] = {
- {21, 1},
-};
-static arc arcs_28_1[2] = {
- {80, 2},
- {0, 1},
-};
-static arc arcs_28_2[1] = {
- {21, 3},
-};
-static arc arcs_28_3[1] = {
- {0, 3},
-};
-static state states_28[4] = {
+static state states_28[8] = {
{1, arcs_28_0},
- {2, arcs_28_1},
- {1, arcs_28_2},
+ {3, arcs_28_1},
+ {4, arcs_28_2},
{1, arcs_28_3},
+ {3, arcs_28_4},
+ {1, arcs_28_5},
+ {1, arcs_28_6},
+ {1, arcs_28_7},
};
static arc arcs_29_0[1] = {
- {12, 1},
+ {21, 1},
};
static arc arcs_29_1[2] = {
- {80, 2},
+ {82, 2},
{0, 1},
};
static arc arcs_29_2[1] = {
@@ -627,37 +626,45 @@
{1, arcs_29_3},
};
static arc arcs_30_0[1] = {
- {79, 1},
+ {12, 1},
};
static arc arcs_30_1[2] = {
- {30, 2},
+ {82, 2},
{0, 1},
};
-static arc arcs_30_2[2] = {
- {79, 1},
- {0, 2},
+static arc arcs_30_2[1] = {
+ {21, 3},
};
-static state states_30[3] = {
+static arc arcs_30_3[1] = {
+ {0, 3},
+};
+static state states_30[4] = {
{1, arcs_30_0},
{2, arcs_30_1},
- {2, arcs_30_2},
+ {1, arcs_30_2},
+ {1, arcs_30_3},
};
static arc arcs_31_0[1] = {
{81, 1},
};
static arc arcs_31_1[2] = {
- {30, 0},
+ {30, 2},
{0, 1},
};
-static state states_31[2] = {
+static arc arcs_31_2[2] = {
+ {81, 1},
+ {0, 2},
+};
+static state states_31[3] = {
{1, arcs_31_0},
{2, arcs_31_1},
+ {2, arcs_31_2},
};
static arc arcs_32_0[1] = {
- {21, 1},
+ {83, 1},
};
static arc arcs_32_1[2] = {
- {76, 0},
+ {30, 0},
{0, 1},
};
static state states_32[2] = {
@@ -665,22 +672,18 @@
{2, arcs_32_1},
};
static arc arcs_33_0[1] = {
- {82, 1},
-};
-static arc arcs_33_1[1] = {
- {21, 2},
+ {21, 1},
};
-static arc arcs_33_2[2] = {
- {30, 1},
- {0, 2},
+static arc arcs_33_1[2] = {
+ {78, 0},
+ {0, 1},
};
-static state states_33[3] = {
+static state states_33[2] = {
{1, arcs_33_0},
- {1, arcs_33_1},
- {2, arcs_33_2},
+ {2, arcs_33_1},
};
static arc arcs_34_0[1] = {
- {83, 1},
+ {84, 1},
};
static arc arcs_34_1[1] = {
{21, 2},
@@ -695,83 +698,62 @@
{2, arcs_34_2},
};
static arc arcs_35_0[1] = {
- {84, 1},
+ {85, 1},
};
static arc arcs_35_1[1] = {
- {24, 2},
+ {21, 2},
};
static arc arcs_35_2[2] = {
- {30, 3},
+ {30, 1},
{0, 2},
};
-static arc arcs_35_3[1] = {
- {24, 4},
-};
-static arc arcs_35_4[1] = {
- {0, 4},
-};
-static state states_35[5] = {
+static state states_35[3] = {
{1, arcs_35_0},
{1, arcs_35_1},
{2, arcs_35_2},
- {1, arcs_35_3},
- {1, arcs_35_4},
};
-static arc arcs_36_0[8] = {
- {85, 1},
+static arc arcs_36_0[1] = {
{86, 1},
- {87, 1},
- {88, 1},
- {89, 1},
- {19, 1},
- {18, 1},
- {17, 1},
};
static arc arcs_36_1[1] = {
- {0, 1},
-};
-static state states_36[2] = {
- {8, arcs_36_0},
- {1, arcs_36_1},
-};
-static arc arcs_37_0[1] = {
- {90, 1},
-};
-static arc arcs_37_1[1] = {
{24, 2},
};
-static arc arcs_37_2[1] = {
- {25, 3},
+static arc arcs_36_2[2] = {
+ {30, 3},
+ {0, 2},
};
-static arc arcs_37_3[1] = {
- {26, 4},
+static arc arcs_36_3[1] = {
+ {24, 4},
};
-static arc arcs_37_4[3] = {
- {91, 1},
- {92, 5},
+static arc arcs_36_4[1] = {
{0, 4},
};
-static arc arcs_37_5[1] = {
- {25, 6},
+static state states_36[5] = {
+ {1, arcs_36_0},
+ {1, arcs_36_1},
+ {2, arcs_36_2},
+ {1, arcs_36_3},
+ {1, arcs_36_4},
};
-static arc arcs_37_6[1] = {
- {26, 7},
+static arc arcs_37_0[8] = {
+ {87, 1},
+ {88, 1},
+ {89, 1},
+ {90, 1},
+ {91, 1},
+ {19, 1},
+ {18, 1},
+ {17, 1},
};
-static arc arcs_37_7[1] = {
- {0, 7},
+static arc arcs_37_1[1] = {
+ {0, 1},
};
-static state states_37[8] = {
- {1, arcs_37_0},
+static state states_37[2] = {
+ {8, arcs_37_0},
{1, arcs_37_1},
- {1, arcs_37_2},
- {1, arcs_37_3},
- {3, arcs_37_4},
- {1, arcs_37_5},
- {1, arcs_37_6},
- {1, arcs_37_7},
};
static arc arcs_38_0[1] = {
- {93, 1},
+ {92, 1},
};
static arc arcs_38_1[1] = {
{24, 2},
@@ -782,8 +764,9 @@
static arc arcs_38_3[1] = {
{26, 4},
};
-static arc arcs_38_4[2] = {
- {92, 5},
+static arc arcs_38_4[3] = {
+ {93, 1},
+ {94, 5},
{0, 4},
};
static arc arcs_38_5[1] = {
@@ -800,267 +783,279 @@
{1, arcs_38_1},
{1, arcs_38_2},
{1, arcs_38_3},
- {2, arcs_38_4},
+ {3, arcs_38_4},
{1, arcs_38_5},
{1, arcs_38_6},
{1, arcs_38_7},
};
static arc arcs_39_0[1] = {
- {94, 1},
+ {95, 1},
};
static arc arcs_39_1[1] = {
- {60, 2},
+ {24, 2},
};
static arc arcs_39_2[1] = {
- {95, 3},
+ {25, 3},
};
static arc arcs_39_3[1] = {
- {9, 4},
+ {26, 4},
};
-static arc arcs_39_4[1] = {
- {25, 5},
+static arc arcs_39_4[2] = {
+ {94, 5},
+ {0, 4},
};
static arc arcs_39_5[1] = {
- {26, 6},
+ {25, 6},
};
-static arc arcs_39_6[2] = {
- {92, 7},
- {0, 6},
+static arc arcs_39_6[1] = {
+ {26, 7},
};
static arc arcs_39_7[1] = {
- {25, 8},
-};
-static arc arcs_39_8[1] = {
- {26, 9},
-};
-static arc arcs_39_9[1] = {
- {0, 9},
+ {0, 7},
};
-static state states_39[10] = {
+static state states_39[8] = {
{1, arcs_39_0},
{1, arcs_39_1},
{1, arcs_39_2},
{1, arcs_39_3},
- {1, arcs_39_4},
+ {2, arcs_39_4},
{1, arcs_39_5},
- {2, arcs_39_6},
+ {1, arcs_39_6},
{1, arcs_39_7},
- {1, arcs_39_8},
- {1, arcs_39_9},
};
static arc arcs_40_0[1] = {
{96, 1},
};
static arc arcs_40_1[1] = {
- {25, 2},
+ {62, 2},
};
static arc arcs_40_2[1] = {
- {26, 3},
+ {97, 3},
};
-static arc arcs_40_3[2] = {
- {97, 4},
- {98, 5},
+static arc arcs_40_3[1] = {
+ {9, 4},
};
static arc arcs_40_4[1] = {
- {25, 6},
+ {25, 5},
};
static arc arcs_40_5[1] = {
- {25, 7},
+ {26, 6},
};
-static arc arcs_40_6[1] = {
- {26, 8},
+static arc arcs_40_6[2] = {
+ {94, 7},
+ {0, 6},
};
static arc arcs_40_7[1] = {
- {26, 9},
+ {25, 8},
};
-static arc arcs_40_8[4] = {
- {97, 4},
- {92, 10},
- {98, 5},
- {0, 8},
+static arc arcs_40_8[1] = {
+ {26, 9},
};
static arc arcs_40_9[1] = {
{0, 9},
};
-static arc arcs_40_10[1] = {
- {25, 11},
-};
-static arc arcs_40_11[1] = {
- {26, 12},
-};
-static arc arcs_40_12[2] = {
- {98, 5},
- {0, 12},
-};
-static state states_40[13] = {
+static state states_40[10] = {
{1, arcs_40_0},
{1, arcs_40_1},
{1, arcs_40_2},
- {2, arcs_40_3},
+ {1, arcs_40_3},
{1, arcs_40_4},
{1, arcs_40_5},
- {1, arcs_40_6},
+ {2, arcs_40_6},
{1, arcs_40_7},
- {4, arcs_40_8},
+ {1, arcs_40_8},
{1, arcs_40_9},
- {1, arcs_40_10},
- {1, arcs_40_11},
- {2, arcs_40_12},
};
static arc arcs_41_0[1] = {
- {99, 1},
+ {98, 1},
};
static arc arcs_41_1[1] = {
- {100, 2},
+ {25, 2},
};
-static arc arcs_41_2[2] = {
- {30, 1},
- {25, 3},
+static arc arcs_41_2[1] = {
+ {26, 3},
};
-static arc arcs_41_3[1] = {
- {26, 4},
+static arc arcs_41_3[2] = {
+ {99, 4},
+ {100, 5},
};
static arc arcs_41_4[1] = {
- {0, 4},
+ {25, 6},
};
-static state states_41[5] = {
+static arc arcs_41_5[1] = {
+ {25, 7},
+};
+static arc arcs_41_6[1] = {
+ {26, 8},
+};
+static arc arcs_41_7[1] = {
+ {26, 9},
+};
+static arc arcs_41_8[4] = {
+ {99, 4},
+ {94, 10},
+ {100, 5},
+ {0, 8},
+};
+static arc arcs_41_9[1] = {
+ {0, 9},
+};
+static arc arcs_41_10[1] = {
+ {25, 11},
+};
+static arc arcs_41_11[1] = {
+ {26, 12},
+};
+static arc arcs_41_12[2] = {
+ {100, 5},
+ {0, 12},
+};
+static state states_41[13] = {
{1, arcs_41_0},
{1, arcs_41_1},
- {2, arcs_41_2},
- {1, arcs_41_3},
+ {1, arcs_41_2},
+ {2, arcs_41_3},
{1, arcs_41_4},
+ {1, arcs_41_5},
+ {1, arcs_41_6},
+ {1, arcs_41_7},
+ {4, arcs_41_8},
+ {1, arcs_41_9},
+ {1, arcs_41_10},
+ {1, arcs_41_11},
+ {2, arcs_41_12},
};
static arc arcs_42_0[1] = {
- {24, 1},
+ {101, 1},
};
-static arc arcs_42_1[2] = {
- {80, 2},
- {0, 1},
+static arc arcs_42_1[1] = {
+ {102, 2},
};
-static arc arcs_42_2[1] = {
- {101, 3},
+static arc arcs_42_2[2] = {
+ {30, 1},
+ {25, 3},
};
static arc arcs_42_3[1] = {
- {0, 3},
+ {26, 4},
+};
+static arc arcs_42_4[1] = {
+ {0, 4},
};
-static state states_42[4] = {
+static state states_42[5] = {
{1, arcs_42_0},
- {2, arcs_42_1},
- {1, arcs_42_2},
+ {1, arcs_42_1},
+ {2, arcs_42_2},
{1, arcs_42_3},
+ {1, arcs_42_4},
};
static arc arcs_43_0[1] = {
- {102, 1},
+ {24, 1},
};
static arc arcs_43_1[2] = {
- {24, 2},
+ {82, 2},
{0, 1},
};
-static arc arcs_43_2[2] = {
- {80, 3},
- {0, 2},
+static arc arcs_43_2[1] = {
+ {103, 3},
};
static arc arcs_43_3[1] = {
- {21, 4},
-};
-static arc arcs_43_4[1] = {
- {0, 4},
+ {0, 3},
};
-static state states_43[5] = {
+static state states_43[4] = {
{1, arcs_43_0},
{2, arcs_43_1},
- {2, arcs_43_2},
+ {1, arcs_43_2},
{1, arcs_43_3},
- {1, arcs_43_4},
};
-static arc arcs_44_0[2] = {
- {3, 1},
- {2, 2},
+static arc arcs_44_0[1] = {
+ {104, 1},
};
-static arc arcs_44_1[1] = {
+static arc arcs_44_1[2] = {
+ {24, 2},
{0, 1},
};
-static arc arcs_44_2[1] = {
- {103, 3},
+static arc arcs_44_2[2] = {
+ {82, 3},
+ {0, 2},
};
static arc arcs_44_3[1] = {
- {6, 4},
+ {21, 4},
};
-static arc arcs_44_4[2] = {
- {6, 4},
- {104, 1},
+static arc arcs_44_4[1] = {
+ {0, 4},
};
static state states_44[5] = {
- {2, arcs_44_0},
- {1, arcs_44_1},
- {1, arcs_44_2},
+ {1, arcs_44_0},
+ {2, arcs_44_1},
+ {2, arcs_44_2},
{1, arcs_44_3},
- {2, arcs_44_4},
+ {1, arcs_44_4},
};
static arc arcs_45_0[2] = {
- {105, 1},
- {106, 2},
+ {3, 1},
+ {2, 2},
};
-static arc arcs_45_1[2] = {
- {90, 3},
+static arc arcs_45_1[1] = {
{0, 1},
};
static arc arcs_45_2[1] = {
- {0, 2},
+ {105, 3},
};
static arc arcs_45_3[1] = {
- {105, 4},
-};
-static arc arcs_45_4[1] = {
- {92, 5},
+ {6, 4},
};
-static arc arcs_45_5[1] = {
- {24, 2},
+static arc arcs_45_4[2] = {
+ {6, 4},
+ {106, 1},
};
-static state states_45[6] = {
+static state states_45[5] = {
{2, arcs_45_0},
- {2, arcs_45_1},
+ {1, arcs_45_1},
{1, arcs_45_2},
{1, arcs_45_3},
- {1, arcs_45_4},
- {1, arcs_45_5},
+ {2, arcs_45_4},
};
static arc arcs_46_0[2] = {
- {105, 1},
- {108, 1},
+ {107, 1},
+ {108, 2},
};
-static arc arcs_46_1[1] = {
+static arc arcs_46_1[2] = {
+ {92, 3},
{0, 1},
};
-static state states_46[2] = {
- {2, arcs_46_0},
- {1, arcs_46_1},
+static arc arcs_46_2[1] = {
+ {0, 2},
};
-static arc arcs_47_0[1] = {
- {109, 1},
+static arc arcs_46_3[1] = {
+ {107, 4},
};
-static arc arcs_47_1[2] = {
- {33, 2},
- {25, 3},
+static arc arcs_46_4[1] = {
+ {94, 5},
};
-static arc arcs_47_2[1] = {
- {25, 3},
+static arc arcs_46_5[1] = {
+ {24, 2},
};
-static arc arcs_47_3[1] = {
- {24, 4},
+static state states_46[6] = {
+ {2, arcs_46_0},
+ {2, arcs_46_1},
+ {1, arcs_46_2},
+ {1, arcs_46_3},
+ {1, arcs_46_4},
+ {1, arcs_46_5},
};
-static arc arcs_47_4[1] = {
- {0, 4},
+static arc arcs_47_0[2] = {
+ {107, 1},
+ {110, 1},
+};
+static arc arcs_47_1[1] = {
+ {0, 1},
};
-static state states_47[5] = {
- {1, arcs_47_0},
- {2, arcs_47_1},
- {1, arcs_47_2},
- {1, arcs_47_3},
- {1, arcs_47_4},
+static state states_47[2] = {
+ {2, arcs_47_0},
+ {1, arcs_47_1},
};
static arc arcs_48_0[1] = {
- {109, 1},
+ {111, 1},
};
static arc arcs_48_1[2] = {
{33, 2},
@@ -1070,7 +1065,7 @@
{25, 3},
};
static arc arcs_48_3[1] = {
- {107, 4},
+ {24, 4},
};
static arc arcs_48_4[1] = {
{0, 4},
@@ -1083,15 +1078,27 @@
{1, arcs_48_4},
};
static arc arcs_49_0[1] = {
- {110, 1},
+ {111, 1},
};
static arc arcs_49_1[2] = {
- {111, 0},
- {0, 1},
+ {33, 2},
+ {25, 3},
+};
+static arc arcs_49_2[1] = {
+ {25, 3},
};
-static state states_49[2] = {
+static arc arcs_49_3[1] = {
+ {109, 4},
+};
+static arc arcs_49_4[1] = {
+ {0, 4},
+};
+static state states_49[5] = {
{1, arcs_49_0},
{2, arcs_49_1},
+ {1, arcs_49_2},
+ {1, arcs_49_3},
+ {1, arcs_49_4},
};
static arc arcs_50_0[1] = {
{112, 1},
@@ -1104,91 +1111,90 @@
{1, arcs_50_0},
{2, arcs_50_1},
};
-static arc arcs_51_0[2] = {
+static arc arcs_51_0[1] = {
{114, 1},
- {115, 2},
};
-static arc arcs_51_1[1] = {
- {112, 2},
+static arc arcs_51_1[2] = {
+ {115, 0},
+ {0, 1},
+};
+static state states_51[2] = {
+ {1, arcs_51_0},
+ {2, arcs_51_1},
+};
+static arc arcs_52_0[2] = {
+ {116, 1},
+ {117, 2},
+};
+static arc arcs_52_1[1] = {
+ {114, 2},
};
-static arc arcs_51_2[1] = {
+static arc arcs_52_2[1] = {
{0, 2},
};
-static state states_51[3] = {
- {2, arcs_51_0},
- {1, arcs_51_1},
- {1, arcs_51_2},
+static state states_52[3] = {
+ {2, arcs_52_0},
+ {1, arcs_52_1},
+ {1, arcs_52_2},
};
-static arc arcs_52_0[1] = {
- {116, 1},
+static arc arcs_53_0[1] = {
+ {103, 1},
};
-static arc arcs_52_1[2] = {
- {117, 0},
+static arc arcs_53_1[2] = {
+ {118, 0},
{0, 1},
};
-static state states_52[2] = {
- {1, arcs_52_0},
- {2, arcs_52_1},
+static state states_53[2] = {
+ {1, arcs_53_0},
+ {2, arcs_53_1},
};
-static arc arcs_53_0[10] = {
- {118, 1},
+static arc arcs_54_0[10] = {
{119, 1},
{120, 1},
{121, 1},
{122, 1},
{123, 1},
{124, 1},
- {95, 1},
- {114, 2},
- {125, 3},
+ {125, 1},
+ {97, 1},
+ {116, 2},
+ {126, 3},
};
-static arc arcs_53_1[1] = {
+static arc arcs_54_1[1] = {
{0, 1},
};
-static arc arcs_53_2[1] = {
- {95, 1},
+static arc arcs_54_2[1] = {
+ {97, 1},
};
-static arc arcs_53_3[2] = {
- {114, 1},
+static arc arcs_54_3[2] = {
+ {116, 1},
{0, 3},
};
-static state states_53[4] = {
- {10, arcs_53_0},
- {1, arcs_53_1},
- {1, arcs_53_2},
- {2, arcs_53_3},
-};
-static arc arcs_54_0[2] = {
- {31, 1},
- {101, 2},
-};
-static arc arcs_54_1[1] = {
- {101, 2},
-};
-static arc arcs_54_2[1] = {
- {0, 2},
-};
-static state states_54[3] = {
- {2, arcs_54_0},
+static state states_54[4] = {
+ {10, arcs_54_0},
{1, arcs_54_1},
{1, arcs_54_2},
+ {2, arcs_54_3},
};
static arc arcs_55_0[1] = {
- {126, 1},
+ {31, 1},
};
-static arc arcs_55_1[2] = {
- {127, 0},
- {0, 1},
+static arc arcs_55_1[1] = {
+ {103, 2},
+};
+static arc arcs_55_2[1] = {
+ {0, 2},
};
-static state states_55[2] = {
+static state states_55[3] = {
{1, arcs_55_0},
- {2, arcs_55_1},
+ {1, arcs_55_1},
+ {1, arcs_55_2},
};
static arc arcs_56_0[1] = {
- {128, 1},
+ {127, 1},
};
static arc arcs_56_1[2] = {
- {129, 0},
+ {128, 0},
{0, 1},
};
static state states_56[2] = {
@@ -1196,10 +1202,10 @@
{2, arcs_56_1},
};
static arc arcs_57_0[1] = {
- {130, 1},
+ {129, 1},
};
static arc arcs_57_1[2] = {
- {131, 0},
+ {130, 0},
{0, 1},
};
static state states_57[2] = {
@@ -1207,23 +1213,22 @@
{2, arcs_57_1},
};
static arc arcs_58_0[1] = {
- {132, 1},
+ {131, 1},
};
-static arc arcs_58_1[3] = {
- {133, 0},
- {134, 0},
+static arc arcs_58_1[2] = {
+ {132, 0},
{0, 1},
};
static state states_58[2] = {
{1, arcs_58_0},
- {3, arcs_58_1},
+ {2, arcs_58_1},
};
static arc arcs_59_0[1] = {
- {135, 1},
+ {133, 1},
};
static arc arcs_59_1[3] = {
- {136, 0},
- {137, 0},
+ {134, 0},
+ {135, 0},
{0, 1},
};
static state states_59[2] = {
@@ -1231,477 +1236,482 @@
{3, arcs_59_1},
};
static arc arcs_60_0[1] = {
- {138, 1},
+ {136, 1},
+};
+static arc arcs_60_1[3] = {
+ {137, 0},
+ {138, 0},
+ {0, 1},
+};
+static state states_60[2] = {
+ {1, arcs_60_0},
+ {3, arcs_60_1},
};
-static arc arcs_60_1[5] = {
+static arc arcs_61_0[1] = {
+ {139, 1},
+};
+static arc arcs_61_1[5] = {
{31, 0},
- {139, 0},
{140, 0},
{141, 0},
+ {142, 0},
{0, 1},
};
-static state states_60[2] = {
- {1, arcs_60_0},
- {5, arcs_60_1},
+static state states_61[2] = {
+ {1, arcs_61_0},
+ {5, arcs_61_1},
};
-static arc arcs_61_0[4] = {
- {136, 1},
+static arc arcs_62_0[4] = {
{137, 1},
- {142, 1},
- {143, 2},
+ {138, 1},
+ {143, 1},
+ {144, 2},
};
-static arc arcs_61_1[1] = {
- {138, 2},
+static arc arcs_62_1[1] = {
+ {139, 2},
};
-static arc arcs_61_2[1] = {
+static arc arcs_62_2[1] = {
{0, 2},
};
-static state states_61[3] = {
- {4, arcs_61_0},
- {1, arcs_61_1},
- {1, arcs_61_2},
-};
-static arc arcs_62_0[1] = {
- {144, 1},
+static state states_62[3] = {
+ {4, arcs_62_0},
+ {1, arcs_62_1},
+ {1, arcs_62_2},
};
-static arc arcs_62_1[3] = {
+static arc arcs_63_0[1] = {
{145, 1},
+};
+static arc arcs_63_1[3] = {
+ {146, 1},
{32, 2},
{0, 1},
};
-static arc arcs_62_2[1] = {
- {138, 3},
+static arc arcs_63_2[1] = {
+ {139, 3},
};
-static arc arcs_62_3[1] = {
+static arc arcs_63_3[1] = {
{0, 3},
};
-static state states_62[4] = {
- {1, arcs_62_0},
- {3, arcs_62_1},
- {1, arcs_62_2},
- {1, arcs_62_3},
+static state states_63[4] = {
+ {1, arcs_63_0},
+ {3, arcs_63_1},
+ {1, arcs_63_2},
+ {1, arcs_63_3},
};
-static arc arcs_63_0[10] = {
+static arc arcs_64_0[10] = {
{13, 1},
- {147, 2},
- {149, 3},
+ {148, 2},
+ {150, 3},
{21, 4},
- {152, 4},
- {153, 5},
- {77, 4},
- {154, 4},
+ {153, 4},
+ {154, 5},
+ {79, 4},
{155, 4},
{156, 4},
+ {157, 4},
};
-static arc arcs_63_1[3] = {
- {46, 6},
- {146, 6},
+static arc arcs_64_1[3] = {
+ {47, 6},
+ {147, 6},
{15, 4},
};
-static arc arcs_63_2[2] = {
- {146, 7},
- {148, 4},
-};
-static arc arcs_63_3[2] = {
- {150, 8},
- {151, 4},
+static arc arcs_64_2[2] = {
+ {147, 7},
+ {149, 4},
};
-static arc arcs_63_4[1] = {
+static arc arcs_64_3[2] = {
+ {151, 8},
+ {152, 4},
+};
+static arc arcs_64_4[1] = {
{0, 4},
};
-static arc arcs_63_5[2] = {
- {153, 5},
+static arc arcs_64_5[2] = {
+ {154, 5},
{0, 5},
};
-static arc arcs_63_6[1] = {
+static arc arcs_64_6[1] = {
{15, 4},
};
-static arc arcs_63_7[1] = {
- {148, 4},
+static arc arcs_64_7[1] = {
+ {149, 4},
};
-static arc arcs_63_8[1] = {
- {151, 4},
+static arc arcs_64_8[1] = {
+ {152, 4},
};
-static state states_63[9] = {
- {10, arcs_63_0},
- {3, arcs_63_1},
- {2, arcs_63_2},
- {2, arcs_63_3},
- {1, arcs_63_4},
- {2, arcs_63_5},
- {1, arcs_63_6},
- {1, arcs_63_7},
- {1, arcs_63_8},
+static state states_64[9] = {
+ {10, arcs_64_0},
+ {3, arcs_64_1},
+ {2, arcs_64_2},
+ {2, arcs_64_3},
+ {1, arcs_64_4},
+ {2, arcs_64_5},
+ {1, arcs_64_6},
+ {1, arcs_64_7},
+ {1, arcs_64_8},
};
-static arc arcs_64_0[1] = {
+static arc arcs_65_0[2] = {
{24, 1},
+ {48, 1},
};
-static arc arcs_64_1[3] = {
- {157, 2},
+static arc arcs_65_1[3] = {
+ {158, 2},
{30, 3},
{0, 1},
};
-static arc arcs_64_2[1] = {
+static arc arcs_65_2[1] = {
{0, 2},
};
-static arc arcs_64_3[2] = {
+static arc arcs_65_3[3] = {
{24, 4},
+ {48, 4},
{0, 3},
};
-static arc arcs_64_4[2] = {
+static arc arcs_65_4[2] = {
{30, 3},
{0, 4},
};
-static state states_64[5] = {
- {1, arcs_64_0},
- {3, arcs_64_1},
- {1, arcs_64_2},
- {2, arcs_64_3},
- {2, arcs_64_4},
+static state states_65[5] = {
+ {2, arcs_65_0},
+ {3, arcs_65_1},
+ {1, arcs_65_2},
+ {3, arcs_65_3},
+ {2, arcs_65_4},
};
-static arc arcs_65_0[3] = {
+static arc arcs_66_0[3] = {
{13, 1},
- {147, 2},
- {76, 3},
+ {148, 2},
+ {78, 3},
};
-static arc arcs_65_1[2] = {
+static arc arcs_66_1[2] = {
{14, 4},
{15, 5},
};
-static arc arcs_65_2[1] = {
- {158, 6},
+static arc arcs_66_2[1] = {
+ {159, 6},
};
-static arc arcs_65_3[1] = {
+static arc arcs_66_3[1] = {
{21, 5},
};
-static arc arcs_65_4[1] = {
+static arc arcs_66_4[1] = {
{15, 5},
};
-static arc arcs_65_5[1] = {
+static arc arcs_66_5[1] = {
{0, 5},
};
-static arc arcs_65_6[1] = {
- {148, 5},
+static arc arcs_66_6[1] = {
+ {149, 5},
};
-static state states_65[7] = {
- {3, arcs_65_0},
- {2, arcs_65_1},
- {1, arcs_65_2},
- {1, arcs_65_3},
- {1, arcs_65_4},
- {1, arcs_65_5},
- {1, arcs_65_6},
+static state states_66[7] = {
+ {3, arcs_66_0},
+ {2, arcs_66_1},
+ {1, arcs_66_2},
+ {1, arcs_66_3},
+ {1, arcs_66_4},
+ {1, arcs_66_5},
+ {1, arcs_66_6},
};
-static arc arcs_66_0[1] = {
- {159, 1},
+static arc arcs_67_0[1] = {
+ {160, 1},
};
-static arc arcs_66_1[2] = {
+static arc arcs_67_1[2] = {
{30, 2},
{0, 1},
};
-static arc arcs_66_2[2] = {
- {159, 1},
+static arc arcs_67_2[2] = {
+ {160, 1},
{0, 2},
};
-static state states_66[3] = {
- {1, arcs_66_0},
- {2, arcs_66_1},
- {2, arcs_66_2},
+static state states_67[3] = {
+ {1, arcs_67_0},
+ {2, arcs_67_1},
+ {2, arcs_67_2},
};
-static arc arcs_67_0[2] = {
+static arc arcs_68_0[2] = {
{24, 1},
{25, 2},
};
-static arc arcs_67_1[2] = {
+static arc arcs_68_1[2] = {
{25, 2},
{0, 1},
};
-static arc arcs_67_2[3] = {
+static arc arcs_68_2[3] = {
{24, 3},
- {160, 4},
+ {161, 4},
{0, 2},
};
-static arc arcs_67_3[2] = {
- {160, 4},
+static arc arcs_68_3[2] = {
+ {161, 4},
{0, 3},
};
-static arc arcs_67_4[1] = {
+static arc arcs_68_4[1] = {
{0, 4},
};
-static state states_67[5] = {
- {2, arcs_67_0},
- {2, arcs_67_1},
- {3, arcs_67_2},
- {2, arcs_67_3},
- {1, arcs_67_4},
+static state states_68[5] = {
+ {2, arcs_68_0},
+ {2, arcs_68_1},
+ {3, arcs_68_2},
+ {2, arcs_68_3},
+ {1, arcs_68_4},
};
-static arc arcs_68_0[1] = {
+static arc arcs_69_0[1] = {
{25, 1},
};
-static arc arcs_68_1[2] = {
+static arc arcs_69_1[2] = {
{24, 2},
{0, 1},
};
-static arc arcs_68_2[1] = {
+static arc arcs_69_2[1] = {
{0, 2},
};
-static state states_68[3] = {
- {1, arcs_68_0},
- {2, arcs_68_1},
- {1, arcs_68_2},
+static state states_69[3] = {
+ {1, arcs_69_0},
+ {2, arcs_69_1},
+ {1, arcs_69_2},
};
-static arc arcs_69_0[1] = {
- {116, 1},
+static arc arcs_70_0[2] = {
+ {103, 1},
+ {48, 1},
};
-static arc arcs_69_1[2] = {
+static arc arcs_70_1[2] = {
{30, 2},
{0, 1},
};
-static arc arcs_69_2[2] = {
- {116, 1},
+static arc arcs_70_2[3] = {
+ {103, 1},
+ {48, 1},
{0, 2},
};
-static state states_69[3] = {
- {1, arcs_69_0},
- {2, arcs_69_1},
- {2, arcs_69_2},
+static state states_70[3] = {
+ {2, arcs_70_0},
+ {2, arcs_70_1},
+ {3, arcs_70_2},
};
-static arc arcs_70_0[1] = {
+static arc arcs_71_0[1] = {
{24, 1},
};
-static arc arcs_70_1[2] = {
+static arc arcs_71_1[2] = {
{30, 2},
{0, 1},
};
-static arc arcs_70_2[2] = {
+static arc arcs_71_2[2] = {
{24, 1},
{0, 2},
};
-static state states_70[3] = {
- {1, arcs_70_0},
- {2, arcs_70_1},
- {2, arcs_70_2},
+static state states_71[3] = {
+ {1, arcs_71_0},
+ {2, arcs_71_1},
+ {2, arcs_71_2},
};
-static arc arcs_71_0[1] = {
+static arc arcs_72_0[1] = {
{24, 1},
};
-static arc arcs_71_1[4] = {
+static arc arcs_72_1[4] = {
{25, 2},
- {157, 3},
+ {158, 3},
{30, 4},
{0, 1},
};
-static arc arcs_71_2[1] = {
+static arc arcs_72_2[1] = {
{24, 5},
};
-static arc arcs_71_3[1] = {
+static arc arcs_72_3[1] = {
{0, 3},
};
-static arc arcs_71_4[2] = {
+static arc arcs_72_4[2] = {
{24, 6},
{0, 4},
};
-static arc arcs_71_5[3] = {
- {157, 3},
+static arc arcs_72_5[3] = {
+ {158, 3},
{30, 7},
{0, 5},
};
-static arc arcs_71_6[2] = {
+static arc arcs_72_6[2] = {
{30, 4},
{0, 6},
};
-static arc arcs_71_7[2] = {
+static arc arcs_72_7[2] = {
{24, 8},
{0, 7},
};
-static arc arcs_71_8[1] = {
+static arc arcs_72_8[1] = {
{25, 9},
};
-static arc arcs_71_9[1] = {
+static arc arcs_72_9[1] = {
{24, 10},
};
-static arc arcs_71_10[2] = {
+static arc arcs_72_10[2] = {
{30, 7},
{0, 10},
};
-static state states_71[11] = {
- {1, arcs_71_0},
- {4, arcs_71_1},
- {1, arcs_71_2},
- {1, arcs_71_3},
- {2, arcs_71_4},
- {3, arcs_71_5},
- {2, arcs_71_6},
- {2, arcs_71_7},
- {1, arcs_71_8},
- {1, arcs_71_9},
- {2, arcs_71_10},
+static state states_72[11] = {
+ {1, arcs_72_0},
+ {4, arcs_72_1},
+ {1, arcs_72_2},
+ {1, arcs_72_3},
+ {2, arcs_72_4},
+ {3, arcs_72_5},
+ {2, arcs_72_6},
+ {2, arcs_72_7},
+ {1, arcs_72_8},
+ {1, arcs_72_9},
+ {2, arcs_72_10},
};
-static arc arcs_72_0[1] = {
- {161, 1},
+static arc arcs_73_0[1] = {
+ {162, 1},
};
-static arc arcs_72_1[1] = {
+static arc arcs_73_1[1] = {
{21, 2},
};
-static arc arcs_72_2[2] = {
+static arc arcs_73_2[2] = {
{13, 3},
{25, 4},
};
-static arc arcs_72_3[2] = {
+static arc arcs_73_3[2] = {
{14, 5},
{15, 6},
};
-static arc arcs_72_4[1] = {
+static arc arcs_73_4[1] = {
{26, 7},
};
-static arc arcs_72_5[1] = {
+static arc arcs_73_5[1] = {
{15, 6},
};
-static arc arcs_72_6[1] = {
+static arc arcs_73_6[1] = {
{25, 4},
};
-static arc arcs_72_7[1] = {
+static arc arcs_73_7[1] = {
{0, 7},
};
-static state states_72[8] = {
- {1, arcs_72_0},
- {1, arcs_72_1},
- {2, arcs_72_2},
- {2, arcs_72_3},
- {1, arcs_72_4},
- {1, arcs_72_5},
- {1, arcs_72_6},
- {1, arcs_72_7},
+static state states_73[8] = {
+ {1, arcs_73_0},
+ {1, arcs_73_1},
+ {2, arcs_73_2},
+ {2, arcs_73_3},
+ {1, arcs_73_4},
+ {1, arcs_73_5},
+ {1, arcs_73_6},
+ {1, arcs_73_7},
};
-static arc arcs_73_0[3] = {
- {162, 1},
+static arc arcs_74_0[3] = {
+ {163, 1},
{31, 2},
{32, 3},
};
-static arc arcs_73_1[2] = {
+static arc arcs_74_1[2] = {
{30, 4},
{0, 1},
};
-static arc arcs_73_2[1] = {
+static arc arcs_74_2[1] = {
{24, 5},
};
-static arc arcs_73_3[1] = {
+static arc arcs_74_3[1] = {
{24, 6},
};
-static arc arcs_73_4[4] = {
- {162, 1},
+static arc arcs_74_4[4] = {
+ {163, 1},
{31, 2},
{32, 3},
{0, 4},
};
-static arc arcs_73_5[2] = {
+static arc arcs_74_5[2] = {
{30, 7},
{0, 5},
};
-static arc arcs_73_6[1] = {
+static arc arcs_74_6[1] = {
{0, 6},
};
-static arc arcs_73_7[2] = {
- {162, 5},
+static arc arcs_74_7[2] = {
+ {163, 5},
{32, 3},
};
-static state states_73[8] = {
- {3, arcs_73_0},
- {2, arcs_73_1},
- {1, arcs_73_2},
- {1, arcs_73_3},
- {4, arcs_73_4},
- {2, arcs_73_5},
- {1, arcs_73_6},
- {2, arcs_73_7},
+static state states_74[8] = {
+ {3, arcs_74_0},
+ {2, arcs_74_1},
+ {1, arcs_74_2},
+ {1, arcs_74_3},
+ {4, arcs_74_4},
+ {2, arcs_74_5},
+ {1, arcs_74_6},
+ {2, arcs_74_7},
};
-static arc arcs_74_0[1] = {
+static arc arcs_75_0[1] = {
{24, 1},
};
-static arc arcs_74_1[3] = {
- {157, 2},
+static arc arcs_75_1[3] = {
+ {158, 2},
{29, 3},
{0, 1},
};
-static arc arcs_74_2[1] = {
+static arc arcs_75_2[1] = {
{0, 2},
};
-static arc arcs_74_3[1] = {
+static arc arcs_75_3[1] = {
{24, 2},
};
-static state states_74[4] = {
- {1, arcs_74_0},
- {3, arcs_74_1},
- {1, arcs_74_2},
- {1, arcs_74_3},
-};
-static arc arcs_75_0[2] = {
- {157, 1},
- {164, 1},
-};
-static arc arcs_75_1[1] = {
- {0, 1},
-};
-static state states_75[2] = {
- {2, arcs_75_0},
- {1, arcs_75_1},
-};
-static arc arcs_76_0[1] = {
- {94, 1},
+static state states_75[4] = {
+ {1, arcs_75_0},
+ {3, arcs_75_1},
+ {1, arcs_75_2},
+ {1, arcs_75_3},
+};
+static arc arcs_76_0[2] = {
+ {158, 1},
+ {165, 1},
};
static arc arcs_76_1[1] = {
- {60, 2},
-};
-static arc arcs_76_2[1] = {
- {95, 3},
-};
-static arc arcs_76_3[1] = {
- {105, 4},
-};
-static arc arcs_76_4[2] = {
- {163, 5},
- {0, 4},
-};
-static arc arcs_76_5[1] = {
- {0, 5},
+ {0, 1},
};
-static state states_76[6] = {
- {1, arcs_76_0},
+static state states_76[2] = {
+ {2, arcs_76_0},
{1, arcs_76_1},
- {1, arcs_76_2},
- {1, arcs_76_3},
- {2, arcs_76_4},
- {1, arcs_76_5},
};
static arc arcs_77_0[1] = {
- {90, 1},
+ {96, 1},
};
static arc arcs_77_1[1] = {
- {107, 2},
+ {62, 2},
};
-static arc arcs_77_2[2] = {
- {163, 3},
- {0, 2},
+static arc arcs_77_2[1] = {
+ {97, 3},
};
static arc arcs_77_3[1] = {
- {0, 3},
+ {107, 4},
+};
+static arc arcs_77_4[2] = {
+ {164, 5},
+ {0, 4},
+};
+static arc arcs_77_5[1] = {
+ {0, 5},
};
-static state states_77[4] = {
+static state states_77[6] = {
{1, arcs_77_0},
{1, arcs_77_1},
- {2, arcs_77_2},
+ {1, arcs_77_2},
{1, arcs_77_3},
+ {2, arcs_77_4},
+ {1, arcs_77_5},
};
static arc arcs_78_0[1] = {
- {24, 1},
+ {92, 1},
};
-static arc arcs_78_1[2] = {
- {30, 0},
- {0, 1},
+static arc arcs_78_1[1] = {
+ {109, 2},
+};
+static arc arcs_78_2[2] = {
+ {164, 3},
+ {0, 2},
+};
+static arc arcs_78_3[1] = {
+ {0, 3},
};
-static state states_78[2] = {
+static state states_78[4] = {
{1, arcs_78_0},
- {2, arcs_78_1},
+ {1, arcs_78_1},
+ {2, arcs_78_2},
+ {1, arcs_78_3},
};
static arc arcs_79_0[1] = {
{21, 1},
@@ -1730,11 +1740,11 @@
};
static dfa dfas[81] = {
{256, "single_input", 0, 3, states_0,
- "\004\050\060\200\000\000\000\050\370\044\034\144\011\040\004\000\000\103\050\037\202"},
+ "\004\050\060\200\000\000\000\240\340\223\160\220\045\200\020\000\000\206\120\076\204"},
{257, "file_input", 0, 2, states_1,
- "\204\050\060\200\000\000\000\050\370\044\034\144\011\040\004\000\000\103\050\037\202"},
+ "\204\050\060\200\000\000\000\240\340\223\160\220\045\200\020\000\000\206\120\076\204"},
{258, "eval_input", 0, 3, states_2,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
{259, "decorator", 0, 7, states_3,
"\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{260, "decorators", 0, 2, states_4,
@@ -1754,139 +1764,139 @@
{267, "vfpdef", 0, 2, states_11,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{268, "stmt", 0, 2, states_12,
- "\000\050\060\200\000\000\000\050\370\044\034\144\011\040\004\000\000\103\050\037\202"},
+ "\000\050\060\200\000\000\000\240\340\223\160\220\045\200\020\000\000\206\120\076\204"},
{269, "simple_stmt", 0, 4, states_13,
- "\000\040\040\200\000\000\000\050\370\044\034\000\000\040\004\000\000\103\050\037\200"},
+ "\000\040\040\200\000\000\000\240\340\223\160\000\000\200\020\000\000\206\120\076\200"},
{270, "small_stmt", 0, 2, states_14,
- "\000\040\040\200\000\000\000\050\370\044\034\000\000\040\004\000\000\103\050\037\200"},
+ "\000\040\040\200\000\000\000\240\340\223\160\000\000\200\020\000\000\206\120\076\200"},
{271, "expr_stmt", 0, 6, states_15,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {272, "augassign", 0, 2, states_16,
- "\000\000\000\000\000\200\377\007\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {273, "del_stmt", 0, 3, states_17,
- "\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {274, "pass_stmt", 0, 2, states_18,
+ "\000\040\040\200\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {272, "testlist_star_expr", 0, 3, states_16,
+ "\000\040\040\200\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {273, "augassign", 0, 2, states_17,
+ "\000\000\000\000\000\000\376\037\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {274, "del_stmt", 0, 3, states_18,
"\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {275, "flow_stmt", 0, 2, states_19,
- "\000\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\000\000\200"},
- {276, "break_stmt", 0, 2, states_20,
- "\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000"},
- {277, "continue_stmt", 0, 2, states_21,
- "\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000"},
- {278, "return_stmt", 0, 3, states_22,
+ {275, "pass_stmt", 0, 2, states_19,
+ "\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {276, "flow_stmt", 0, 2, states_20,
+ "\000\000\000\000\000\000\000\000\340\001\000\000\000\000\000\000\000\000\000\000\200"},
+ {277, "break_stmt", 0, 2, states_21,
"\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000"},
- {279, "yield_stmt", 0, 2, states_23,
- "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200"},
- {280, "raise_stmt", 0, 5, states_24,
+ {278, "continue_stmt", 0, 2, states_22,
"\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000"},
- {281, "import_stmt", 0, 2, states_25,
- "\000\000\000\000\000\000\000\000\200\004\000\000\000\000\000\000\000\000\000\000\000"},
- {282, "import_name", 0, 3, states_26,
- "\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000"},
- {283, "import_from", 0, 8, states_27,
+ {279, "return_stmt", 0, 3, states_23,
"\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000"},
- {284, "import_as_name", 0, 4, states_28,
+ {280, "yield_stmt", 0, 2, states_24,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200"},
+ {281, "raise_stmt", 0, 5, states_25,
+ "\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000"},
+ {282, "import_stmt", 0, 2, states_26,
+ "\000\000\000\000\000\000\000\000\000\022\000\000\000\000\000\000\000\000\000\000\000"},
+ {283, "import_name", 0, 3, states_27,
+ "\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000"},
+ {284, "import_from", 0, 8, states_28,
+ "\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000"},
+ {285, "import_as_name", 0, 4, states_29,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {285, "dotted_as_name", 0, 4, states_29,
+ {286, "dotted_as_name", 0, 4, states_30,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {286, "import_as_names", 0, 3, states_30,
+ {287, "import_as_names", 0, 3, states_31,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {287, "dotted_as_names", 0, 2, states_31,
+ {288, "dotted_as_names", 0, 2, states_32,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {288, "dotted_name", 0, 2, states_32,
+ {289, "dotted_name", 0, 2, states_33,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {289, "global_stmt", 0, 3, states_33,
- "\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000"},
- {290, "nonlocal_stmt", 0, 3, states_34,
- "\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000"},
- {291, "assert_stmt", 0, 5, states_35,
+ {290, "global_stmt", 0, 3, states_34,
"\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"},
- {292, "compound_stmt", 0, 2, states_36,
- "\000\010\020\000\000\000\000\000\000\000\000\144\011\000\000\000\000\000\000\000\002"},
- {293, "if_stmt", 0, 8, states_37,
- "\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000"},
- {294, "while_stmt", 0, 8, states_38,
- "\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
- {295, "for_stmt", 0, 10, states_39,
- "\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"},
- {296, "try_stmt", 0, 13, states_40,
+ {291, "nonlocal_stmt", 0, 3, states_35,
+ "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000"},
+ {292, "assert_stmt", 0, 5, states_36,
+ "\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000"},
+ {293, "compound_stmt", 0, 2, states_37,
+ "\000\010\020\000\000\000\000\000\000\000\000\220\045\000\000\000\000\000\000\000\004"},
+ {294, "if_stmt", 0, 8, states_38,
+ "\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
+ {295, "while_stmt", 0, 8, states_39,
+ "\000\000\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000"},
+ {296, "for_stmt", 0, 10, states_40,
"\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000"},
- {297, "with_stmt", 0, 5, states_41,
- "\000\000\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000"},
- {298, "with_item", 0, 4, states_42,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {299, "except_clause", 0, 5, states_43,
- "\000\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000"},
- {300, "suite", 0, 5, states_44,
- "\004\040\040\200\000\000\000\050\370\044\034\000\000\040\004\000\000\103\050\037\200"},
- {301, "test", 0, 6, states_45,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {302, "test_nocond", 0, 2, states_46,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {303, "lambdef", 0, 5, states_47,
- "\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000"},
- {304, "lambdef_nocond", 0, 5, states_48,
- "\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000"},
- {305, "or_test", 0, 2, states_49,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\000\004\000\000\103\050\037\000"},
- {306, "and_test", 0, 2, states_50,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\000\004\000\000\103\050\037\000"},
- {307, "not_test", 0, 3, states_51,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\000\004\000\000\103\050\037\000"},
- {308, "comparison", 0, 2, states_52,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {309, "comp_op", 0, 4, states_53,
- "\000\000\000\000\000\000\000\000\000\000\000\200\000\000\304\077\000\000\000\000\000"},
- {310, "star_expr", 0, 3, states_54,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {311, "expr", 0, 2, states_55,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {312, "xor_expr", 0, 2, states_56,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {313, "and_expr", 0, 2, states_57,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {314, "shift_expr", 0, 2, states_58,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {315, "arith_expr", 0, 2, states_59,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {316, "term", 0, 2, states_60,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {317, "factor", 0, 3, states_61,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {318, "power", 0, 4, states_62,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\050\037\000"},
- {319, "atom", 0, 9, states_63,
- "\000\040\040\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\050\037\000"},
- {320, "testlist_comp", 0, 5, states_64,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {321, "trailer", 0, 7, states_65,
- "\000\040\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\010\000\000"},
- {322, "subscriptlist", 0, 3, states_66,
- "\000\040\040\202\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {323, "subscript", 0, 5, states_67,
- "\000\040\040\202\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {324, "sliceop", 0, 3, states_68,
+ {297, "try_stmt", 0, 13, states_41,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000"},
+ {298, "with_stmt", 0, 5, states_42,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
+ {299, "with_item", 0, 4, states_43,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {300, "except_clause", 0, 5, states_44,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000"},
+ {301, "suite", 0, 5, states_45,
+ "\004\040\040\200\000\000\000\240\340\223\160\000\000\200\020\000\000\206\120\076\200"},
+ {302, "test", 0, 6, states_46,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {303, "test_nocond", 0, 2, states_47,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {304, "lambdef", 0, 5, states_48,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000"},
+ {305, "lambdef_nocond", 0, 5, states_49,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000"},
+ {306, "or_test", 0, 2, states_50,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\020\000\000\206\120\076\000"},
+ {307, "and_test", 0, 2, states_51,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\020\000\000\206\120\076\000"},
+ {308, "not_test", 0, 3, states_52,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\020\000\000\206\120\076\000"},
+ {309, "comparison", 0, 2, states_53,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {310, "comp_op", 0, 4, states_54,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\002\000\220\177\000\000\000\000\000"},
+ {311, "star_expr", 0, 3, states_55,
+ "\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+ {312, "expr", 0, 2, states_56,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {313, "xor_expr", 0, 2, states_57,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {314, "and_expr", 0, 2, states_58,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {315, "shift_expr", 0, 2, states_59,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {316, "arith_expr", 0, 2, states_60,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {317, "term", 0, 2, states_61,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {318, "factor", 0, 3, states_62,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {319, "power", 0, 4, states_63,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\120\076\000"},
+ {320, "atom", 0, 9, states_64,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\120\076\000"},
+ {321, "testlist_comp", 0, 5, states_65,
+ "\000\040\040\200\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {322, "trailer", 0, 7, states_66,
+ "\000\040\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\020\000\000"},
+ {323, "subscriptlist", 0, 3, states_67,
+ "\000\040\040\002\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {324, "subscript", 0, 5, states_68,
+ "\000\040\040\002\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {325, "sliceop", 0, 3, states_69,
"\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
- {325, "exprlist", 0, 3, states_69,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\000\000\000\000\103\050\037\000"},
- {326, "testlist", 0, 3, states_70,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {327, "dictorsetmaker", 0, 11, states_71,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {328, "classdef", 0, 8, states_72,
- "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002"},
- {329, "arglist", 0, 8, states_73,
- "\000\040\040\200\001\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {330, "argument", 0, 4, states_74,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
- {331, "comp_iter", 0, 2, states_75,
- "\000\000\000\000\000\000\000\000\000\000\000\104\000\000\000\000\000\000\000\000\000"},
- {332, "comp_for", 0, 6, states_76,
- "\000\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"},
- {333, "comp_if", 0, 4, states_77,
- "\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000"},
- {334, "testlist1", 0, 2, states_78,
- "\000\040\040\200\000\000\000\000\000\040\000\000\000\040\004\000\000\103\050\037\000"},
+ {326, "exprlist", 0, 3, states_70,
+ "\000\040\040\200\000\000\000\000\000\200\000\000\000\000\000\000\000\206\120\076\000"},
+ {327, "testlist", 0, 3, states_71,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {328, "dictorsetmaker", 0, 11, states_72,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {329, "classdef", 0, 8, states_73,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004"},
+ {330, "arglist", 0, 8, states_74,
+ "\000\040\040\200\001\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {331, "argument", 0, 4, states_75,
+ "\000\040\040\000\000\000\000\000\000\200\000\000\000\200\020\000\000\206\120\076\000"},
+ {332, "comp_iter", 0, 2, states_76,
+ "\000\000\000\000\000\000\000\000\000\000\000\020\001\000\000\000\000\000\000\000\000"},
+ {333, "comp_for", 0, 6, states_77,
+ "\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000"},
+ {334, "comp_if", 0, 4, states_78,
+ "\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
{335, "encoding_decl", 0, 2, states_79,
"\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
{336, "yield_expr", 0, 3, states_80,
@@ -1897,29 +1907,29 @@
{256, 0},
{4, 0},
{269, 0},
- {292, 0},
+ {293, 0},
{257, 0},
{268, 0},
{0, 0},
{258, 0},
- {326, 0},
+ {327, 0},
{259, 0},
{50, 0},
- {288, 0},
+ {289, 0},
{7, 0},
- {329, 0},
+ {330, 0},
{8, 0},
{260, 0},
{261, 0},
- {328, 0},
+ {329, 0},
{262, 0},
{1, "def"},
{1, 0},
{263, 0},
{51, 0},
- {301, 0},
+ {302, 0},
{11, 0},
- {300, 0},
+ {301, 0},
{264, 0},
{265, 0},
{22, 0},
@@ -1931,15 +1941,17 @@
{270, 0},
{13, 0},
{271, 0},
- {273, 0},
{274, 0},
{275, 0},
- {281, 0},
- {289, 0},
+ {276, 0},
+ {282, 0},
{290, 0},
{291, 0},
+ {292, 0},
{272, 0},
+ {273, 0},
{336, 0},
+ {311, 0},
{37, 0},
{38, 0},
{39, 0},
@@ -1953,36 +1965,36 @@
{47, 0},
{49, 0},
{1, "del"},
- {325, 0},
+ {326, 0},
{1, "pass"},
- {276, 0},
{277, 0},
{278, 0},
- {280, 0},
{279, 0},
+ {281, 0},
+ {280, 0},
{1, "break"},
{1, "continue"},
{1, "return"},
{1, "raise"},
{1, "from"},
- {282, 0},
{283, 0},
+ {284, 0},
{1, "import"},
- {287, 0},
+ {288, 0},
{23, 0},
{52, 0},
- {286, 0},
- {284, 0},
- {1, "as"},
+ {287, 0},
{285, 0},
+ {1, "as"},
+ {286, 0},
{1, "global"},
{1, "nonlocal"},
{1, "assert"},
- {293, 0},
{294, 0},
{295, 0},
{296, 0},
{297, 0},
+ {298, 0},
{1, "if"},
{1, "elif"},
{1, "else"},
@@ -1990,27 +2002,26 @@
{1, "for"},
{1, "in"},
{1, "try"},
- {299, 0},
+ {300, 0},
{1, "finally"},
{1, "with"},
- {298, 0},
- {311, 0},
+ {299, 0},
+ {312, 0},
{1, "except"},
{5, 0},
{6, 0},
- {305, 0},
- {303, 0},
- {302, 0},
+ {306, 0},
{304, 0},
+ {303, 0},
+ {305, 0},
{1, "lambda"},
- {306, 0},
- {1, "or"},
{307, 0},
+ {1, "or"},
+ {308, 0},
{1, "and"},
{1, "not"},
- {308, 0},
- {310, 0},
{309, 0},
+ {310, 0},
{20, 0},
{21, 0},
{28, 0},
@@ -2019,45 +2030,44 @@
{29, 0},
{29, 0},
{1, "is"},
- {312, 0},
- {18, 0},
{313, 0},
- {33, 0},
+ {18, 0},
{314, 0},
- {19, 0},
+ {33, 0},
{315, 0},
+ {19, 0},
+ {316, 0},
{34, 0},
{35, 0},
- {316, 0},
+ {317, 0},
{14, 0},
{15, 0},
- {317, 0},
+ {318, 0},
{17, 0},
{24, 0},
{48, 0},
{32, 0},
- {318, 0},
{319, 0},
- {321, 0},
{320, 0},
+ {322, 0},
+ {321, 0},
{9, 0},
{10, 0},
{26, 0},
- {327, 0},
+ {328, 0},
{27, 0},
{2, 0},
{3, 0},
{1, "None"},
{1, "True"},
{1, "False"},
- {332, 0},
- {322, 0},
+ {333, 0},
{323, 0},
{324, 0},
+ {325, 0},
{1, "class"},
- {330, 0},
{331, 0},
- {333, 0},
+ {332, 0},
{334, 0},
{335, 0},
{1, "yield"},
1
0
More important issues:
----------------------
test_ssl leaked [0, 339, 0] references, sum=339
Less important issues:
----------------------
test_cmd_line leaked [-25, 50, 0] references, sum=25
test_smtplib leaked [88, -88, 0] references, sum=0
test_socketserver leaked [0, 0, 77] references, sum=77
test_sys leaked [0, 42, -21] references, sum=21
test_threading leaked [48, 48, 48] references, sum=144
test_threadsignals leaked [0, 0, -8] references, sum=-8
1
0
Author: georg.brandl
Date: Sat Sep 26 22:59:11 2009
New Revision: 75079
Log:
fix default value
Modified:
python/branches/py3k/Doc/library/string.rst
Modified: python/branches/py3k/Doc/library/string.rst
==============================================================================
--- python/branches/py3k/Doc/library/string.rst (original)
+++ python/branches/py3k/Doc/library/string.rst Sat Sep 26 22:59:11 2009
@@ -565,7 +565,7 @@
Helper functions
----------------
-.. function:: capwords(s, sep=' ')
+.. function:: capwords(s, sep=None)
Split the argument into words using :meth:`str.split`, capitalize each word
using :meth:`str.capitalize`, and join the capitalized words using
1
0
Author: georg.brandl
Date: Sat Sep 26 22:52:12 2009
New Revision: 75078
Log:
use new style optional args
Modified:
python/branches/py3k/Doc/library/string.rst
Modified: python/branches/py3k/Doc/library/string.rst
==============================================================================
--- python/branches/py3k/Doc/library/string.rst (original)
+++ python/branches/py3k/Doc/library/string.rst Sat Sep 26 22:52:12 2009
@@ -565,7 +565,7 @@
Helper functions
----------------
-.. function:: capwords(s[, sep])
+.. function:: capwords(s, sep=' ')
Split the argument into words using :meth:`str.split`, capitalize each word
using :meth:`str.capitalize`, and join the capitalized words using
1
0
On Sep 26, 2009, at 2:26 PM, brett.cannon wrote:
> +=============
> +What to Cover
> +=============
> +
> +Make sure there is a clear note saying that even experience
> developers of other
> +projects should at least peruse all documents for Python-specific
> tricks (e.g.
> +--with-pydebug).
> +
> +* Tool setup & compilation
> +* Source Code Tour
> +
> + + Directory structure
> + + Relevant PEPs (e.g. grammar and compiler PEPs, and have all
> future PEPs
> + like these just go into the docs)
> +
> +* Running and writing tests
> +* Creating a patch
> +* PEPs
> +
> + + Link to process PEP
> + + Link to PEP 12 (reST PEP)
> +
> +* Things anyone can do to help
> +* Becoming a Developer on the issue tracker
> +
> + + Bug attrition
> +
> +* Becoming a core developer
> +
> + + How to do a commit
I would find it helpful if there was some guidance in this section for
deciding when it is OK to just commit a change vs. when to put a patch
in the tracker for review. I understand that the line can be a little
fuzzy, but covering the basics would be useful for new committers.
Would it be worth bringing the information from the Mercurial PEP into
this part of the documentation, too?
Doug
2
1
Author: brett.cannon
Date: Sat Sep 26 20:26:51 2009
New Revision: 75077
Log:
Add a README to document ideas on what should eventually be covered by the dev docs. As a side-effect it provides a rough outline of what the index page should end up looking like.
Added:
sandbox/trunk/dev/README
Added: sandbox/trunk/dev/README
==============================================================================
--- (empty file)
+++ sandbox/trunk/dev/README Sat Sep 26 20:26:51 2009
@@ -0,0 +1,48 @@
+=============
+What is This?
+=============
+
+This directory is for the development of might (potentially) become
+dev.python.org.
+
+
+=============
+What to Cover
+=============
+
+Make sure there is a clear note saying that even experience developers of other
+projects should at least peruse all documents for Python-specific tricks (e.g.
+--with-pydebug).
+
+* Tool setup & compilation
+* Source Code Tour
+
+ + Directory structure
+ + Relevant PEPs (e.g. grammar and compiler PEPs, and have all future PEPs
+ like these just go into the docs)
+
+* Running and writing tests
+* Creating a patch
+* PEPs
+
+ + Link to process PEP
+ + Link to PEP 12 (reST PEP)
+
+* Things anyone can do to help
+* Becoming a Developer on the issue tracker
+
+ + Bug attrition
+
+* Becoming a core developer
+
+ + How to do a commit
+ + Helping out on the issue tracker
+
+
+=================
+What Not to Cover
+=================
+
+* Adding a new module to the standard library
+ Should be a PEP on that instead w/ a link from dev
+
1
0
26 Sep '09
Author: vinay.sajip
Date: Sat Sep 26 16:53:32 2009
New Revision: 75076
Log:
Tidied up name of parameter in StreamHandler
Modified:
python/trunk/Doc/library/logging.rst
python/trunk/Lib/logging/__init__.py
Modified: python/trunk/Doc/library/logging.rst
==============================================================================
--- python/trunk/Doc/library/logging.rst (original)
+++ python/trunk/Doc/library/logging.rst Sat Sep 26 16:53:32 2009
@@ -1681,9 +1681,9 @@
and :meth:`flush` methods).
-.. class:: StreamHandler([strm])
+.. class:: StreamHandler([stream])
- Returns a new instance of the :class:`StreamHandler` class. If *strm* is
+ Returns a new instance of the :class:`StreamHandler` class. If *stream* is
specified, the instance will use it for logging output; otherwise, *sys.stderr*
will be used.
Modified: python/trunk/Lib/logging/__init__.py
==============================================================================
--- python/trunk/Lib/logging/__init__.py (original)
+++ python/trunk/Lib/logging/__init__.py Sat Sep 26 16:53:32 2009
@@ -745,16 +745,16 @@
sys.stdout or sys.stderr may be used.
"""
- def __init__(self, strm=None):
+ def __init__(self, stream=None):
"""
Initialize the handler.
- If strm is not specified, sys.stderr is used.
+ If stream is not specified, sys.stderr is used.
"""
Handler.__init__(self)
- if strm is None:
- strm = sys.stderr
- self.stream = strm
+ if stream is None:
+ stream = sys.stderr
+ self.stream = stream
def flush(self):
"""
1
0
r75075 - in python/branches/release31-maint: Doc/library/string.rst Lib/string.py Lib/test/test_string.py
by ezio.melotti 26 Sep '09
by ezio.melotti 26 Sep '09
26 Sep '09
Author: ezio.melotti
Date: Sat Sep 26 14:35:01 2009
New Revision: 75075
Log:
Merged revisions 75074 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
................
r75074 | ezio.melotti | 2009-09-26 15:33:22 +0300 (Sat, 26 Sep 2009) | 9 lines
Merged revisions 75070 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75070 | ezio.melotti | 2009-09-26 14:20:53 +0300 (Sat, 26 Sep 2009) | 1 line
#7000: document "sep" in capwords. Add a few tests
........
................
Modified:
python/branches/release31-maint/ (props changed)
python/branches/release31-maint/Doc/library/string.rst
python/branches/release31-maint/Lib/string.py
python/branches/release31-maint/Lib/test/test_string.py
Modified: python/branches/release31-maint/Doc/library/string.rst
==============================================================================
--- python/branches/release31-maint/Doc/library/string.rst (original)
+++ python/branches/release31-maint/Doc/library/string.rst Sat Sep 26 14:35:01 2009
@@ -565,12 +565,14 @@
Helper functions
----------------
-.. function:: capwords(s)
+.. function:: capwords(s[, sep])
- Split the argument into words using :func:`split`, capitalize each word using
- :func:`capitalize`, and join the capitalized words using :func:`join`. Note
- that this replaces runs of whitespace characters by a single space, and removes
- leading and trailing whitespace.
+ Split the argument into words using :meth:`str.split`, capitalize each word
+ using :meth:`str.capitalize`, and join the capitalized words using
+ :meth:`str.join`. If the optional second argument *sep* is absent
+ or ``None``, runs of whitespace characters are replaced by a single space
+ and leading and trailing whitespace are removed, otherwise *sep* is used to
+ split and join the words.
.. function:: maketrans(frm, to)
Modified: python/branches/release31-maint/Lib/string.py
==============================================================================
--- python/branches/release31-maint/Lib/string.py (original)
+++ python/branches/release31-maint/Lib/string.py Sat Sep 26 14:35:01 2009
@@ -29,15 +29,17 @@
# Capitalize the words in a string, e.g. " aBc dEf " -> "Abc Def".
def capwords(s, sep=None):
- """capwords(s, [sep]) -> string
+ """capwords(s [,sep]) -> string
Split the argument into words using split, capitalize each
word using capitalize, and join the capitalized words using
- join. Note that this replaces runs of whitespace characters by
- a single space.
+ join. If the optional second argument sep is absent or None,
+ runs of whitespace characters are replaced by a single space
+ and leading and trailing whitespace are removed, otherwise
+ sep is used to split and join the words.
"""
- return (sep or ' ').join([x.capitalize() for x in s.split(sep)])
+ return (sep or ' ').join(x.capitalize() for x in s.split(sep))
# Construct a translation map for bytes.translate
Modified: python/branches/release31-maint/Lib/test/test_string.py
==============================================================================
--- python/branches/release31-maint/Lib/test/test_string.py (original)
+++ python/branches/release31-maint/Lib/test/test_string.py Sat Sep 26 14:35:01 2009
@@ -22,6 +22,9 @@
self.assertEqual(string.capwords('ABC DEF GHI'), 'Abc Def Ghi')
self.assertEqual(string.capwords('ABC-DEF-GHI', '-'), 'Abc-Def-Ghi')
self.assertEqual(string.capwords('ABC-def DEF-ghi GHI'), 'Abc-def Def-ghi Ghi')
+ self.assertEqual(string.capwords(' aBc DeF '), 'Abc Def')
+ self.assertEqual(string.capwords('\taBc\tDeF\t'), 'Abc Def')
+ self.assertEqual(string.capwords('\taBc\tDeF\t', '\t'), '\tAbc\tDef\t')
def test_formatter(self):
fmt = string.Formatter()
1
0
r75074 - in python/branches/py3k: Doc/library/string.rst Lib/string.py Lib/test/test_string.py
by ezio.melotti 26 Sep '09
by ezio.melotti 26 Sep '09
26 Sep '09
Author: ezio.melotti
Date: Sat Sep 26 14:33:22 2009
New Revision: 75074
Log:
Merged revisions 75070 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75070 | ezio.melotti | 2009-09-26 14:20:53 +0300 (Sat, 26 Sep 2009) | 1 line
#7000: document "sep" in capwords. Add a few tests
........
Modified:
python/branches/py3k/ (props changed)
python/branches/py3k/Doc/library/string.rst
python/branches/py3k/Lib/string.py
python/branches/py3k/Lib/test/test_string.py
Modified: python/branches/py3k/Doc/library/string.rst
==============================================================================
--- python/branches/py3k/Doc/library/string.rst (original)
+++ python/branches/py3k/Doc/library/string.rst Sat Sep 26 14:33:22 2009
@@ -565,10 +565,12 @@
Helper functions
----------------
-.. function:: capwords(s)
+.. function:: capwords(s[, sep])
- Split the argument into words using :func:`split`, capitalize each word using
- :func:`capitalize`, and join the capitalized words using :func:`join`. Note
- that this replaces runs of whitespace characters by a single space, and removes
- leading and trailing whitespace.
+ Split the argument into words using :meth:`str.split`, capitalize each word
+ using :meth:`str.capitalize`, and join the capitalized words using
+ :meth:`str.join`. If the optional second argument *sep* is absent
+ or ``None``, runs of whitespace characters are replaced by a single space
+ and leading and trailing whitespace are removed, otherwise *sep* is used to
+ split and join the words.
Modified: python/branches/py3k/Lib/string.py
==============================================================================
--- python/branches/py3k/Lib/string.py (original)
+++ python/branches/py3k/Lib/string.py Sat Sep 26 14:33:22 2009
@@ -29,15 +29,17 @@
# Capitalize the words in a string, e.g. " aBc dEf " -> "Abc Def".
def capwords(s, sep=None):
- """capwords(s, [sep]) -> string
+ """capwords(s [,sep]) -> string
Split the argument into words using split, capitalize each
word using capitalize, and join the capitalized words using
- join. Note that this replaces runs of whitespace characters by
- a single space.
+ join. If the optional second argument sep is absent or None,
+ runs of whitespace characters are replaced by a single space
+ and leading and trailing whitespace are removed, otherwise
+ sep is used to split and join the words.
"""
- return (sep or ' ').join([x.capitalize() for x in s.split(sep)])
+ return (sep or ' ').join(x.capitalize() for x in s.split(sep))
####################################################################
Modified: python/branches/py3k/Lib/test/test_string.py
==============================================================================
--- python/branches/py3k/Lib/test/test_string.py (original)
+++ python/branches/py3k/Lib/test/test_string.py Sat Sep 26 14:33:22 2009
@@ -22,6 +22,9 @@
self.assertEqual(string.capwords('ABC DEF GHI'), 'Abc Def Ghi')
self.assertEqual(string.capwords('ABC-DEF-GHI', '-'), 'Abc-Def-Ghi')
self.assertEqual(string.capwords('ABC-def DEF-ghi GHI'), 'Abc-def Def-ghi Ghi')
+ self.assertEqual(string.capwords(' aBc DeF '), 'Abc Def')
+ self.assertEqual(string.capwords('\taBc\tDeF\t'), 'Abc Def')
+ self.assertEqual(string.capwords('\taBc\tDeF\t', '\t'), '\tAbc\tDef\t')
def test_formatter(self):
fmt = string.Formatter()
1
0
26 Sep '09
Author: ezio.melotti
Date: Sat Sep 26 14:27:13 2009
New Revision: 75073
Log:
Merged revisions 75072 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r75072 | ezio.melotti | 2009-09-26 15:19:30 +0300 (Sat, 26 Sep 2009) | 1 line
string.capwords is still around, adding back the tests
........
Modified:
python/branches/release31-maint/ (props changed)
python/branches/release31-maint/Lib/test/test_string.py
Modified: python/branches/release31-maint/Lib/test/test_string.py
==============================================================================
--- python/branches/release31-maint/Lib/test/test_string.py (original)
+++ python/branches/release31-maint/Lib/test/test_string.py Sat Sep 26 14:27:13 2009
@@ -15,6 +15,14 @@
string.punctuation
string.printable
+ def test_capwords(self):
+ self.assertEqual(string.capwords('abc def ghi'), 'Abc Def Ghi')
+ self.assertEqual(string.capwords('abc\tdef\nghi'), 'Abc Def Ghi')
+ self.assertEqual(string.capwords('abc\t def \nghi'), 'Abc Def Ghi')
+ self.assertEqual(string.capwords('ABC DEF GHI'), 'Abc Def Ghi')
+ self.assertEqual(string.capwords('ABC-DEF-GHI', '-'), 'Abc-Def-Ghi')
+ self.assertEqual(string.capwords('ABC-def DEF-ghi GHI'), 'Abc-def Def-ghi Ghi')
+
def test_formatter(self):
fmt = string.Formatter()
self.assertEqual(fmt.format("foo"), "foo")
1
0