SF patch #1007189, multi-line imports, for instance:
"from blah import (foo, bar
baz, bongo)"
diff --git a/Python/compile.c b/Python/compile.c
index 4653ff7..e8f4d67 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -3490,42 +3490,53 @@
 static void
 com_import_stmt(struct compiling *c, node *n)
 {
+	node *nn;
 	int i;
 	REQ(n, import_stmt);
-	/* 'import' dotted_name (',' dotted_name)* |
-	   'from' dotted_name 'import' ('*' | NAME (',' NAME)*) */
-	if (STR(CHILD(n, 0))[0] == 'f') {
+	n = CHILD(n, 0);
+	/* import_stmt: import_name | import_from */
+	if (TYPE(n) == import_from) {
+		/* 'from' dotted_name 'import' ('*' |
+		     '(' import_as_names ')' | import_as_names) */
 		PyObject *tup;
-		/* 'from' dotted_name 'import' ... */
 		REQ(CHILD(n, 1), dotted_name);
-		
-		if (TYPE(CHILD(n, 3)) == STAR) {
+		nn = CHILD(n, 3 + (TYPE(CHILD(n, 3)) == LPAR));
+		if (TYPE(nn) == STAR)
 			tup = Py_BuildValue("(s)", "*");
-		} else {
-			tup = PyTuple_New((NCH(n) - 2)/2);
-			for (i = 3; i < NCH(n); i += 2) {
-				PyTuple_SET_ITEM(tup, (i-3)/2, 
-					PyString_FromString(STR(
-						CHILD(CHILD(n, i), 0))));
+		else {
+			if (TYPE(CHILD(nn, NCH(nn) - 1)) == COMMA &&
+			    TYPE(CHILD(n, 3)) != LPAR) {
+				com_error(c, PyExc_SyntaxError,
+				    "trailing comma not allowed "
+				    "without surrounding parentheses");
+				return;
 			}
+			REQ(nn, import_as_names);
+			tup = PyTuple_New((NCH(nn) + 1) / 2);
+			for (i = 0; i < NCH(nn); i += 2)
+				PyTuple_SET_ITEM(tup, i / 2,
+					PyString_FromString(STR(
+						CHILD(CHILD(nn, i), 0))));
 		}
 		com_addoparg(c, LOAD_CONST, com_addconst(c, tup));
 		Py_DECREF(tup);
 		com_push(c, 1);
 		com_addopname(c, IMPORT_NAME, CHILD(n, 1));
-		if (TYPE(CHILD(n, 3)) == STAR) 
+		if (TYPE(nn) == STAR)
 			com_addbyte(c, IMPORT_STAR);
 		else {
-			for (i = 3; i < NCH(n); i += 2) 
-				com_from_import(c, CHILD(n, i));
+			for (i = 0; i < NCH(nn); i += 2)
+				com_from_import(c, CHILD(nn, i));
 			com_addbyte(c, POP_TOP);
 		}
 		com_pop(c, 1);
 	}
 	else {
-		/* 'import' ... */
-		for (i = 1; i < NCH(n); i += 2) {
-			node *subn = CHILD(n, i);
+		/* 'import' dotted_as_names */
+		nn = CHILD(n, 1);
+		REQ(nn, dotted_as_names);
+		for (i = 0; i < NCH(nn); i += 2) {
+			node *subn = CHILD(nn, i);
 			REQ(subn, dotted_as_name);
 			com_addoparg(c, LOAD_CONST, com_addconst(c, Py_None));
 			com_push(c, 1);
@@ -6291,14 +6302,15 @@
 static void
 symtable_import(struct symtable *st, node *n)
 {
+	node *nn;
 	int i;
-	/* import_stmt: 'import' dotted_as_name (',' dotted_as_name)* 
-              | 'from' dotted_name 'import' 
-                                ('*' | import_as_name (',' import_as_name)*)
-	   import_as_name: NAME [NAME NAME]
-	*/
-	if (STR(CHILD(n, 0))[0] == 'f') {  /* from */
+	/* import_stmt: import_name | import_from */
+	n = CHILD(n, 0);
+	if (TYPE(n) == import_from) {
+		/* import_from: 'from' dotted_name 'import' ('*' |
+		     | '(' import_as_names ')' | import_as_names) */
 		node *dotname = CHILD(n, 1);
+		REQ(dotname, dotted_name);
 		if (strcmp(STR(CHILD(dotname, 0)), "__future__") == 0) {
 			/* check for bogus imports */
 			if (n->n_lineno >= st->st_future->ff_last_lineno) {
@@ -6308,7 +6320,8 @@
 				return;
 			}
 		}
-		if (TYPE(CHILD(n, 3)) == STAR) {
+		nn = CHILD(n, 3 + (TYPE(CHILD(n, 3)) == LPAR));
+		if (TYPE(nn) == STAR) {
 			if (st->st_cur->ste_type != TYPE_MODULE) {
 				if (symtable_warn(st,
 				  "import * only allowed at module level") < 0)
@@ -6317,8 +6330,9 @@
 			st->st_cur->ste_optimized |= OPT_IMPORT_STAR;
 			st->st_cur->ste_opt_lineno = n->n_lineno;
 		} else {
-			for (i = 3; i < NCH(n); i += 2) {
-				node *c = CHILD(n, i);
+			REQ(nn, import_as_names);
+			for (i = 0; i < NCH(nn); i += 2) {
+				node *c = CHILD(nn, i);
 				if (NCH(c) > 1) /* import as */
 					symtable_assign(st, CHILD(c, 2),
 							DEF_IMPORT);
@@ -6327,10 +6341,12 @@
 							DEF_IMPORT);
 			}
 		}
-	} else { 
-		for (i = 1; i < NCH(n); i += 2) {
-			symtable_assign(st, CHILD(n, i), DEF_IMPORT);
-		}
+	} else {
+		/* 'import' dotted_as_names */
+		nn = CHILD(n, 1);
+		REQ(nn, dotted_as_names);
+		for (i = 0; i < NCH(nn); i += 2)
+			symtable_assign(st, CHILD(nn, i), DEF_IMPORT);
 	}
 }
 
diff --git a/Python/future.c b/Python/future.c
index 377ad9a..20d8dd2 100644
--- a/Python/future.c
+++ b/Python/future.c
@@ -18,18 +18,18 @@
 {
 	int i;
 	char *feature;
-	node *ch;
+	node *ch, *nn;
 
-	REQ(n, import_stmt); /* must by from __future__ import ... */
-
-	for (i = 3; i < NCH(n); i += 2) {
-		ch = CHILD(n, i);
-		if (TYPE(ch) == STAR) {
-			PyErr_SetString(PyExc_SyntaxError,
-					FUTURE_IMPORT_STAR);
-			PyErr_SyntaxLocation(filename, ch->n_lineno);
-			return -1;
-		}
+	REQ(n, import_from);
+	nn = CHILD(n, 3 + (TYPE(CHILD(n, 3)) == LPAR));
+	if (TYPE(nn) == STAR) {
+		PyErr_SetString(PyExc_SyntaxError, FUTURE_IMPORT_STAR);
+		PyErr_SyntaxLocation(filename, nn->n_lineno);
+		return -1;
+	}
+	REQ(nn, import_as_names);
+	for (i = 0; i < NCH(nn); i += 2) {
+		ch = CHILD(nn, i);
 		REQ(ch, import_as_name);
 		feature = STR(CHILD(ch, 0));
 		if (strcmp(feature, FUTURE_NESTED_SCOPES) == 0) {
@@ -188,7 +188,8 @@
 	case import_stmt: {
 		node *name;
 
-		if (STR(CHILD(n, 0))[0] != 'f') { /* from */
+		n = CHILD(n, 0);
+		if (TYPE(n) != import_from) {
 			ff->ff_last_lineno = n->n_lineno;
 			return 0;
 		}
diff --git a/Python/graminit.c b/Python/graminit.c
index f4f207e..c4fe661 100644
--- a/Python/graminit.c
+++ b/Python/graminit.c
@@ -488,836 +488,795 @@
 };
 static arc arcs_24_0[2] = {
 	{70, 1},
-	{72, 2},
+	{71, 1},
 };
 static arc arcs_24_1[1] = {
-	{71, 3},
+	{0, 1},
 };
-static arc arcs_24_2[1] = {
-	{12, 4},
-};
-static arc arcs_24_3[2] = {
-	{27, 1},
-	{0, 3},
-};
-static arc arcs_24_4[1] = {
-	{70, 5},
-};
-static arc arcs_24_5[2] = {
-	{28, 6},
-	{73, 7},
-};
-static arc arcs_24_6[1] = {
-	{0, 6},
-};
-static arc arcs_24_7[2] = {
-	{27, 8},
-	{0, 7},
-};
-static arc arcs_24_8[1] = {
-	{73, 7},
-};
-static state states_24[9] = {
+static state states_24[2] = {
 	{2, arcs_24_0},
 	{1, arcs_24_1},
-	{1, arcs_24_2},
-	{2, arcs_24_3},
-	{1, arcs_24_4},
-	{2, arcs_24_5},
-	{1, arcs_24_6},
-	{2, arcs_24_7},
-	{1, arcs_24_8},
 };
 static arc arcs_25_0[1] = {
-	{19, 1},
+	{72, 1},
 };
-static arc arcs_25_1[2] = {
-	{19, 2},
-	{0, 1},
+static arc arcs_25_1[1] = {
+	{73, 2},
 };
 static arc arcs_25_2[1] = {
-	{19, 3},
+	{0, 2},
 };
-static arc arcs_25_3[1] = {
-	{0, 3},
-};
-static state states_25[4] = {
+static state states_25[3] = {
 	{1, arcs_25_0},
-	{2, arcs_25_1},
+	{1, arcs_25_1},
 	{1, arcs_25_2},
-	{1, arcs_25_3},
 };
 static arc arcs_26_0[1] = {
-	{12, 1},
+	{74, 1},
 };
-static arc arcs_26_1[2] = {
-	{19, 2},
-	{0, 1},
+static arc arcs_26_1[1] = {
+	{12, 2},
 };
 static arc arcs_26_2[1] = {
-	{19, 3},
+	{72, 3},
 };
-static arc arcs_26_3[1] = {
-	{0, 3},
+static arc arcs_26_3[3] = {
+	{28, 4},
+	{13, 5},
+	{75, 4},
 };
-static state states_26[4] = {
+static arc arcs_26_4[1] = {
+	{0, 4},
+};
+static arc arcs_26_5[1] = {
+	{75, 6},
+};
+static arc arcs_26_6[1] = {
+	{15, 4},
+};
+static state states_26[7] = {
 	{1, arcs_26_0},
-	{2, arcs_26_1},
+	{1, arcs_26_1},
 	{1, arcs_26_2},
-	{1, arcs_26_3},
+	{3, arcs_26_3},
+	{1, arcs_26_4},
+	{1, arcs_26_5},
+	{1, arcs_26_6},
 };
 static arc arcs_27_0[1] = {
 	{19, 1},
 };
 static arc arcs_27_1[2] = {
-	{74, 0},
+	{19, 2},
 	{0, 1},
 };
-static state states_27[2] = {
+static arc arcs_27_2[1] = {
+	{19, 3},
+};
+static arc arcs_27_3[1] = {
+	{0, 3},
+};
+static state states_27[4] = {
 	{1, arcs_27_0},
 	{2, arcs_27_1},
+	{1, arcs_27_2},
+	{1, arcs_27_3},
 };
 static arc arcs_28_0[1] = {
-	{75, 1},
+	{12, 1},
 };
-static arc arcs_28_1[1] = {
+static arc arcs_28_1[2] = {
 	{19, 2},
+	{0, 1},
 };
-static arc arcs_28_2[2] = {
-	{27, 1},
-	{0, 2},
+static arc arcs_28_2[1] = {
+	{19, 3},
 };
-static state states_28[3] = {
+static arc arcs_28_3[1] = {
+	{0, 3},
+};
+static state states_28[4] = {
 	{1, arcs_28_0},
-	{1, arcs_28_1},
-	{2, arcs_28_2},
+	{2, arcs_28_1},
+	{1, arcs_28_2},
+	{1, arcs_28_3},
 };
 static arc arcs_29_0[1] = {
 	{76, 1},
 };
-static arc arcs_29_1[1] = {
-	{77, 2},
+static arc arcs_29_1[2] = {
+	{27, 2},
+	{0, 1},
 };
 static arc arcs_29_2[2] = {
-	{78, 3},
+	{76, 1},
 	{0, 2},
 };
-static arc arcs_29_3[1] = {
-	{26, 4},
-};
-static arc arcs_29_4[2] = {
-	{27, 5},
-	{0, 4},
-};
-static arc arcs_29_5[1] = {
-	{26, 6},
-};
-static arc arcs_29_6[1] = {
-	{0, 6},
-};
-static state states_29[7] = {
+static state states_29[3] = {
 	{1, arcs_29_0},
-	{1, arcs_29_1},
+	{2, arcs_29_1},
 	{2, arcs_29_2},
-	{1, arcs_29_3},
-	{2, arcs_29_4},
-	{1, arcs_29_5},
-	{1, arcs_29_6},
 };
 static arc arcs_30_0[1] = {
-	{79, 1},
+	{77, 1},
 };
-static arc arcs_30_1[1] = {
-	{26, 2},
+static arc arcs_30_1[2] = {
+	{27, 0},
+	{0, 1},
 };
-static arc arcs_30_2[2] = {
-	{27, 3},
-	{0, 2},
-};
-static arc arcs_30_3[1] = {
-	{26, 4},
-};
-static arc arcs_30_4[1] = {
-	{0, 4},
-};
-static state states_30[5] = {
+static state states_30[2] = {
 	{1, arcs_30_0},
-	{1, arcs_30_1},
-	{2, arcs_30_2},
-	{1, arcs_30_3},
-	{1, arcs_30_4},
+	{2, arcs_30_1},
 };
-static arc arcs_31_0[6] = {
-	{80, 1},
-	{81, 1},
-	{82, 1},
-	{83, 1},
-	{17, 1},
-	{84, 1},
+static arc arcs_31_0[1] = {
+	{19, 1},
 };
-static arc arcs_31_1[1] = {
+static arc arcs_31_1[2] = {
+	{78, 0},
 	{0, 1},
 };
 static state states_31[2] = {
-	{6, arcs_31_0},
-	{1, arcs_31_1},
+	{1, arcs_31_0},
+	{2, arcs_31_1},
 };
 static arc arcs_32_0[1] = {
-	{85, 1},
+	{79, 1},
 };
 static arc arcs_32_1[1] = {
-	{26, 2},
+	{19, 2},
 };
-static arc arcs_32_2[1] = {
-	{21, 3},
+static arc arcs_32_2[2] = {
+	{27, 1},
+	{0, 2},
 };
-static arc arcs_32_3[1] = {
-	{22, 4},
-};
-static arc arcs_32_4[3] = {
-	{86, 1},
-	{87, 5},
-	{0, 4},
-};
-static arc arcs_32_5[1] = {
-	{21, 6},
-};
-static arc arcs_32_6[1] = {
-	{22, 7},
-};
-static arc arcs_32_7[1] = {
-	{0, 7},
-};
-static state states_32[8] = {
+static state states_32[3] = {
 	{1, arcs_32_0},
 	{1, arcs_32_1},
-	{1, arcs_32_2},
-	{1, arcs_32_3},
-	{3, arcs_32_4},
-	{1, arcs_32_5},
-	{1, arcs_32_6},
-	{1, arcs_32_7},
+	{2, arcs_32_2},
 };
 static arc arcs_33_0[1] = {
-	{88, 1},
+	{80, 1},
 };
 static arc arcs_33_1[1] = {
-	{26, 2},
+	{81, 2},
 };
-static arc arcs_33_2[1] = {
-	{21, 3},
+static arc arcs_33_2[2] = {
+	{82, 3},
+	{0, 2},
 };
 static arc arcs_33_3[1] = {
-	{22, 4},
+	{26, 4},
 };
 static arc arcs_33_4[2] = {
-	{87, 5},
+	{27, 5},
 	{0, 4},
 };
 static arc arcs_33_5[1] = {
-	{21, 6},
+	{26, 6},
 };
 static arc arcs_33_6[1] = {
-	{22, 7},
+	{0, 6},
 };
-static arc arcs_33_7[1] = {
-	{0, 7},
-};
-static state states_33[8] = {
+static state states_33[7] = {
 	{1, arcs_33_0},
 	{1, arcs_33_1},
-	{1, arcs_33_2},
+	{2, arcs_33_2},
 	{1, arcs_33_3},
 	{2, arcs_33_4},
 	{1, arcs_33_5},
 	{1, arcs_33_6},
-	{1, arcs_33_7},
 };
 static arc arcs_34_0[1] = {
-	{89, 1},
+	{83, 1},
 };
 static arc arcs_34_1[1] = {
-	{58, 2},
-};
-static arc arcs_34_2[1] = {
-	{78, 3},
-};
-static arc arcs_34_3[1] = {
-	{9, 4},
-};
-static arc arcs_34_4[1] = {
-	{21, 5},
-};
-static arc arcs_34_5[1] = {
-	{22, 6},
-};
-static arc arcs_34_6[2] = {
-	{87, 7},
-	{0, 6},
-};
-static arc arcs_34_7[1] = {
-	{21, 8},
-};
-static arc arcs_34_8[1] = {
-	{22, 9},
-};
-static arc arcs_34_9[1] = {
-	{0, 9},
-};
-static state states_34[10] = {
-	{1, arcs_34_0},
-	{1, arcs_34_1},
-	{1, arcs_34_2},
-	{1, arcs_34_3},
-	{1, arcs_34_4},
-	{1, arcs_34_5},
-	{2, arcs_34_6},
-	{1, arcs_34_7},
-	{1, arcs_34_8},
-	{1, arcs_34_9},
-};
-static arc arcs_35_0[1] = {
-	{90, 1},
-};
-static arc arcs_35_1[1] = {
-	{21, 2},
-};
-static arc arcs_35_2[1] = {
-	{22, 3},
-};
-static arc arcs_35_3[2] = {
-	{91, 4},
-	{92, 5},
-};
-static arc arcs_35_4[1] = {
-	{21, 6},
-};
-static arc arcs_35_5[1] = {
-	{21, 7},
-};
-static arc arcs_35_6[1] = {
-	{22, 8},
-};
-static arc arcs_35_7[1] = {
-	{22, 9},
-};
-static arc arcs_35_8[3] = {
-	{91, 4},
-	{87, 5},
-	{0, 8},
-};
-static arc arcs_35_9[1] = {
-	{0, 9},
-};
-static state states_35[10] = {
-	{1, arcs_35_0},
-	{1, arcs_35_1},
-	{1, arcs_35_2},
-	{2, arcs_35_3},
-	{1, arcs_35_4},
-	{1, arcs_35_5},
-	{1, arcs_35_6},
-	{1, arcs_35_7},
-	{3, arcs_35_8},
-	{1, arcs_35_9},
-};
-static arc arcs_36_0[1] = {
-	{93, 1},
-};
-static arc arcs_36_1[2] = {
 	{26, 2},
-	{0, 1},
 };
-static arc arcs_36_2[2] = {
+static arc arcs_34_2[2] = {
 	{27, 3},
 	{0, 2},
 };
-static arc arcs_36_3[1] = {
+static arc arcs_34_3[1] = {
 	{26, 4},
 };
-static arc arcs_36_4[1] = {
+static arc arcs_34_4[1] = {
 	{0, 4},
 };
-static state states_36[5] = {
-	{1, arcs_36_0},
-	{2, arcs_36_1},
-	{2, arcs_36_2},
-	{1, arcs_36_3},
-	{1, arcs_36_4},
+static state states_34[5] = {
+	{1, arcs_34_0},
+	{1, arcs_34_1},
+	{2, arcs_34_2},
+	{1, arcs_34_3},
+	{1, arcs_34_4},
 };
-static arc arcs_37_0[2] = {
-	{3, 1},
-	{2, 2},
+static arc arcs_35_0[6] = {
+	{84, 1},
+	{85, 1},
+	{86, 1},
+	{87, 1},
+	{17, 1},
+	{88, 1},
 };
-static arc arcs_37_1[1] = {
+static arc arcs_35_1[1] = {
 	{0, 1},
 };
+static state states_35[2] = {
+	{6, arcs_35_0},
+	{1, arcs_35_1},
+};
+static arc arcs_36_0[1] = {
+	{89, 1},
+};
+static arc arcs_36_1[1] = {
+	{26, 2},
+};
+static arc arcs_36_2[1] = {
+	{21, 3},
+};
+static arc arcs_36_3[1] = {
+	{22, 4},
+};
+static arc arcs_36_4[3] = {
+	{90, 1},
+	{91, 5},
+	{0, 4},
+};
+static arc arcs_36_5[1] = {
+	{21, 6},
+};
+static arc arcs_36_6[1] = {
+	{22, 7},
+};
+static arc arcs_36_7[1] = {
+	{0, 7},
+};
+static state states_36[8] = {
+	{1, arcs_36_0},
+	{1, arcs_36_1},
+	{1, arcs_36_2},
+	{1, arcs_36_3},
+	{3, arcs_36_4},
+	{1, arcs_36_5},
+	{1, arcs_36_6},
+	{1, arcs_36_7},
+};
+static arc arcs_37_0[1] = {
+	{92, 1},
+};
+static arc arcs_37_1[1] = {
+	{26, 2},
+};
 static arc arcs_37_2[1] = {
-	{94, 3},
+	{21, 3},
 };
 static arc arcs_37_3[1] = {
-	{6, 4},
+	{22, 4},
 };
 static arc arcs_37_4[2] = {
-	{6, 4},
-	{95, 1},
+	{91, 5},
+	{0, 4},
 };
-static state states_37[5] = {
-	{2, arcs_37_0},
+static arc arcs_37_5[1] = {
+	{21, 6},
+};
+static arc arcs_37_6[1] = {
+	{22, 7},
+};
+static arc arcs_37_7[1] = {
+	{0, 7},
+};
+static state states_37[8] = {
+	{1, arcs_37_0},
 	{1, arcs_37_1},
 	{1, arcs_37_2},
 	{1, arcs_37_3},
 	{2, arcs_37_4},
+	{1, arcs_37_5},
+	{1, arcs_37_6},
+	{1, arcs_37_7},
 };
-static arc arcs_38_0[2] = {
-	{96, 1},
-	{98, 2},
+static arc arcs_38_0[1] = {
+	{93, 1},
 };
-static arc arcs_38_1[2] = {
-	{97, 3},
-	{0, 1},
+static arc arcs_38_1[1] = {
+	{58, 2},
 };
 static arc arcs_38_2[1] = {
-	{0, 2},
+	{82, 3},
 };
 static arc arcs_38_3[1] = {
-	{96, 1},
+	{9, 4},
 };
-static state states_38[4] = {
-	{2, arcs_38_0},
-	{2, arcs_38_1},
+static arc arcs_38_4[1] = {
+	{21, 5},
+};
+static arc arcs_38_5[1] = {
+	{22, 6},
+};
+static arc arcs_38_6[2] = {
+	{91, 7},
+	{0, 6},
+};
+static arc arcs_38_7[1] = {
+	{21, 8},
+};
+static arc arcs_38_8[1] = {
+	{22, 9},
+};
+static arc arcs_38_9[1] = {
+	{0, 9},
+};
+static state states_38[10] = {
+	{1, arcs_38_0},
+	{1, arcs_38_1},
 	{1, arcs_38_2},
 	{1, arcs_38_3},
+	{1, arcs_38_4},
+	{1, arcs_38_5},
+	{2, arcs_38_6},
+	{1, arcs_38_7},
+	{1, arcs_38_8},
+	{1, arcs_38_9},
 };
 static arc arcs_39_0[1] = {
-	{99, 1},
+	{94, 1},
 };
-static arc arcs_39_1[2] = {
-	{100, 0},
+static arc arcs_39_1[1] = {
+	{21, 2},
+};
+static arc arcs_39_2[1] = {
+	{22, 3},
+};
+static arc arcs_39_3[2] = {
+	{95, 4},
+	{96, 5},
+};
+static arc arcs_39_4[1] = {
+	{21, 6},
+};
+static arc arcs_39_5[1] = {
+	{21, 7},
+};
+static arc arcs_39_6[1] = {
+	{22, 8},
+};
+static arc arcs_39_7[1] = {
+	{22, 9},
+};
+static arc arcs_39_8[3] = {
+	{95, 4},
+	{91, 5},
+	{0, 8},
+};
+static arc arcs_39_9[1] = {
+	{0, 9},
+};
+static state states_39[10] = {
+	{1, arcs_39_0},
+	{1, arcs_39_1},
+	{1, arcs_39_2},
+	{2, arcs_39_3},
+	{1, arcs_39_4},
+	{1, arcs_39_5},
+	{1, arcs_39_6},
+	{1, arcs_39_7},
+	{3, arcs_39_8},
+	{1, arcs_39_9},
+};
+static arc arcs_40_0[1] = {
+	{97, 1},
+};
+static arc arcs_40_1[2] = {
+	{26, 2},
 	{0, 1},
 };
-static state states_39[2] = {
-	{1, arcs_39_0},
-	{2, arcs_39_1},
-};
-static arc arcs_40_0[2] = {
-	{101, 1},
-	{102, 2},
-};
-static arc arcs_40_1[1] = {
-	{99, 2},
-};
-static arc arcs_40_2[1] = {
+static arc arcs_40_2[2] = {
+	{27, 3},
 	{0, 2},
 };
-static state states_40[3] = {
-	{2, arcs_40_0},
-	{1, arcs_40_1},
-	{1, arcs_40_2},
+static arc arcs_40_3[1] = {
+	{26, 4},
 };
-static arc arcs_41_0[1] = {
-	{77, 1},
+static arc arcs_40_4[1] = {
+	{0, 4},
 };
-static arc arcs_41_1[2] = {
-	{103, 0},
+static state states_40[5] = {
+	{1, arcs_40_0},
+	{2, arcs_40_1},
+	{2, arcs_40_2},
+	{1, arcs_40_3},
+	{1, arcs_40_4},
+};
+static arc arcs_41_0[2] = {
+	{3, 1},
+	{2, 2},
+};
+static arc arcs_41_1[1] = {
 	{0, 1},
 };
-static state states_41[2] = {
-	{1, arcs_41_0},
-	{2, arcs_41_1},
+static arc arcs_41_2[1] = {
+	{98, 3},
 };
-static arc arcs_42_0[10] = {
-	{104, 1},
-	{105, 1},
-	{106, 1},
-	{107, 1},
-	{108, 1},
-	{109, 1},
-	{110, 1},
-	{78, 1},
-	{101, 2},
-	{111, 3},
+static arc arcs_41_3[1] = {
+	{6, 4},
 };
-static arc arcs_42_1[1] = {
+static arc arcs_41_4[2] = {
+	{6, 4},
+	{99, 1},
+};
+static state states_41[5] = {
+	{2, arcs_41_0},
+	{1, arcs_41_1},
+	{1, arcs_41_2},
+	{1, arcs_41_3},
+	{2, arcs_41_4},
+};
+static arc arcs_42_0[2] = {
+	{100, 1},
+	{102, 2},
+};
+static arc arcs_42_1[2] = {
+	{101, 3},
 	{0, 1},
 };
 static arc arcs_42_2[1] = {
-	{78, 1},
+	{0, 2},
 };
-static arc arcs_42_3[2] = {
-	{101, 1},
-	{0, 3},
+static arc arcs_42_3[1] = {
+	{100, 1},
 };
 static state states_42[4] = {
-	{10, arcs_42_0},
-	{1, arcs_42_1},
+	{2, arcs_42_0},
+	{2, arcs_42_1},
 	{1, arcs_42_2},
-	{2, arcs_42_3},
+	{1, arcs_42_3},
 };
 static arc arcs_43_0[1] = {
-	{112, 1},
+	{103, 1},
 };
 static arc arcs_43_1[2] = {
-	{113, 0},
+	{104, 0},
 	{0, 1},
 };
 static state states_43[2] = {
 	{1, arcs_43_0},
 	{2, arcs_43_1},
 };
-static arc arcs_44_0[1] = {
-	{114, 1},
+static arc arcs_44_0[2] = {
+	{105, 1},
+	{106, 2},
 };
-static arc arcs_44_1[2] = {
-	{115, 0},
-	{0, 1},
+static arc arcs_44_1[1] = {
+	{103, 2},
 };
-static state states_44[2] = {
-	{1, arcs_44_0},
-	{2, arcs_44_1},
+static arc arcs_44_2[1] = {
+	{0, 2},
+};
+static state states_44[3] = {
+	{2, arcs_44_0},
+	{1, arcs_44_1},
+	{1, arcs_44_2},
 };
 static arc arcs_45_0[1] = {
-	{116, 1},
+	{81, 1},
 };
 static arc arcs_45_1[2] = {
-	{117, 0},
+	{107, 0},
 	{0, 1},
 };
 static state states_45[2] = {
 	{1, arcs_45_0},
 	{2, arcs_45_1},
 };
-static arc arcs_46_0[1] = {
-	{118, 1},
+static arc arcs_46_0[10] = {
+	{108, 1},
+	{109, 1},
+	{110, 1},
+	{111, 1},
+	{112, 1},
+	{113, 1},
+	{114, 1},
+	{82, 1},
+	{105, 2},
+	{115, 3},
 };
-static arc arcs_46_1[3] = {
-	{119, 0},
-	{56, 0},
+static arc arcs_46_1[1] = {
 	{0, 1},
 };
-static state states_46[2] = {
-	{1, arcs_46_0},
-	{3, arcs_46_1},
+static arc arcs_46_2[1] = {
+	{82, 1},
+};
+static arc arcs_46_3[2] = {
+	{105, 1},
+	{0, 3},
+};
+static state states_46[4] = {
+	{10, arcs_46_0},
+	{1, arcs_46_1},
+	{1, arcs_46_2},
+	{2, arcs_46_3},
 };
 static arc arcs_47_0[1] = {
-	{120, 1},
+	{116, 1},
 };
-static arc arcs_47_1[3] = {
-	{121, 0},
-	{122, 0},
+static arc arcs_47_1[2] = {
+	{117, 0},
 	{0, 1},
 };
 static state states_47[2] = {
 	{1, arcs_47_0},
-	{3, arcs_47_1},
+	{2, arcs_47_1},
 };
 static arc arcs_48_0[1] = {
-	{123, 1},
+	{118, 1},
 };
-static arc arcs_48_1[5] = {
-	{28, 0},
-	{124, 0},
-	{125, 0},
-	{126, 0},
+static arc arcs_48_1[2] = {
+	{119, 0},
 	{0, 1},
 };
 static state states_48[2] = {
 	{1, arcs_48_0},
-	{5, arcs_48_1},
+	{2, arcs_48_1},
 };
-static arc arcs_49_0[4] = {
-	{121, 1},
-	{122, 1},
-	{127, 1},
-	{128, 2},
+static arc arcs_49_0[1] = {
+	{120, 1},
 };
-static arc arcs_49_1[1] = {
-	{123, 2},
+static arc arcs_49_1[2] = {
+	{121, 0},
+	{0, 1},
 };
-static arc arcs_49_2[1] = {
-	{0, 2},
-};
-static state states_49[3] = {
-	{4, arcs_49_0},
-	{1, arcs_49_1},
-	{1, arcs_49_2},
+static state states_49[2] = {
+	{1, arcs_49_0},
+	{2, arcs_49_1},
 };
 static arc arcs_50_0[1] = {
-	{129, 1},
+	{122, 1},
 };
 static arc arcs_50_1[3] = {
-	{130, 1},
-	{29, 2},
+	{123, 0},
+	{56, 0},
 	{0, 1},
 };
-static arc arcs_50_2[1] = {
-	{123, 3},
-};
-static arc arcs_50_3[1] = {
-	{0, 3},
-};
-static state states_50[4] = {
+static state states_50[2] = {
 	{1, arcs_50_0},
 	{3, arcs_50_1},
-	{1, arcs_50_2},
-	{1, arcs_50_3},
 };
-static arc arcs_51_0[7] = {
-	{13, 1},
-	{132, 2},
-	{135, 3},
-	{138, 4},
-	{19, 5},
-	{140, 5},
-	{141, 6},
+static arc arcs_51_0[1] = {
+	{124, 1},
 };
-static arc arcs_51_1[2] = {
-	{131, 7},
-	{15, 5},
+static arc arcs_51_1[3] = {
+	{125, 0},
+	{126, 0},
+	{0, 1},
 };
-static arc arcs_51_2[2] = {
-	{133, 8},
-	{134, 5},
-};
-static arc arcs_51_3[2] = {
-	{136, 9},
-	{137, 5},
-};
-static arc arcs_51_4[1] = {
-	{139, 10},
-};
-static arc arcs_51_5[1] = {
-	{0, 5},
-};
-static arc arcs_51_6[2] = {
-	{141, 6},
-	{0, 6},
-};
-static arc arcs_51_7[1] = {
-	{15, 5},
-};
-static arc arcs_51_8[1] = {
-	{134, 5},
-};
-static arc arcs_51_9[1] = {
-	{137, 5},
-};
-static arc arcs_51_10[1] = {
-	{138, 5},
-};
-static state states_51[11] = {
-	{7, arcs_51_0},
-	{2, arcs_51_1},
-	{2, arcs_51_2},
-	{2, arcs_51_3},
-	{1, arcs_51_4},
-	{1, arcs_51_5},
-	{2, arcs_51_6},
-	{1, arcs_51_7},
-	{1, arcs_51_8},
-	{1, arcs_51_9},
-	{1, arcs_51_10},
+static state states_51[2] = {
+	{1, arcs_51_0},
+	{3, arcs_51_1},
 };
 static arc arcs_52_0[1] = {
-	{26, 1},
+	{127, 1},
 };
-static arc arcs_52_1[3] = {
-	{142, 2},
-	{27, 3},
+static arc arcs_52_1[5] = {
+	{28, 0},
+	{128, 0},
+	{129, 0},
+	{130, 0},
 	{0, 1},
 };
-static arc arcs_52_2[1] = {
-	{0, 2},
-};
-static arc arcs_52_3[2] = {
-	{26, 4},
-	{0, 3},
-};
-static arc arcs_52_4[2] = {
-	{27, 3},
-	{0, 4},
-};
-static state states_52[5] = {
+static state states_52[2] = {
 	{1, arcs_52_0},
-	{3, arcs_52_1},
-	{1, arcs_52_2},
-	{2, arcs_52_3},
-	{2, arcs_52_4},
+	{5, arcs_52_1},
 };
-static arc arcs_53_0[1] = {
-	{26, 1},
+static arc arcs_53_0[4] = {
+	{125, 1},
+	{126, 1},
+	{131, 1},
+	{132, 2},
 };
-static arc arcs_53_1[3] = {
-	{143, 2},
-	{27, 3},
-	{0, 1},
+static arc arcs_53_1[1] = {
+	{127, 2},
 };
 static arc arcs_53_2[1] = {
 	{0, 2},
 };
-static arc arcs_53_3[2] = {
-	{26, 4},
-	{0, 3},
-};
-static arc arcs_53_4[2] = {
-	{27, 3},
-	{0, 4},
-};
-static state states_53[5] = {
-	{1, arcs_53_0},
-	{3, arcs_53_1},
+static state states_53[3] = {
+	{4, arcs_53_0},
+	{1, arcs_53_1},
 	{1, arcs_53_2},
-	{2, arcs_53_3},
-	{2, arcs_53_4},
 };
 static arc arcs_54_0[1] = {
-	{144, 1},
+	{133, 1},
 };
-static arc arcs_54_1[2] = {
-	{23, 2},
-	{21, 3},
+static arc arcs_54_1[3] = {
+	{134, 1},
+	{29, 2},
+	{0, 1},
 };
 static arc arcs_54_2[1] = {
-	{21, 3},
+	{127, 3},
 };
 static arc arcs_54_3[1] = {
-	{26, 4},
+	{0, 3},
 };
-static arc arcs_54_4[1] = {
-	{0, 4},
-};
-static state states_54[5] = {
+static state states_54[4] = {
 	{1, arcs_54_0},
-	{2, arcs_54_1},
+	{3, arcs_54_1},
 	{1, arcs_54_2},
 	{1, arcs_54_3},
-	{1, arcs_54_4},
 };
-static arc arcs_55_0[3] = {
+static arc arcs_55_0[7] = {
 	{13, 1},
-	{132, 2},
-	{74, 3},
-};
-static arc arcs_55_1[2] = {
-	{14, 4},
-	{15, 5},
-};
-static arc arcs_55_2[1] = {
+	{136, 2},
+	{139, 3},
+	{142, 4},
+	{19, 5},
+	{144, 5},
 	{145, 6},
 };
-static arc arcs_55_3[1] = {
-	{19, 5},
+static arc arcs_55_1[2] = {
+	{135, 7},
+	{15, 5},
+};
+static arc arcs_55_2[2] = {
+	{137, 8},
+	{138, 5},
+};
+static arc arcs_55_3[2] = {
+	{140, 9},
+	{141, 5},
 };
 static arc arcs_55_4[1] = {
-	{15, 5},
+	{143, 10},
 };
 static arc arcs_55_5[1] = {
 	{0, 5},
 };
-static arc arcs_55_6[1] = {
-	{134, 5},
-};
-static state states_55[7] = {
-	{3, arcs_55_0},
-	{2, arcs_55_1},
-	{1, arcs_55_2},
-	{1, arcs_55_3},
-	{1, arcs_55_4},
-	{1, arcs_55_5},
-	{1, arcs_55_6},
-};
-static arc arcs_56_0[1] = {
-	{146, 1},
-};
-static arc arcs_56_1[2] = {
-	{27, 2},
-	{0, 1},
-};
-static arc arcs_56_2[2] = {
-	{146, 1},
-	{0, 2},
-};
-static state states_56[3] = {
-	{1, arcs_56_0},
-	{2, arcs_56_1},
-	{2, arcs_56_2},
-};
-static arc arcs_57_0[3] = {
-	{74, 1},
-	{26, 2},
-	{21, 3},
-};
-static arc arcs_57_1[1] = {
-	{74, 4},
-};
-static arc arcs_57_2[2] = {
-	{21, 3},
-	{0, 2},
-};
-static arc arcs_57_3[3] = {
-	{26, 5},
-	{147, 6},
-	{0, 3},
-};
-static arc arcs_57_4[1] = {
-	{74, 6},
-};
-static arc arcs_57_5[2] = {
-	{147, 6},
-	{0, 5},
-};
-static arc arcs_57_6[1] = {
+static arc arcs_55_6[2] = {
+	{145, 6},
 	{0, 6},
 };
-static state states_57[7] = {
-	{3, arcs_57_0},
-	{1, arcs_57_1},
-	{2, arcs_57_2},
-	{3, arcs_57_3},
-	{1, arcs_57_4},
-	{2, arcs_57_5},
-	{1, arcs_57_6},
+static arc arcs_55_7[1] = {
+	{15, 5},
 };
-static arc arcs_58_0[1] = {
-	{21, 1},
+static arc arcs_55_8[1] = {
+	{138, 5},
 };
-static arc arcs_58_1[2] = {
-	{26, 2},
+static arc arcs_55_9[1] = {
+	{141, 5},
+};
+static arc arcs_55_10[1] = {
+	{142, 5},
+};
+static state states_55[11] = {
+	{7, arcs_55_0},
+	{2, arcs_55_1},
+	{2, arcs_55_2},
+	{2, arcs_55_3},
+	{1, arcs_55_4},
+	{1, arcs_55_5},
+	{2, arcs_55_6},
+	{1, arcs_55_7},
+	{1, arcs_55_8},
+	{1, arcs_55_9},
+	{1, arcs_55_10},
+};
+static arc arcs_56_0[1] = {
+	{26, 1},
+};
+static arc arcs_56_1[3] = {
+	{146, 2},
+	{27, 3},
 	{0, 1},
 };
-static arc arcs_58_2[1] = {
+static arc arcs_56_2[1] = {
 	{0, 2},
 };
-static state states_58[3] = {
+static arc arcs_56_3[2] = {
+	{26, 4},
+	{0, 3},
+};
+static arc arcs_56_4[2] = {
+	{27, 3},
+	{0, 4},
+};
+static state states_56[5] = {
+	{1, arcs_56_0},
+	{3, arcs_56_1},
+	{1, arcs_56_2},
+	{2, arcs_56_3},
+	{2, arcs_56_4},
+};
+static arc arcs_57_0[1] = {
+	{26, 1},
+};
+static arc arcs_57_1[3] = {
+	{147, 2},
+	{27, 3},
+	{0, 1},
+};
+static arc arcs_57_2[1] = {
+	{0, 2},
+};
+static arc arcs_57_3[2] = {
+	{26, 4},
+	{0, 3},
+};
+static arc arcs_57_4[2] = {
+	{27, 3},
+	{0, 4},
+};
+static state states_57[5] = {
+	{1, arcs_57_0},
+	{3, arcs_57_1},
+	{1, arcs_57_2},
+	{2, arcs_57_3},
+	{2, arcs_57_4},
+};
+static arc arcs_58_0[1] = {
+	{148, 1},
+};
+static arc arcs_58_1[2] = {
+	{23, 2},
+	{21, 3},
+};
+static arc arcs_58_2[1] = {
+	{21, 3},
+};
+static arc arcs_58_3[1] = {
+	{26, 4},
+};
+static arc arcs_58_4[1] = {
+	{0, 4},
+};
+static state states_58[5] = {
 	{1, arcs_58_0},
 	{2, arcs_58_1},
 	{1, arcs_58_2},
+	{1, arcs_58_3},
+	{1, arcs_58_4},
 };
-static arc arcs_59_0[1] = {
-	{77, 1},
+static arc arcs_59_0[3] = {
+	{13, 1},
+	{136, 2},
+	{78, 3},
 };
 static arc arcs_59_1[2] = {
-	{27, 2},
-	{0, 1},
+	{14, 4},
+	{15, 5},
 };
-static arc arcs_59_2[2] = {
-	{77, 1},
-	{0, 2},
+static arc arcs_59_2[1] = {
+	{149, 6},
 };
-static state states_59[3] = {
-	{1, arcs_59_0},
+static arc arcs_59_3[1] = {
+	{19, 5},
+};
+static arc arcs_59_4[1] = {
+	{15, 5},
+};
+static arc arcs_59_5[1] = {
+	{0, 5},
+};
+static arc arcs_59_6[1] = {
+	{138, 5},
+};
+static state states_59[7] = {
+	{3, arcs_59_0},
 	{2, arcs_59_1},
-	{2, arcs_59_2},
+	{1, arcs_59_2},
+	{1, arcs_59_3},
+	{1, arcs_59_4},
+	{1, arcs_59_5},
+	{1, arcs_59_6},
 };
 static arc arcs_60_0[1] = {
-	{26, 1},
+	{150, 1},
 };
 static arc arcs_60_1[2] = {
 	{27, 2},
 	{0, 1},
 };
 static arc arcs_60_2[2] = {
-	{26, 1},
+	{150, 1},
 	{0, 2},
 };
 static state states_60[3] = {
@@ -1325,298 +1284,381 @@
 	{2, arcs_60_1},
 	{2, arcs_60_2},
 };
-static arc arcs_61_0[1] = {
-	{26, 1},
+static arc arcs_61_0[3] = {
+	{78, 1},
+	{26, 2},
+	{21, 3},
 };
-static arc arcs_61_1[2] = {
+static arc arcs_61_1[1] = {
+	{78, 4},
+};
+static arc arcs_61_2[2] = {
+	{21, 3},
+	{0, 2},
+};
+static arc arcs_61_3[3] = {
+	{26, 5},
+	{151, 6},
+	{0, 3},
+};
+static arc arcs_61_4[1] = {
+	{78, 6},
+};
+static arc arcs_61_5[2] = {
+	{151, 6},
+	{0, 5},
+};
+static arc arcs_61_6[1] = {
+	{0, 6},
+};
+static state states_61[7] = {
+	{3, arcs_61_0},
+	{1, arcs_61_1},
+	{2, arcs_61_2},
+	{3, arcs_61_3},
+	{1, arcs_61_4},
+	{2, arcs_61_5},
+	{1, arcs_61_6},
+};
+static arc arcs_62_0[1] = {
+	{21, 1},
+};
+static arc arcs_62_1[2] = {
+	{26, 2},
+	{0, 1},
+};
+static arc arcs_62_2[1] = {
+	{0, 2},
+};
+static state states_62[3] = {
+	{1, arcs_62_0},
+	{2, arcs_62_1},
+	{1, arcs_62_2},
+};
+static arc arcs_63_0[1] = {
+	{81, 1},
+};
+static arc arcs_63_1[2] = {
 	{27, 2},
 	{0, 1},
 };
-static arc arcs_61_2[1] = {
-	{26, 3},
-};
-static arc arcs_61_3[2] = {
-	{27, 4},
-	{0, 3},
-};
-static arc arcs_61_4[2] = {
-	{26, 3},
-	{0, 4},
-};
-static state states_61[5] = {
-	{1, arcs_61_0},
-	{2, arcs_61_1},
-	{1, arcs_61_2},
-	{2, arcs_61_3},
-	{2, arcs_61_4},
-};
-static arc arcs_62_0[1] = {
-	{26, 1},
-};
-static arc arcs_62_1[1] = {
-	{21, 2},
-};
-static arc arcs_62_2[1] = {
-	{26, 3},
-};
-static arc arcs_62_3[2] = {
-	{27, 4},
-	{0, 3},
-};
-static arc arcs_62_4[2] = {
-	{26, 1},
-	{0, 4},
-};
-static state states_62[5] = {
-	{1, arcs_62_0},
-	{1, arcs_62_1},
-	{1, arcs_62_2},
-	{2, arcs_62_3},
-	{2, arcs_62_4},
-};
-static arc arcs_63_0[1] = {
-	{149, 1},
-};
-static arc arcs_63_1[1] = {
-	{19, 2},
-};
 static arc arcs_63_2[2] = {
-	{13, 3},
-	{21, 4},
+	{81, 1},
+	{0, 2},
 };
-static arc arcs_63_3[1] = {
-	{9, 5},
-};
-static arc arcs_63_4[1] = {
-	{22, 6},
-};
-static arc arcs_63_5[1] = {
-	{15, 7},
-};
-static arc arcs_63_6[1] = {
-	{0, 6},
-};
-static arc arcs_63_7[1] = {
-	{21, 4},
-};
-static state states_63[8] = {
+static state states_63[3] = {
 	{1, arcs_63_0},
-	{1, arcs_63_1},
+	{2, arcs_63_1},
 	{2, arcs_63_2},
-	{1, arcs_63_3},
-	{1, arcs_63_4},
-	{1, arcs_63_5},
-	{1, arcs_63_6},
-	{1, arcs_63_7},
 };
-static arc arcs_64_0[3] = {
-	{150, 1},
-	{28, 2},
-	{29, 3},
+static arc arcs_64_0[1] = {
+	{26, 1},
 };
 static arc arcs_64_1[2] = {
-	{27, 4},
+	{27, 2},
 	{0, 1},
 };
-static arc arcs_64_2[1] = {
-	{26, 5},
+static arc arcs_64_2[2] = {
+	{26, 1},
+	{0, 2},
 };
-static arc arcs_64_3[1] = {
-	{26, 6},
-};
-static arc arcs_64_4[4] = {
-	{150, 1},
-	{28, 2},
-	{29, 3},
-	{0, 4},
-};
-static arc arcs_64_5[2] = {
-	{27, 7},
-	{0, 5},
-};
-static arc arcs_64_6[1] = {
-	{0, 6},
-};
-static arc arcs_64_7[1] = {
-	{29, 3},
-};
-static state states_64[8] = {
-	{3, arcs_64_0},
+static state states_64[3] = {
+	{1, arcs_64_0},
 	{2, arcs_64_1},
-	{1, arcs_64_2},
-	{1, arcs_64_3},
-	{4, arcs_64_4},
-	{2, arcs_64_5},
-	{1, arcs_64_6},
-	{1, arcs_64_7},
+	{2, arcs_64_2},
 };
 static arc arcs_65_0[1] = {
 	{26, 1},
 };
-static arc arcs_65_1[3] = {
-	{25, 2},
-	{143, 3},
+static arc arcs_65_1[2] = {
+	{27, 2},
 	{0, 1},
 };
 static arc arcs_65_2[1] = {
-	{26, 4},
+	{26, 3},
 };
-static arc arcs_65_3[1] = {
+static arc arcs_65_3[2] = {
+	{27, 4},
 	{0, 3},
 };
 static arc arcs_65_4[2] = {
-	{143, 3},
+	{26, 3},
 	{0, 4},
 };
 static state states_65[5] = {
 	{1, arcs_65_0},
-	{3, arcs_65_1},
+	{2, arcs_65_1},
 	{1, arcs_65_2},
-	{1, arcs_65_3},
+	{2, arcs_65_3},
 	{2, arcs_65_4},
 };
-static arc arcs_66_0[2] = {
-	{142, 1},
-	{152, 1},
-};
-static arc arcs_66_1[1] = {
-	{0, 1},
-};
-static state states_66[2] = {
-	{2, arcs_66_0},
-	{1, arcs_66_1},
-};
-static arc arcs_67_0[1] = {
-	{89, 1},
-};
-static arc arcs_67_1[1] = {
-	{58, 2},
-};
-static arc arcs_67_2[1] = {
-	{78, 3},
-};
-static arc arcs_67_3[1] = {
-	{148, 4},
-};
-static arc arcs_67_4[2] = {
-	{151, 5},
-	{0, 4},
-};
-static arc arcs_67_5[1] = {
-	{0, 5},
-};
-static state states_67[6] = {
-	{1, arcs_67_0},
-	{1, arcs_67_1},
-	{1, arcs_67_2},
-	{1, arcs_67_3},
-	{2, arcs_67_4},
-	{1, arcs_67_5},
-};
-static arc arcs_68_0[1] = {
-	{85, 1},
-};
-static arc arcs_68_1[1] = {
-	{26, 2},
-};
-static arc arcs_68_2[2] = {
-	{151, 3},
-	{0, 2},
-};
-static arc arcs_68_3[1] = {
-	{0, 3},
-};
-static state states_68[4] = {
-	{1, arcs_68_0},
-	{1, arcs_68_1},
-	{2, arcs_68_2},
-	{1, arcs_68_3},
-};
-static arc arcs_69_0[2] = {
-	{143, 1},
-	{154, 1},
-};
-static arc arcs_69_1[1] = {
-	{0, 1},
-};
-static state states_69[2] = {
-	{2, arcs_69_0},
-	{1, arcs_69_1},
-};
-static arc arcs_70_0[1] = {
-	{89, 1},
-};
-static arc arcs_70_1[1] = {
-	{58, 2},
-};
-static arc arcs_70_2[1] = {
-	{78, 3},
-};
-static arc arcs_70_3[1] = {
-	{26, 4},
-};
-static arc arcs_70_4[2] = {
-	{153, 5},
-	{0, 4},
-};
-static arc arcs_70_5[1] = {
-	{0, 5},
-};
-static state states_70[6] = {
-	{1, arcs_70_0},
-	{1, arcs_70_1},
-	{1, arcs_70_2},
-	{1, arcs_70_3},
-	{2, arcs_70_4},
-	{1, arcs_70_5},
-};
-static arc arcs_71_0[1] = {
-	{85, 1},
-};
-static arc arcs_71_1[1] = {
-	{26, 2},
-};
-static arc arcs_71_2[2] = {
-	{153, 3},
-	{0, 2},
-};
-static arc arcs_71_3[1] = {
-	{0, 3},
-};
-static state states_71[4] = {
-	{1, arcs_71_0},
-	{1, arcs_71_1},
-	{2, arcs_71_2},
-	{1, arcs_71_3},
-};
-static arc arcs_72_0[1] = {
+static arc arcs_66_0[1] = {
 	{26, 1},
 };
-static arc arcs_72_1[2] = {
-	{27, 0},
+static arc arcs_66_1[1] = {
+	{21, 2},
+};
+static arc arcs_66_2[1] = {
+	{26, 3},
+};
+static arc arcs_66_3[2] = {
+	{27, 4},
+	{0, 3},
+};
+static arc arcs_66_4[2] = {
+	{26, 1},
+	{0, 4},
+};
+static state states_66[5] = {
+	{1, arcs_66_0},
+	{1, arcs_66_1},
+	{1, arcs_66_2},
+	{2, arcs_66_3},
+	{2, arcs_66_4},
+};
+static arc arcs_67_0[1] = {
+	{153, 1},
+};
+static arc arcs_67_1[1] = {
+	{19, 2},
+};
+static arc arcs_67_2[2] = {
+	{13, 3},
+	{21, 4},
+};
+static arc arcs_67_3[1] = {
+	{9, 5},
+};
+static arc arcs_67_4[1] = {
+	{22, 6},
+};
+static arc arcs_67_5[1] = {
+	{15, 7},
+};
+static arc arcs_67_6[1] = {
+	{0, 6},
+};
+static arc arcs_67_7[1] = {
+	{21, 4},
+};
+static state states_67[8] = {
+	{1, arcs_67_0},
+	{1, arcs_67_1},
+	{2, arcs_67_2},
+	{1, arcs_67_3},
+	{1, arcs_67_4},
+	{1, arcs_67_5},
+	{1, arcs_67_6},
+	{1, arcs_67_7},
+};
+static arc arcs_68_0[3] = {
+	{154, 1},
+	{28, 2},
+	{29, 3},
+};
+static arc arcs_68_1[2] = {
+	{27, 4},
 	{0, 1},
 };
-static state states_72[2] = {
-	{1, arcs_72_0},
-	{2, arcs_72_1},
+static arc arcs_68_2[1] = {
+	{26, 5},
 };
-static arc arcs_73_0[1] = {
-	{19, 1},
+static arc arcs_68_3[1] = {
+	{26, 6},
+};
+static arc arcs_68_4[4] = {
+	{154, 1},
+	{28, 2},
+	{29, 3},
+	{0, 4},
+};
+static arc arcs_68_5[2] = {
+	{27, 7},
+	{0, 5},
+};
+static arc arcs_68_6[1] = {
+	{0, 6},
+};
+static arc arcs_68_7[1] = {
+	{29, 3},
+};
+static state states_68[8] = {
+	{3, arcs_68_0},
+	{2, arcs_68_1},
+	{1, arcs_68_2},
+	{1, arcs_68_3},
+	{4, arcs_68_4},
+	{2, arcs_68_5},
+	{1, arcs_68_6},
+	{1, arcs_68_7},
+};
+static arc arcs_69_0[1] = {
+	{26, 1},
+};
+static arc arcs_69_1[3] = {
+	{25, 2},
+	{147, 3},
+	{0, 1},
+};
+static arc arcs_69_2[1] = {
+	{26, 4},
+};
+static arc arcs_69_3[1] = {
+	{0, 3},
+};
+static arc arcs_69_4[2] = {
+	{147, 3},
+	{0, 4},
+};
+static state states_69[5] = {
+	{1, arcs_69_0},
+	{3, arcs_69_1},
+	{1, arcs_69_2},
+	{1, arcs_69_3},
+	{2, arcs_69_4},
+};
+static arc arcs_70_0[2] = {
+	{146, 1},
+	{156, 1},
+};
+static arc arcs_70_1[1] = {
+	{0, 1},
+};
+static state states_70[2] = {
+	{2, arcs_70_0},
+	{1, arcs_70_1},
+};
+static arc arcs_71_0[1] = {
+	{93, 1},
+};
+static arc arcs_71_1[1] = {
+	{58, 2},
+};
+static arc arcs_71_2[1] = {
+	{82, 3},
+};
+static arc arcs_71_3[1] = {
+	{152, 4},
+};
+static arc arcs_71_4[2] = {
+	{155, 5},
+	{0, 4},
+};
+static arc arcs_71_5[1] = {
+	{0, 5},
+};
+static state states_71[6] = {
+	{1, arcs_71_0},
+	{1, arcs_71_1},
+	{1, arcs_71_2},
+	{1, arcs_71_3},
+	{2, arcs_71_4},
+	{1, arcs_71_5},
+};
+static arc arcs_72_0[1] = {
+	{89, 1},
+};
+static arc arcs_72_1[1] = {
+	{26, 2},
+};
+static arc arcs_72_2[2] = {
+	{155, 3},
+	{0, 2},
+};
+static arc arcs_72_3[1] = {
+	{0, 3},
+};
+static state states_72[4] = {
+	{1, arcs_72_0},
+	{1, arcs_72_1},
+	{2, arcs_72_2},
+	{1, arcs_72_3},
+};
+static arc arcs_73_0[2] = {
+	{147, 1},
+	{158, 1},
 };
 static arc arcs_73_1[1] = {
 	{0, 1},
 };
 static state states_73[2] = {
-	{1, arcs_73_0},
+	{2, arcs_73_0},
 	{1, arcs_73_1},
 };
-static dfa dfas[74] = {
+static arc arcs_74_0[1] = {
+	{93, 1},
+};
+static arc arcs_74_1[1] = {
+	{58, 2},
+};
+static arc arcs_74_2[1] = {
+	{82, 3},
+};
+static arc arcs_74_3[1] = {
+	{26, 4},
+};
+static arc arcs_74_4[2] = {
+	{157, 5},
+	{0, 4},
+};
+static arc arcs_74_5[1] = {
+	{0, 5},
+};
+static state states_74[6] = {
+	{1, arcs_74_0},
+	{1, arcs_74_1},
+	{1, arcs_74_2},
+	{1, arcs_74_3},
+	{2, arcs_74_4},
+	{1, arcs_74_5},
+};
+static arc arcs_75_0[1] = {
+	{89, 1},
+};
+static arc arcs_75_1[1] = {
+	{26, 2},
+};
+static arc arcs_75_2[2] = {
+	{157, 3},
+	{0, 2},
+};
+static arc arcs_75_3[1] = {
+	{0, 3},
+};
+static state states_75[4] = {
+	{1, arcs_75_0},
+	{1, arcs_75_1},
+	{2, arcs_75_2},
+	{1, arcs_75_3},
+};
+static arc arcs_76_0[1] = {
+	{26, 1},
+};
+static arc arcs_76_1[2] = {
+	{27, 0},
+	{0, 1},
+};
+static state states_76[2] = {
+	{1, arcs_76_0},
+	{2, arcs_76_1},
+};
+static arc arcs_77_0[1] = {
+	{19, 1},
+};
+static arc arcs_77_1[1] = {
+	{0, 1},
+};
+static state states_77[2] = {
+	{1, arcs_77_0},
+	{1, arcs_77_1},
+};
+static dfa dfas[78] = {
 	{256, "single_input", 0, 3, states_0,
-	 "\004\050\014\000\000\000\200\012\176\231\040\007\040\000\000\206\220\064\041\000"},
+	 "\004\050\014\000\000\000\200\012\076\205\011\162\000\002\000\140\010\111\023\002"},
 	{257, "file_input", 0, 2, states_1,
-	 "\204\050\014\000\000\000\200\012\176\231\040\007\040\000\000\206\220\064\041\000"},
+	 "\204\050\014\000\000\000\200\012\076\205\011\162\000\002\000\140\010\111\023\002"},
 	{258, "eval_input", 0, 3, states_2,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\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"},
 	{260, "decorators", 0, 2, states_4,
@@ -1632,13 +1674,13 @@
 	{265, "fplist", 0, 3, states_9,
 	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
 	{266, "stmt", 0, 2, states_10,
-	 "\000\050\014\000\000\000\200\012\176\231\040\007\040\000\000\206\220\064\041\000"},
+	 "\000\050\014\000\000\000\200\012\076\205\011\162\000\002\000\140\010\111\023\002"},
 	{267, "simple_stmt", 0, 4, states_11,
-	 "\000\040\010\000\000\000\200\012\176\231\000\000\040\000\000\206\220\064\001\000"},
+	 "\000\040\010\000\000\000\200\012\076\205\011\000\000\002\000\140\010\111\023\000"},
 	{268, "small_stmt", 0, 2, states_12,
-	 "\000\040\010\000\000\000\200\012\176\231\000\000\040\000\000\206\220\064\001\000"},
+	 "\000\040\010\000\000\000\200\012\076\205\011\000\000\002\000\140\010\111\023\000"},
 	{269, "expr_stmt", 0, 6, states_13,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
 	{270, "augassign", 0, 2, states_14,
 	 "\000\000\000\000\000\370\177\000\000\000\000\000\000\000\000\000\000\000\000\000"},
 	{271, "print_stmt", 0, 9, states_15,
@@ -1659,123 +1701,131 @@
 	 "\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000"},
 	{279, "raise_stmt", 0, 7, states_23,
 	 "\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000"},
-	{280, "import_stmt", 0, 9, states_24,
-	 "\000\000\000\000\000\000\000\000\100\001\000\000\000\000\000\000\000\000\000\000"},
-	{281, "import_as_name", 0, 4, states_25,
+	{280, "import_stmt", 0, 2, states_24,
+	 "\000\000\000\000\000\000\000\000\000\005\000\000\000\000\000\000\000\000\000\000"},
+	{281, "import_name", 0, 3, states_25,
+	 "\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000"},
+	{282, "import_from", 0, 7, states_26,
+	 "\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000"},
+	{283, "import_as_name", 0, 4, states_27,
 	 "\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{282, "dotted_as_name", 0, 4, states_26,
+	{284, "dotted_as_name", 0, 4, states_28,
 	 "\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{283, "dotted_name", 0, 2, states_27,
+	{285, "import_as_names", 0, 3, states_29,
 	 "\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{284, "global_stmt", 0, 3, states_28,
-	 "\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000"},
-	{285, "exec_stmt", 0, 7, states_29,
-	 "\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000"},
-	{286, "assert_stmt", 0, 5, states_30,
+	{286, "dotted_as_names", 0, 2, states_30,
+	 "\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{287, "dotted_name", 0, 2, states_31,
+	 "\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{288, "global_stmt", 0, 3, states_32,
 	 "\000\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"},
-	{287, "compound_stmt", 0, 2, states_31,
-	 "\000\010\004\000\000\000\000\000\000\000\040\007\000\000\000\000\000\000\040\000"},
-	{288, "if_stmt", 0, 8, states_32,
-	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
-	{289, "while_stmt", 0, 8, states_33,
-	 "\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000"},
-	{290, "for_stmt", 0, 10, states_34,
+	{289, "exec_stmt", 0, 7, states_33,
+	 "\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000"},
+	{290, "assert_stmt", 0, 5, states_34,
+	 "\000\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000"},
+	{291, "compound_stmt", 0, 2, states_35,
+	 "\000\010\004\000\000\000\000\000\000\000\000\162\000\000\000\000\000\000\000\002"},
+	{292, "if_stmt", 0, 8, states_36,
 	 "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
-	{291, "try_stmt", 0, 10, states_35,
-	 "\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000"},
-	{292, "except_clause", 0, 5, states_36,
+	{293, "while_stmt", 0, 8, states_37,
+	 "\000\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"},
+	{294, "for_stmt", 0, 10, states_38,
 	 "\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
-	{293, "suite", 0, 5, states_37,
-	 "\004\040\010\000\000\000\200\012\176\231\000\000\040\000\000\206\220\064\001\000"},
-	{294, "test", 0, 4, states_38,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{295, "and_test", 0, 2, states_39,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\000\000"},
-	{296, "not_test", 0, 3, states_40,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\000\000"},
-	{297, "comparison", 0, 2, states_41,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{298, "comp_op", 0, 4, states_42,
-	 "\000\000\000\000\000\000\000\000\000\100\000\000\040\377\000\000\000\000\000\000"},
-	{299, "expr", 0, 2, states_43,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{300, "xor_expr", 0, 2, states_44,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{301, "and_expr", 0, 2, states_45,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{302, "shift_expr", 0, 2, states_46,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{303, "arith_expr", 0, 2, states_47,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{304, "term", 0, 2, states_48,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{305, "factor", 0, 3, states_49,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{306, "power", 0, 4, states_50,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\000\220\064\000\000"},
-	{307, "atom", 0, 11, states_51,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\000\220\064\000\000"},
-	{308, "listmaker", 0, 5, states_52,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{309, "testlist_gexp", 0, 5, states_53,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{310, "lambdef", 0, 5, states_54,
-	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000"},
-	{311, "trailer", 0, 7, states_55,
-	 "\000\040\000\000\000\000\000\000\000\004\000\000\000\000\000\000\020\000\000\000"},
-	{312, "subscriptlist", 0, 3, states_56,
-	 "\000\040\050\000\000\000\000\000\000\004\000\000\040\000\000\206\220\064\001\000"},
-	{313, "subscript", 0, 7, states_57,
-	 "\000\040\050\000\000\000\000\000\000\004\000\000\040\000\000\206\220\064\001\000"},
-	{314, "sliceop", 0, 3, states_58,
+	{295, "try_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"},
+	{296, "except_clause", 0, 5, states_40,
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000"},
+	{297, "suite", 0, 5, states_41,
+	 "\004\040\010\000\000\000\200\012\076\205\011\000\000\002\000\140\010\111\023\000"},
+	{298, "test", 0, 4, states_42,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{299, "and_test", 0, 2, states_43,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\003\000"},
+	{300, "not_test", 0, 3, states_44,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\003\000"},
+	{301, "comparison", 0, 2, states_45,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{302, "comp_op", 0, 4, states_46,
+	 "\000\000\000\000\000\000\000\000\000\000\004\000\000\362\017\000\000\000\000\000"},
+	{303, "expr", 0, 2, states_47,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{304, "xor_expr", 0, 2, states_48,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{305, "and_expr", 0, 2, states_49,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{306, "shift_expr", 0, 2, states_50,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{307, "arith_expr", 0, 2, states_51,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{308, "term", 0, 2, states_52,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{309, "factor", 0, 3, states_53,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{310, "power", 0, 4, states_54,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\111\003\000"},
+	{311, "atom", 0, 11, states_55,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\111\003\000"},
+	{312, "listmaker", 0, 5, states_56,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{313, "testlist_gexp", 0, 5, states_57,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{314, "lambdef", 0, 5, states_58,
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000"},
+	{315, "trailer", 0, 7, states_59,
+	 "\000\040\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\001\000\000"},
+	{316, "subscriptlist", 0, 3, states_60,
+	 "\000\040\050\000\000\000\000\000\000\100\000\000\000\002\000\140\010\111\023\000"},
+	{317, "subscript", 0, 7, states_61,
+	 "\000\040\050\000\000\000\000\000\000\100\000\000\000\002\000\140\010\111\023\000"},
+	{318, "sliceop", 0, 3, states_62,
 	 "\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{315, "exprlist", 0, 3, states_59,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\206\220\064\000\000"},
-	{316, "testlist", 0, 3, states_60,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{317, "testlist_safe", 0, 5, states_61,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{318, "dictmaker", 0, 5, states_62,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{319, "classdef", 0, 8, states_63,
-	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\040\000"},
-	{320, "arglist", 0, 8, states_64,
-	 "\000\040\010\060\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{321, "argument", 0, 5, states_65,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{322, "list_iter", 0, 2, states_66,
-	 "\000\000\000\000\000\000\000\000\000\000\040\002\000\000\000\000\000\000\000\000"},
-	{323, "list_for", 0, 6, states_67,
+	{319, "exprlist", 0, 3, states_63,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000"},
+	{320, "testlist", 0, 3, states_64,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{321, "testlist_safe", 0, 5, states_65,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{322, "dictmaker", 0, 5, states_66,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{323, "classdef", 0, 8, states_67,
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002"},
+	{324, "arglist", 0, 8, states_68,
+	 "\000\040\010\060\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{325, "argument", 0, 5, states_69,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{326, "list_iter", 0, 2, states_70,
+	 "\000\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000"},
+	{327, "list_for", 0, 6, states_71,
+	 "\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
+	{328, "list_if", 0, 4, states_72,
 	 "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
-	{324, "list_if", 0, 4, states_68,
-	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
-	{325, "gen_iter", 0, 2, states_69,
-	 "\000\000\000\000\000\000\000\000\000\000\040\002\000\000\000\000\000\000\000\000"},
-	{326, "gen_for", 0, 6, states_70,
+	{329, "gen_iter", 0, 2, states_73,
+	 "\000\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000"},
+	{330, "gen_for", 0, 6, states_74,
+	 "\000\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
+	{331, "gen_if", 0, 4, states_75,
 	 "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
-	{327, "gen_if", 0, 4, states_71,
-	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
-	{328, "testlist1", 0, 2, states_72,
-	 "\000\040\010\000\000\000\000\000\000\000\000\000\040\000\000\206\220\064\001\000"},
-	{329, "encoding_decl", 0, 2, states_73,
+	{332, "testlist1", 0, 2, states_76,
+	 "\000\040\010\000\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000"},
+	{333, "encoding_decl", 0, 2, states_77,
 	 "\000\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
 };
-static label labels[156] = {
+static label labels[160] = {
 	{0, "EMPTY"},
 	{256, 0},
 	{4, 0},
 	{267, 0},
-	{287, 0},
+	{291, 0},
 	{257, 0},
 	{266, 0},
 	{0, 0},
 	{258, 0},
-	{316, 0},
+	{320, 0},
 	{259, 0},
 	{50, 0},
-	{283, 0},
+	{287, 0},
 	{7, 0},
-	{320, 0},
+	{324, 0},
 	{8, 0},
 	{260, 0},
 	{261, 0},
@@ -1783,11 +1833,11 @@
 	{1, 0},
 	{262, 0},
 	{11, 0},
-	{293, 0},
+	{297, 0},
 	{263, 0},
 	{264, 0},
 	{22, 0},
-	{294, 0},
+	{298, 0},
 	{12, 0},
 	{16, 0},
 	{36, 0},
@@ -1800,9 +1850,9 @@
 	{273, 0},
 	{274, 0},
 	{280, 0},
-	{284, 0},
-	{285, 0},
-	{286, 0},
+	{288, 0},
+	{289, 0},
+	{290, 0},
 	{270, 0},
 	{37, 0},
 	{38, 0},
@@ -1819,7 +1869,7 @@
 	{1, "print"},
 	{35, 0},
 	{1, "del"},
-	{315, 0},
+	{319, 0},
 	{1, "pass"},
 	{275, 0},
 	{276, 0},
@@ -1831,40 +1881,44 @@
 	{1, "return"},
 	{1, "yield"},
 	{1, "raise"},
-	{1, "import"},
-	{282, 0},
-	{1, "from"},
 	{281, 0},
+	{282, 0},
+	{1, "import"},
+	{286, 0},
+	{1, "from"},
+	{285, 0},
+	{283, 0},
+	{284, 0},
 	{23, 0},
 	{1, "global"},
 	{1, "exec"},
-	{299, 0},
+	{303, 0},
 	{1, "in"},
 	{1, "assert"},
-	{288, 0},
-	{289, 0},
-	{290, 0},
-	{291, 0},
-	{319, 0},
+	{292, 0},
+	{293, 0},
+	{294, 0},
+	{295, 0},
+	{323, 0},
 	{1, "if"},
 	{1, "elif"},
 	{1, "else"},
 	{1, "while"},
 	{1, "for"},
 	{1, "try"},
-	{292, 0},
+	{296, 0},
 	{1, "finally"},
 	{1, "except"},
 	{5, 0},
 	{6, 0},
-	{295, 0},
+	{299, 0},
 	{1, "or"},
-	{310, 0},
-	{296, 0},
+	{314, 0},
+	{300, 0},
 	{1, "and"},
 	{1, "not"},
-	{297, 0},
-	{298, 0},
+	{301, 0},
+	{302, 0},
 	{20, 0},
 	{21, 0},
 	{28, 0},
@@ -1873,54 +1927,54 @@
 	{29, 0},
 	{29, 0},
 	{1, "is"},
-	{300, 0},
-	{18, 0},
-	{301, 0},
-	{33, 0},
-	{302, 0},
-	{19, 0},
-	{303, 0},
-	{34, 0},
 	{304, 0},
+	{18, 0},
+	{305, 0},
+	{33, 0},
+	{306, 0},
+	{19, 0},
+	{307, 0},
+	{34, 0},
+	{308, 0},
 	{14, 0},
 	{15, 0},
-	{305, 0},
+	{309, 0},
 	{17, 0},
 	{24, 0},
 	{48, 0},
 	{32, 0},
-	{306, 0},
-	{307, 0},
+	{310, 0},
 	{311, 0},
-	{309, 0},
+	{315, 0},
+	{313, 0},
 	{9, 0},
-	{308, 0},
+	{312, 0},
 	{10, 0},
 	{26, 0},
-	{318, 0},
+	{322, 0},
 	{27, 0},
 	{25, 0},
-	{328, 0},
+	{332, 0},
 	{2, 0},
 	{3, 0},
-	{323, 0},
-	{326, 0},
-	{1, "lambda"},
-	{312, 0},
-	{313, 0},
-	{314, 0},
-	{317, 0},
-	{1, "class"},
-	{321, 0},
-	{322, 0},
-	{324, 0},
-	{325, 0},
 	{327, 0},
+	{330, 0},
+	{1, "lambda"},
+	{316, 0},
+	{317, 0},
+	{318, 0},
+	{321, 0},
+	{1, "class"},
+	{325, 0},
+	{326, 0},
+	{328, 0},
 	{329, 0},
+	{331, 0},
+	{333, 0},
 };
 grammar _PyParser_Grammar = {
-	74,
+	78,
 	dfas,
-	{156, labels},
+	{160, labels},
 	256
 };