diff --git a/Python/compile.c b/Python/compile.c
index 7bbcd62..15159f8 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -744,11 +744,15 @@
 static int com_addconst(struct compiling *, PyObject *);
 static int com_addname(struct compiling *, PyObject *);
 static void com_addopname(struct compiling *, int, node *);
+static void com_test(struct compiling *c, node *n);
 static void com_list(struct compiling *, node *, int);
 static void com_list_iter(struct compiling *, node *, node *, char *);
+static void com_gen_iter(struct compiling *, node *, node *);
 static int com_argdefs(struct compiling *, node *);
 static void com_assign(struct compiling *, node *, int, node *);
 static void com_assign_name(struct compiling *, node *, int);
+static int com_make_closure(struct compiling *c, PyCodeObject *co);
+
 static PyCodeObject *icompile(node *, struct compiling *);
 static PyCodeObject *jcompile(node *, const char *, struct compiling *,
 			      PyCompilerFlags *);
@@ -759,6 +763,7 @@
 static int get_ref_type(struct compiling *, char *);
 
 /* symtable operations */
+static int symtable_lookup(struct symtable *st, char *name);
 static struct symtable *symtable_build(node *, PyFutureFeatures *,
 				       const char *filename);
 static int symtable_load_symbols(struct compiling *);
@@ -777,7 +782,10 @@
 static void symtable_import(struct symtable *, node *);
 static void symtable_assign(struct symtable *, node *, int);
 static void symtable_list_comprehension(struct symtable *, node *);
+static void symtable_generator_expression(struct symtable *, node *);
 static void symtable_list_for(struct symtable *, node *);
+static void symtable_gen_for(struct symtable *, node *, int);
+static void symtable_gen_iter(struct symtable *, node *);
 
 static int symtable_update_free_vars(struct symtable *);
 static int symtable_undo_free(struct symtable *, PyObject *, PyObject *);
@@ -1589,7 +1597,7 @@
 	int anchor = 0;
 	int save_begin = c->c_begin;
 
-	/* list_iter: for v in expr [list_iter] */
+	/* list_for: for v in expr [list_iter] */
 	com_node(c, CHILD(n, 3)); /* expr */
 	com_addbyte(c, GET_ITER);
 	c->c_begin = c->c_nexti;
@@ -1606,6 +1614,52 @@
 }  
 
 static void
+com_gen_for(struct compiling *c, node *n, node *t, int is_outmost)
+{
+	int break_anchor = 0;
+	int anchor = 0;
+	int save_begin = c->c_begin;
+
+	REQ(n, gen_for);
+	/* gen_for: for v in test [gen_iter] */
+
+	com_addfwref(c, SETUP_LOOP, &break_anchor);
+	block_push(c, SETUP_LOOP);
+
+	if (is_outmost) {
+		com_addop_varname(c, VAR_LOAD, "[outmost-iterable]");
+		com_push(c, 1);
+	}
+	else {
+		com_node(c, CHILD(n, 3));
+		com_addbyte(c, GET_ITER); 
+	}
+
+	c->c_begin = c->c_nexti;
+	com_set_lineno(c, c->c_last_line);
+	com_addfwref(c, FOR_ITER, &anchor);
+	com_push(c, 1);
+	com_assign(c, CHILD(n, 1), OP_ASSIGN, NULL);
+
+	if (NCH(n) == 5) 
+		com_gen_iter(c, CHILD(n, 4), t);
+	else {
+		com_test(c, t);
+		com_addbyte(c, YIELD_VALUE);
+		com_pop(c, 1);
+	}
+
+	com_addoparg(c, JUMP_ABSOLUTE, c->c_begin);
+	c->c_begin = save_begin;
+
+	com_backpatch(c, anchor);
+	com_pop(c, 1); /* FOR_ITER has popped this */
+	com_addbyte(c, POP_BLOCK);
+	block_pop(c, SETUP_LOOP);
+	com_backpatch(c, break_anchor);
+}
+
+static void
 com_list_if(struct compiling *c, node *n, node *e, char *t)
 {
 	int anchor = 0;
@@ -1624,6 +1678,32 @@
 }
 
 static void
+com_gen_if(struct compiling *c, node *n, node *t)
+{
+	/* gen_if: 'if' test [gen_iter] */
+	int anchor = 0;
+	int a=0;
+
+	com_node(c, CHILD(n, 1));
+	com_addfwref(c, JUMP_IF_FALSE, &a);
+	com_addbyte(c, POP_TOP);
+	com_pop(c, 1);
+
+	if (NCH(n) == 3)
+		com_gen_iter(c, CHILD(n, 2), t);
+	else {
+		com_test(c, t);
+		com_addbyte(c, YIELD_VALUE);
+		com_pop(c, 1);
+	}
+	com_addfwref(c, JUMP_FORWARD, &anchor);
+	com_backpatch(c, a);
+	/* We jump here with an extra entry which we now pop */
+	com_addbyte(c, POP_TOP);
+	com_backpatch(c, anchor);
+}
+
+static void
 com_list_iter(struct compiling *c,
 	      node *p,		/* parent of list_iter node */
 	      node *e,		/* element expression node */
@@ -1655,6 +1735,28 @@
 }
 
 static void
+com_gen_iter(struct compiling *c, node *n, node *t)
+{
+	/* gen_iter: gen_for | gen_if */
+	node *ch;
+	REQ(n, gen_iter);
+
+	ch = CHILD(n, 0);
+
+	switch (TYPE(ch)) {
+	case gen_for:
+		com_gen_for(c, ch, t, 0);
+		break;
+	case gen_if:
+		com_gen_if(c, ch, t);
+		break;
+	default:
+		com_error(c, PyExc_SystemError,
+			  "invalid gen_iter node type");
+	}
+}
+
+static void
 com_list_comprehension(struct compiling *c, node *n)
 {
 	/* listmaker: test list_for */
@@ -1689,6 +1791,52 @@
 }
 
 static void
+com_generator_expression(struct compiling *c, node *n)
+{
+	/* testlist_gexp: test gen_for */
+	/* argument: test gen_for */
+	PyCodeObject *co;
+
+	REQ(CHILD(n, 0), test); 
+	REQ(CHILD(n, 1), gen_for); 
+
+	symtable_enter_scope(c->c_symtable, "<genexpr>", TYPE(n),
+		             n->n_lineno);
+	co = icompile(n, c);
+	symtable_exit_scope(c->c_symtable);
+
+	if (co == NULL)
+		c->c_errors++;
+	else {
+		int closure = com_make_closure(c, co);
+		int i = com_addconst(c, (PyObject *)co);
+
+		com_addoparg(c, LOAD_CONST, i);
+		com_push(c, 1);
+		if (closure)
+			com_addoparg(c, MAKE_CLOSURE, 0);
+		else
+			com_addoparg(c, MAKE_FUNCTION, 0);
+
+		com_test(c, CHILD(CHILD(n, 1), 3));
+		com_addbyte(c, GET_ITER);
+		com_addoparg(c, CALL_FUNCTION, 1);
+		com_pop(c, 1);
+
+		Py_DECREF(co);
+	}
+}
+
+static void
+com_testlist_gexp(struct compiling *c, node *n)
+{
+	/* testlist_gexp: test ( gen_for | (',' test)* [','] ) */
+	if (NCH(n) > 1 && TYPE(CHILD(n, 1)) == gen_for)
+		com_generator_expression(c, n);
+	else com_list(c, n, 0);
+}
+
+static void
 com_dictmaker(struct compiling *c, node *n)
 {
 	int i;
@@ -1721,7 +1869,7 @@
 			com_push(c, 1);
 		}
 		else
-			com_node(c, CHILD(n, 1));
+			com_testlist_gexp(c, CHILD(n, 1));
 		break;
 	case LSQB: /* '[' [listmaker] ']' */
 		if (TYPE(CHILD(n, 1)) == RSQB) {
@@ -1857,7 +2005,7 @@
 com_argument(struct compiling *c, node *n, PyObject **pkeywords)
 {
 	node *m;
-	REQ(n, argument); /* [test '='] test; really [keyword '='] test */
+	REQ(n, argument); /* [test '='] test [gen_for]; really [keyword '='] test */
 	if (NCH(n) == 1) {
 		if (*pkeywords != NULL) {
 			com_error(c, PyExc_SyntaxError,
@@ -1868,6 +2016,11 @@
 		}
 		return;
 	}
+	if (NCH(n) == 2) {
+		com_generator_expression(c, n);
+		return;
+	}
+
 	m = n;
 	do {
 		m = CHILD(m, 0);
@@ -2723,7 +2876,8 @@
 com_assign_sequence(struct compiling *c, node *n, int assigning)
 {
 	int i;
-	if (TYPE(n) != testlist && TYPE(n) != listmaker)
+	if (TYPE(n) != testlist && TYPE(n) != testlist_gexp &&
+	    TYPE(n) != listmaker)
 		REQ(n, exprlist);
 	if (assigning) {
 		i = (NCH(n)+1)/2;
@@ -2765,7 +2919,13 @@
 		case exprlist:
 		case testlist:
 		case testlist1:
+		case testlist_gexp:
 			if (NCH(n) > 1) {
+				if (TYPE(CHILD(n, 1)) == gen_for) {
+					com_error(c, PyExc_SystemError,
+				  "assign to generator expression not possible");
+					return;
+				}
 				if (assigning > OP_APPLY) {
 					com_error(c, PyExc_SyntaxError,
 				  "augmented assign to tuple not possible");
@@ -4253,6 +4413,23 @@
 }
 
 static void
+compile_generator_expression(struct compiling *c, node *n)
+{
+	/* testlist_gexp: test gen_for */
+	/* argument: test gen_for */
+	REQ(CHILD(n, 0), test); 
+	REQ(CHILD(n, 1), gen_for); 
+
+	c->c_name = "<generator expression>";
+	com_gen_for(c, CHILD(n, 1), CHILD(n, 0), 1);
+
+	com_addoparg(c, LOAD_CONST, com_addconst(c, Py_None));
+	com_push(c, 1);
+	com_addbyte(c, RETURN_VALUE);
+	com_pop(c, 1);
+}
+
+static void
 compile_node(struct compiling *c, node *n)
 {
 	com_set_lineno(c, n->n_lineno);
@@ -4300,6 +4477,11 @@
 		compile_classdef(c, n);
 		break;
 	
+	case testlist_gexp: /* A generator expression */
+	case argument:      /* A generator expression */
+		compile_generator_expression(c, n);
+		break;
+
 	default:
 		com_error(c, PyExc_SystemError,
 			  "compile_node: unexpected node type");
@@ -4976,7 +5158,6 @@
 			}
 		}
 	}
-
 	assert(PyDict_Size(c->c_freevars) == si.si_nfrees);
 
 	if (si.si_ncells > 1) { /* one cell is always in order */
@@ -5346,11 +5527,11 @@
 			return 0;
 
 		case yield_stmt:
-			return 1;
+			return GENERATOR;
 
 		default:
 			if (look_for_yield(kid))
-				return 1;
+				return GENERATOR;
 		}
 	}
 	return 0;
@@ -5494,6 +5675,18 @@
 			if (TYPE(CHILD(n, i)) >= single_input)
 				symtable_node(st, CHILD(n, i));
 		break;
+	case arglist:
+		if (NCH(n) > 1)
+			for (i = 0; i < NCH(n); ++i) {
+				node *ch = CHILD(n, i);
+				if (TYPE(ch) == argument && NCH(ch) == 2 &&
+				    TYPE(CHILD(ch, 1)) == gen_for) {
+					PyErr_SetString(PyExc_SyntaxError,
+							"invalid syntax");
+					symtable_error(st, n->n_lineno);
+					return;
+				}
+			}
 	/* The remaining cases fall through to default except in
 	   special circumstances.  This requires the individual cases
 	   to be coded with great care, even though they look like
@@ -5504,6 +5697,11 @@
 			n = CHILD(n, 2);
 			goto loop;
 		}
+		else if (TYPE(n) == argument && NCH(n) == 2 &&
+			TYPE(CHILD(n, 1)) == gen_for) {
+			symtable_generator_expression(st, n);
+			break;
+		}
 		/* fall through */
 	case listmaker:
 		if (NCH(n) > 1 && TYPE(CHILD(n, 1)) == list_for) {
@@ -5511,6 +5709,13 @@
 			break;
 		}
 		/* fall through */
+	case testlist_gexp:
+		if (NCH(n) > 1 && TYPE(CHILD(n, 1)) == gen_for) {
+			symtable_generator_expression(st, n); 
+			break;
+		}
+		/* fall through */
+
 	case atom:
 		if (TYPE(n) == atom && TYPE(CHILD(n, 0)) == NAME) {
 			symtable_add_use(st, STR(CHILD(n, 0)));
@@ -5715,6 +5920,26 @@
 }
 
 static void
+symtable_generator_expression(struct symtable *st, node *n)
+{
+	/* testlist_gexp: test gen_for */
+	REQ(CHILD(n, 0), test);
+	REQ(CHILD(n, 1), gen_for);
+
+	symtable_enter_scope(st, "<genexpr>", TYPE(n), n->n_lineno);
+	st->st_cur->ste_generator = GENERATOR_EXPRESSION;
+
+	symtable_add_def(st, "[outmost-iterable]", DEF_PARAM);
+	
+	symtable_gen_for(st, CHILD(n, 1), 1);
+	symtable_node(st, CHILD(n, 0));
+	symtable_exit_scope(st);
+
+	/* for outmost iterable precomputation */
+	symtable_node(st, CHILD(CHILD(n, 1), 3)); 
+}
+
+static void
 symtable_list_for(struct symtable *st, node *n)
 {
 	REQ(n, list_for);
@@ -5726,6 +5951,39 @@
 }
 
 static void
+symtable_gen_for(struct symtable *st, node *n, int is_outmost)
+{
+	REQ(n, gen_for);
+
+	/* gen_for: for v in test [gen_iter] */
+	symtable_assign(st, CHILD(n, 1), 0);
+	if (is_outmost)
+		symtable_add_use(st, "[outmost-iterable]");
+	else
+		symtable_node(st, CHILD(n, 3));
+
+	if (NCH(n) == 5)
+		symtable_gen_iter(st, CHILD(n, 4));
+}
+
+static void
+symtable_gen_iter(struct symtable *st, node *n)
+{
+	REQ(n, gen_iter);
+
+	n = CHILD(n, 0);
+	if (TYPE(n) == gen_for)
+		symtable_gen_for(st, n, 0);
+	else {
+		REQ(n, gen_if);
+		symtable_node(st, CHILD(n, 1));
+
+		if (NCH(n) == 3)
+			symtable_gen_iter(st, CHILD(n, 2));
+	}
+}
+
+static void
 symtable_import(struct symtable *st, node *n)
 {
 	int i;
@@ -5813,6 +6071,17 @@
 				symtable_assign(st, CHILD(n, i), def_flag);
 		}
 		return;
+	case testlist_gexp:
+		if (NCH(n) > 1 && TYPE(CHILD(n, 1)) == gen_for) {
+			/* XXX This is an error, but the next pass
+			   will catch it. */ 
+			return;
+		} else {
+			for (i = 0; i < NCH(n); i += 2)
+				symtable_assign(st, CHILD(n, i), def_flag);
+		}
+		return;
+
 	case exprlist:
 	case testlist:
 	case testlist1:
diff --git a/Python/graminit.c b/Python/graminit.c
index 98bad94..cd8240b 100644
--- a/Python/graminit.c
+++ b/Python/graminit.c
@@ -1016,46 +1016,46 @@
 };
 static arc arcs_49_0[7] = {
 	{16, 1},
-	{127, 2},
-	{130, 3},
-	{133, 4},
+	{128, 2},
+	{131, 3},
+	{134, 4},
 	{12, 5},
-	{135, 5},
-	{136, 6},
+	{136, 5},
+	{137, 6},
 };
 static arc arcs_49_1[2] = {
-	{9, 7},
+	{127, 7},
 	{18, 5},
 };
 static arc arcs_49_2[2] = {
-	{128, 8},
-	{129, 5},
+	{129, 8},
+	{130, 5},
 };
 static arc arcs_49_3[2] = {
-	{131, 9},
-	{132, 5},
+	{132, 9},
+	{133, 5},
 };
 static arc arcs_49_4[1] = {
-	{134, 10},
+	{135, 10},
 };
 static arc arcs_49_5[1] = {
 	{0, 5},
 };
 static arc arcs_49_6[2] = {
-	{136, 6},
+	{137, 6},
 	{0, 6},
 };
 static arc arcs_49_7[1] = {
 	{18, 5},
 };
 static arc arcs_49_8[1] = {
-	{129, 5},
+	{130, 5},
 };
 static arc arcs_49_9[1] = {
-	{132, 5},
+	{133, 5},
 };
 static arc arcs_49_10[1] = {
-	{133, 5},
+	{134, 5},
 };
 static state states_49[11] = {
 	{7, arcs_49_0},
@@ -1074,7 +1074,7 @@
 	{21, 1},
 };
 static arc arcs_50_1[3] = {
-	{137, 2},
+	{138, 2},
 	{22, 3},
 	{0, 1},
 };
@@ -1097,153 +1097,163 @@
 	{2, arcs_50_4},
 };
 static arc arcs_51_0[1] = {
-	{138, 1},
+	{21, 1},
 };
-static arc arcs_51_1[2] = {
-	{17, 2},
-	{14, 3},
+static arc arcs_51_1[3] = {
+	{139, 2},
+	{22, 3},
+	{0, 1},
 };
 static arc arcs_51_2[1] = {
-	{14, 3},
+	{0, 2},
 };
-static arc arcs_51_3[1] = {
+static arc arcs_51_3[2] = {
 	{21, 4},
+	{0, 3},
 };
-static arc arcs_51_4[1] = {
+static arc arcs_51_4[2] = {
+	{22, 3},
 	{0, 4},
 };
 static state states_51[5] = {
 	{1, arcs_51_0},
-	{2, arcs_51_1},
+	{3, arcs_51_1},
 	{1, arcs_51_2},
-	{1, arcs_51_3},
-	{1, arcs_51_4},
+	{2, arcs_51_3},
+	{2, arcs_51_4},
 };
-static arc arcs_52_0[3] = {
-	{16, 1},
-	{127, 2},
-	{70, 3},
+static arc arcs_52_0[1] = {
+	{140, 1},
 };
 static arc arcs_52_1[2] = {
-	{139, 4},
-	{18, 5},
+	{17, 2},
+	{14, 3},
 };
 static arc arcs_52_2[1] = {
-	{140, 6},
+	{14, 3},
 };
 static arc arcs_52_3[1] = {
-	{12, 5},
+	{21, 4},
 };
 static arc arcs_52_4[1] = {
-	{18, 5},
+	{0, 4},
 };
-static arc arcs_52_5[1] = {
-	{0, 5},
-};
-static arc arcs_52_6[1] = {
-	{129, 5},
-};
-static state states_52[7] = {
-	{3, arcs_52_0},
+static state states_52[5] = {
+	{1, arcs_52_0},
 	{2, arcs_52_1},
 	{1, arcs_52_2},
 	{1, arcs_52_3},
 	{1, arcs_52_4},
-	{1, arcs_52_5},
-	{1, arcs_52_6},
 };
-static arc arcs_53_0[1] = {
-	{141, 1},
+static arc arcs_53_0[3] = {
+	{16, 1},
+	{128, 2},
+	{70, 3},
 };
 static arc arcs_53_1[2] = {
+	{141, 4},
+	{18, 5},
+};
+static arc arcs_53_2[1] = {
+	{142, 6},
+};
+static arc arcs_53_3[1] = {
+	{12, 5},
+};
+static arc arcs_53_4[1] = {
+	{18, 5},
+};
+static arc arcs_53_5[1] = {
+	{0, 5},
+};
+static arc arcs_53_6[1] = {
+	{130, 5},
+};
+static state states_53[7] = {
+	{3, arcs_53_0},
+	{2, arcs_53_1},
+	{1, arcs_53_2},
+	{1, arcs_53_3},
+	{1, arcs_53_4},
+	{1, arcs_53_5},
+	{1, arcs_53_6},
+};
+static arc arcs_54_0[1] = {
+	{143, 1},
+};
+static arc arcs_54_1[2] = {
 	{22, 2},
 	{0, 1},
 };
-static arc arcs_53_2[2] = {
-	{141, 1},
+static arc arcs_54_2[2] = {
+	{143, 1},
 	{0, 2},
 };
-static state states_53[3] = {
-	{1, arcs_53_0},
-	{2, arcs_53_1},
-	{2, arcs_53_2},
+static state states_54[3] = {
+	{1, arcs_54_0},
+	{2, arcs_54_1},
+	{2, arcs_54_2},
 };
-static arc arcs_54_0[3] = {
+static arc arcs_55_0[3] = {
 	{70, 1},
 	{21, 2},
 	{14, 3},
 };
-static arc arcs_54_1[1] = {
+static arc arcs_55_1[1] = {
 	{70, 4},
 };
-static arc arcs_54_2[2] = {
+static arc arcs_55_2[2] = {
 	{14, 3},
 	{0, 2},
 };
-static arc arcs_54_3[3] = {
+static arc arcs_55_3[3] = {
 	{21, 5},
-	{142, 6},
+	{144, 6},
 	{0, 3},
 };
-static arc arcs_54_4[1] = {
+static arc arcs_55_4[1] = {
 	{70, 6},
 };
-static arc arcs_54_5[2] = {
-	{142, 6},
+static arc arcs_55_5[2] = {
+	{144, 6},
 	{0, 5},
 };
-static arc arcs_54_6[1] = {
+static arc arcs_55_6[1] = {
 	{0, 6},
 };
-static state states_54[7] = {
-	{3, arcs_54_0},
-	{1, arcs_54_1},
-	{2, arcs_54_2},
-	{3, arcs_54_3},
-	{1, arcs_54_4},
-	{2, arcs_54_5},
-	{1, arcs_54_6},
+static state states_55[7] = {
+	{3, arcs_55_0},
+	{1, arcs_55_1},
+	{2, arcs_55_2},
+	{3, arcs_55_3},
+	{1, arcs_55_4},
+	{2, arcs_55_5},
+	{1, arcs_55_6},
 };
-static arc arcs_55_0[1] = {
+static arc arcs_56_0[1] = {
 	{14, 1},
 };
-static arc arcs_55_1[2] = {
+static arc arcs_56_1[2] = {
 	{21, 2},
 	{0, 1},
 };
-static arc arcs_55_2[1] = {
-	{0, 2},
-};
-static state states_55[3] = {
-	{1, arcs_55_0},
-	{2, arcs_55_1},
-	{1, arcs_55_2},
-};
-static arc arcs_56_0[1] = {
-	{73, 1},
-};
-static arc arcs_56_1[2] = {
-	{22, 2},
-	{0, 1},
-};
-static arc arcs_56_2[2] = {
-	{73, 1},
+static arc arcs_56_2[1] = {
 	{0, 2},
 };
 static state states_56[3] = {
 	{1, arcs_56_0},
 	{2, arcs_56_1},
-	{2, arcs_56_2},
+	{1, arcs_56_2},
 };
 static arc arcs_57_0[1] = {
-	{21, 1},
+	{73, 1},
 };
 static arc arcs_57_1[2] = {
 	{22, 2},
 	{0, 1},
 };
 static arc arcs_57_2[2] = {
-	{21, 1},
+	{73, 1},
 	{0, 2},
 };
 static state states_57[3] = {
@@ -1258,29 +1268,21 @@
 	{22, 2},
 	{0, 1},
 };
-static arc arcs_58_2[1] = {
-	{21, 3},
+static arc arcs_58_2[2] = {
+	{21, 1},
+	{0, 2},
 };
-static arc arcs_58_3[2] = {
-	{22, 4},
-	{0, 3},
-};
-static arc arcs_58_4[2] = {
-	{21, 3},
-	{0, 4},
-};
-static state states_58[5] = {
+static state states_58[3] = {
 	{1, arcs_58_0},
 	{2, arcs_58_1},
-	{1, arcs_58_2},
-	{2, arcs_58_3},
-	{2, arcs_58_4},
+	{2, arcs_58_2},
 };
 static arc arcs_59_0[1] = {
 	{21, 1},
 };
-static arc arcs_59_1[1] = {
-	{14, 2},
+static arc arcs_59_1[2] = {
+	{22, 2},
+	{0, 1},
 };
 static arc arcs_59_2[1] = {
 	{21, 3},
@@ -1290,328 +1292,423 @@
 	{0, 3},
 };
 static arc arcs_59_4[2] = {
-	{21, 1},
+	{21, 3},
 	{0, 4},
 };
 static state states_59[5] = {
 	{1, arcs_59_0},
-	{1, arcs_59_1},
+	{2, arcs_59_1},
 	{1, arcs_59_2},
 	{2, arcs_59_3},
 	{2, arcs_59_4},
 };
 static arc arcs_60_0[1] = {
-	{144, 1},
+	{21, 1},
 };
 static arc arcs_60_1[1] = {
+	{14, 2},
+};
+static arc arcs_60_2[1] = {
+	{21, 3},
+};
+static arc arcs_60_3[2] = {
+	{22, 4},
+	{0, 3},
+};
+static arc arcs_60_4[2] = {
+	{21, 1},
+	{0, 4},
+};
+static state states_60[5] = {
+	{1, arcs_60_0},
+	{1, arcs_60_1},
+	{1, arcs_60_2},
+	{2, arcs_60_3},
+	{2, arcs_60_4},
+};
+static arc arcs_61_0[1] = {
+	{146, 1},
+};
+static arc arcs_61_1[1] = {
 	{12, 2},
 };
-static arc arcs_60_2[2] = {
+static arc arcs_61_2[2] = {
 	{16, 3},
 	{14, 4},
 };
-static arc arcs_60_3[1] = {
+static arc arcs_61_3[1] = {
 	{9, 5},
 };
-static arc arcs_60_4[1] = {
+static arc arcs_61_4[1] = {
 	{15, 6},
 };
-static arc arcs_60_5[1] = {
+static arc arcs_61_5[1] = {
 	{18, 7},
 };
-static arc arcs_60_6[1] = {
-	{0, 6},
-};
-static arc arcs_60_7[1] = {
-	{14, 4},
-};
-static state states_60[8] = {
-	{1, arcs_60_0},
-	{1, arcs_60_1},
-	{2, arcs_60_2},
-	{1, arcs_60_3},
-	{1, arcs_60_4},
-	{1, arcs_60_5},
-	{1, arcs_60_6},
-	{1, arcs_60_7},
-};
-static arc arcs_61_0[3] = {
-	{145, 1},
-	{23, 2},
-	{24, 3},
-};
-static arc arcs_61_1[2] = {
-	{22, 4},
-	{0, 1},
-};
-static arc arcs_61_2[1] = {
-	{21, 5},
-};
-static arc arcs_61_3[1] = {
-	{21, 6},
-};
-static arc arcs_61_4[4] = {
-	{145, 1},
-	{23, 2},
-	{24, 3},
-	{0, 4},
-};
-static arc arcs_61_5[2] = {
-	{22, 7},
-	{0, 5},
-};
 static arc arcs_61_6[1] = {
 	{0, 6},
 };
 static arc arcs_61_7[1] = {
-	{24, 3},
+	{14, 4},
 };
 static state states_61[8] = {
-	{3, arcs_61_0},
-	{2, arcs_61_1},
-	{1, arcs_61_2},
+	{1, arcs_61_0},
+	{1, arcs_61_1},
+	{2, arcs_61_2},
 	{1, arcs_61_3},
-	{4, arcs_61_4},
-	{2, arcs_61_5},
+	{1, arcs_61_4},
+	{1, arcs_61_5},
 	{1, arcs_61_6},
 	{1, arcs_61_7},
 };
-static arc arcs_62_0[1] = {
-	{21, 1},
+static arc arcs_62_0[3] = {
+	{147, 1},
+	{23, 2},
+	{24, 3},
 };
 static arc arcs_62_1[2] = {
-	{20, 2},
+	{22, 4},
 	{0, 1},
 };
 static arc arcs_62_2[1] = {
-	{21, 3},
+	{21, 5},
 };
 static arc arcs_62_3[1] = {
-	{0, 3},
+	{21, 6},
 };
-static state states_62[4] = {
-	{1, arcs_62_0},
+static arc arcs_62_4[4] = {
+	{147, 1},
+	{23, 2},
+	{24, 3},
+	{0, 4},
+};
+static arc arcs_62_5[2] = {
+	{22, 7},
+	{0, 5},
+};
+static arc arcs_62_6[1] = {
+	{0, 6},
+};
+static arc arcs_62_7[1] = {
+	{24, 3},
+};
+static state states_62[8] = {
+	{3, arcs_62_0},
 	{2, arcs_62_1},
 	{1, arcs_62_2},
 	{1, arcs_62_3},
+	{4, arcs_62_4},
+	{2, arcs_62_5},
+	{1, arcs_62_6},
+	{1, arcs_62_7},
 };
-static arc arcs_63_0[2] = {
-	{137, 1},
-	{147, 1},
-};
-static arc arcs_63_1[1] = {
-	{0, 1},
-};
-static state states_63[2] = {
-	{2, arcs_63_0},
-	{1, arcs_63_1},
-};
-static arc arcs_64_0[1] = {
-	{85, 1},
-};
-static arc arcs_64_1[1] = {
-	{53, 2},
-};
-static arc arcs_64_2[1] = {
-	{74, 3},
-};
-static arc arcs_64_3[1] = {
-	{143, 4},
-};
-static arc arcs_64_4[2] = {
-	{146, 5},
-	{0, 4},
-};
-static arc arcs_64_5[1] = {
-	{0, 5},
-};
-static state states_64[6] = {
-	{1, arcs_64_0},
-	{1, arcs_64_1},
-	{1, arcs_64_2},
-	{1, arcs_64_3},
-	{2, arcs_64_4},
-	{1, arcs_64_5},
-};
-static arc arcs_65_0[1] = {
-	{81, 1},
-};
-static arc arcs_65_1[1] = {
-	{21, 2},
-};
-static arc arcs_65_2[2] = {
-	{146, 3},
-	{0, 2},
-};
-static arc arcs_65_3[1] = {
-	{0, 3},
-};
-static state states_65[4] = {
-	{1, arcs_65_0},
-	{1, arcs_65_1},
-	{2, arcs_65_2},
-	{1, arcs_65_3},
-};
-static arc arcs_66_0[1] = {
+static arc arcs_63_0[1] = {
 	{21, 1},
 };
-static arc arcs_66_1[2] = {
-	{22, 0},
+static arc arcs_63_1[3] = {
+	{20, 2},
+	{139, 3},
 	{0, 1},
 };
-static state states_66[2] = {
-	{1, arcs_66_0},
-	{2, arcs_66_1},
+static arc arcs_63_2[1] = {
+	{21, 4},
 };
-static arc arcs_67_0[1] = {
-	{12, 1},
+static arc arcs_63_3[1] = {
+	{0, 3},
+};
+static arc arcs_63_4[2] = {
+	{139, 3},
+	{0, 4},
+};
+static state states_63[5] = {
+	{1, arcs_63_0},
+	{3, arcs_63_1},
+	{1, arcs_63_2},
+	{1, arcs_63_3},
+	{2, arcs_63_4},
+};
+static arc arcs_64_0[2] = {
+	{138, 1},
+	{149, 1},
+};
+static arc arcs_64_1[1] = {
+	{0, 1},
+};
+static state states_64[2] = {
+	{2, arcs_64_0},
+	{1, arcs_64_1},
+};
+static arc arcs_65_0[1] = {
+	{85, 1},
+};
+static arc arcs_65_1[1] = {
+	{53, 2},
+};
+static arc arcs_65_2[1] = {
+	{74, 3},
+};
+static arc arcs_65_3[1] = {
+	{145, 4},
+};
+static arc arcs_65_4[2] = {
+	{148, 5},
+	{0, 4},
+};
+static arc arcs_65_5[1] = {
+	{0, 5},
+};
+static state states_65[6] = {
+	{1, arcs_65_0},
+	{1, arcs_65_1},
+	{1, arcs_65_2},
+	{1, arcs_65_3},
+	{2, arcs_65_4},
+	{1, arcs_65_5},
+};
+static arc arcs_66_0[1] = {
+	{81, 1},
+};
+static arc arcs_66_1[1] = {
+	{21, 2},
+};
+static arc arcs_66_2[2] = {
+	{148, 3},
+	{0, 2},
+};
+static arc arcs_66_3[1] = {
+	{0, 3},
+};
+static state states_66[4] = {
+	{1, arcs_66_0},
+	{1, arcs_66_1},
+	{2, arcs_66_2},
+	{1, arcs_66_3},
+};
+static arc arcs_67_0[2] = {
+	{139, 1},
+	{151, 1},
 };
 static arc arcs_67_1[1] = {
 	{0, 1},
 };
 static state states_67[2] = {
-	{1, arcs_67_0},
+	{2, arcs_67_0},
 	{1, arcs_67_1},
 };
-static dfa dfas[68] = {
-	{256, "single_input", 0, 3, states_0,
-	 "\004\030\001\000\000\000\124\360\213\011\162\000\002\000\140\210\244\005\001"},
-	{257, "file_input", 0, 2, states_1,
-	 "\204\030\001\000\000\000\124\360\213\011\162\000\002\000\140\210\244\005\001"},
-	{258, "eval_input", 0, 3, states_2,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{259, "funcdef", 0, 6, states_3,
-	 "\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{260, "parameters", 0, 4, states_4,
-	 "\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{261, "varargslist", 0, 10, states_5,
-	 "\000\020\201\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{262, "fpdef", 0, 4, states_6,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{263, "fplist", 0, 3, states_7,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{264, "stmt", 0, 2, states_8,
-	 "\000\030\001\000\000\000\124\360\213\011\162\000\002\000\140\210\244\005\001"},
-	{265, "simple_stmt", 0, 4, states_9,
-	 "\000\020\001\000\000\000\124\360\213\011\000\000\002\000\140\210\244\005\000"},
-	{266, "small_stmt", 0, 2, states_10,
-	 "\000\020\001\000\000\000\124\360\213\011\000\000\002\000\140\210\244\005\000"},
-	{267, "expr_stmt", 0, 6, states_11,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{268, "augassign", 0, 2, states_12,
-	 "\000\000\000\000\300\377\003\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{269, "print_stmt", 0, 9, states_13,
-	 "\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{270, "del_stmt", 0, 3, states_14,
-	 "\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{271, "pass_stmt", 0, 2, states_15,
-	 "\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{272, "flow_stmt", 0, 2, states_16,
-	 "\000\000\000\000\000\000\000\360\001\000\000\000\000\000\000\000\000\000\000"},
-	{273, "break_stmt", 0, 2, states_17,
-	 "\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000"},
-	{274, "continue_stmt", 0, 2, states_18,
-	 "\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000"},
-	{275, "return_stmt", 0, 3, states_19,
-	 "\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000"},
-	{276, "yield_stmt", 0, 3, states_20,
-	 "\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000"},
-	{277, "raise_stmt", 0, 7, states_21,
-	 "\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000"},
-	{278, "import_stmt", 0, 9, states_22,
-	 "\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000"},
-	{279, "import_as_name", 0, 4, states_23,
-	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{280, "dotted_as_name", 0, 4, states_24,
-	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{281, "dotted_name", 0, 2, states_25,
-	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{282, "global_stmt", 0, 3, states_26,
-	 "\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000"},
-	{283, "exec_stmt", 0, 7, states_27,
-	 "\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000"},
-	{284, "assert_stmt", 0, 5, states_28,
-	 "\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000"},
-	{285, "compound_stmt", 0, 2, states_29,
-	 "\000\010\000\000\000\000\000\000\000\000\162\000\000\000\000\000\000\000\001"},
-	{286, "if_stmt", 0, 8, states_30,
-	 "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
-	{287, "while_stmt", 0, 8, states_31,
-	 "\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000"},
-	{288, "for_stmt", 0, 10, states_32,
-	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
-	{289, "try_stmt", 0, 10, states_33,
-	 "\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000"},
-	{290, "except_clause", 0, 5, states_34,
-	 "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000"},
-	{291, "suite", 0, 5, states_35,
-	 "\004\020\001\000\000\000\124\360\213\011\000\000\002\000\140\210\244\005\000"},
-	{292, "test", 0, 4, states_36,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{293, "and_test", 0, 2, states_37,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\001\000"},
-	{294, "not_test", 0, 3, states_38,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\001\000"},
-	{295, "comparison", 0, 2, states_39,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{296, "comp_op", 0, 4, states_40,
-	 "\000\000\000\000\000\000\000\000\000\004\000\000\362\017\000\000\000\000\000"},
-	{297, "expr", 0, 2, states_41,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{298, "xor_expr", 0, 2, states_42,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{299, "and_expr", 0, 2, states_43,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{300, "shift_expr", 0, 2, states_44,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{301, "arith_expr", 0, 2, states_45,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{302, "term", 0, 2, states_46,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{303, "factor", 0, 3, states_47,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{304, "power", 0, 4, states_48,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\200\244\001\000"},
-	{305, "atom", 0, 11, states_49,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\200\244\001\000"},
-	{306, "listmaker", 0, 5, states_50,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{307, "lambdef", 0, 5, states_51,
-	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000"},
-	{308, "trailer", 0, 7, states_52,
-	 "\000\000\001\000\000\000\000\000\100\000\000\000\000\000\000\200\000\000\000"},
-	{309, "subscriptlist", 0, 3, states_53,
-	 "\000\120\001\000\000\000\000\000\100\000\000\000\002\000\140\210\244\005\000"},
-	{310, "subscript", 0, 7, states_54,
-	 "\000\120\001\000\000\000\000\000\100\000\000\000\002\000\140\210\244\005\000"},
-	{311, "sliceop", 0, 3, states_55,
-	 "\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
-	{312, "exprlist", 0, 3, states_56,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\244\001\000"},
-	{313, "testlist", 0, 3, states_57,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{314, "testlist_safe", 0, 5, states_58,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{315, "dictmaker", 0, 5, states_59,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{316, "classdef", 0, 8, states_60,
-	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001"},
-	{317, "arglist", 0, 8, states_61,
-	 "\000\020\201\001\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{318, "argument", 0, 4, states_62,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{319, "list_iter", 0, 2, states_63,
-	 "\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000"},
-	{320, "list_for", 0, 6, states_64,
-	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
-	{321, "list_if", 0, 4, states_65,
-	 "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
-	{322, "testlist1", 0, 2, states_66,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\244\005\000"},
-	{323, "encoding_decl", 0, 2, states_67,
-	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+static arc arcs_68_0[1] = {
+	{85, 1},
 };
-static label labels[149] = {
+static arc arcs_68_1[1] = {
+	{53, 2},
+};
+static arc arcs_68_2[1] = {
+	{74, 3},
+};
+static arc arcs_68_3[1] = {
+	{21, 4},
+};
+static arc arcs_68_4[2] = {
+	{150, 5},
+	{0, 4},
+};
+static arc arcs_68_5[1] = {
+	{0, 5},
+};
+static state states_68[6] = {
+	{1, arcs_68_0},
+	{1, arcs_68_1},
+	{1, arcs_68_2},
+	{1, arcs_68_3},
+	{2, arcs_68_4},
+	{1, arcs_68_5},
+};
+static arc arcs_69_0[1] = {
+	{81, 1},
+};
+static arc arcs_69_1[1] = {
+	{21, 2},
+};
+static arc arcs_69_2[2] = {
+	{150, 3},
+	{0, 2},
+};
+static arc arcs_69_3[1] = {
+	{0, 3},
+};
+static state states_69[4] = {
+	{1, arcs_69_0},
+	{1, arcs_69_1},
+	{2, arcs_69_2},
+	{1, arcs_69_3},
+};
+static arc arcs_70_0[1] = {
+	{21, 1},
+};
+static arc arcs_70_1[2] = {
+	{22, 0},
+	{0, 1},
+};
+static state states_70[2] = {
+	{1, arcs_70_0},
+	{2, arcs_70_1},
+};
+static arc arcs_71_0[1] = {
+	{12, 1},
+};
+static arc arcs_71_1[1] = {
+	{0, 1},
+};
+static state states_71[2] = {
+	{1, arcs_71_0},
+	{1, arcs_71_1},
+};
+static dfa dfas[72] = {
+	{256, "single_input", 0, 3, states_0,
+	 "\004\030\001\000\000\000\124\360\213\011\162\000\002\000\140\010\111\023\004\000"},
+	{257, "file_input", 0, 2, states_1,
+	 "\204\030\001\000\000\000\124\360\213\011\162\000\002\000\140\010\111\023\004\000"},
+	{258, "eval_input", 0, 3, states_2,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{259, "funcdef", 0, 6, states_3,
+	 "\000\010\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{260, "parameters", 0, 4, states_4,
+	 "\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{261, "varargslist", 0, 10, states_5,
+	 "\000\020\201\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{262, "fpdef", 0, 4, states_6,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{263, "fplist", 0, 3, states_7,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{264, "stmt", 0, 2, states_8,
+	 "\000\030\001\000\000\000\124\360\213\011\162\000\002\000\140\010\111\023\004\000"},
+	{265, "simple_stmt", 0, 4, states_9,
+	 "\000\020\001\000\000\000\124\360\213\011\000\000\002\000\140\010\111\023\000\000"},
+	{266, "small_stmt", 0, 2, states_10,
+	 "\000\020\001\000\000\000\124\360\213\011\000\000\002\000\140\010\111\023\000\000"},
+	{267, "expr_stmt", 0, 6, states_11,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{268, "augassign", 0, 2, states_12,
+	 "\000\000\000\000\300\377\003\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{269, "print_stmt", 0, 9, states_13,
+	 "\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{270, "del_stmt", 0, 3, states_14,
+	 "\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{271, "pass_stmt", 0, 2, states_15,
+	 "\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{272, "flow_stmt", 0, 2, states_16,
+	 "\000\000\000\000\000\000\000\360\001\000\000\000\000\000\000\000\000\000\000\000"},
+	{273, "break_stmt", 0, 2, states_17,
+	 "\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{274, "continue_stmt", 0, 2, states_18,
+	 "\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{275, "return_stmt", 0, 3, states_19,
+	 "\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{276, "yield_stmt", 0, 3, states_20,
+	 "\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{277, "raise_stmt", 0, 7, states_21,
+	 "\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000"},
+	{278, "import_stmt", 0, 9, states_22,
+	 "\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000"},
+	{279, "import_as_name", 0, 4, states_23,
+	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{280, "dotted_as_name", 0, 4, states_24,
+	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{281, "dotted_name", 0, 2, states_25,
+	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{282, "global_stmt", 0, 3, states_26,
+	 "\000\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000"},
+	{283, "exec_stmt", 0, 7, states_27,
+	 "\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000"},
+	{284, "assert_stmt", 0, 5, states_28,
+	 "\000\000\000\000\000\000\000\000\000\010\000\000\000\000\000\000\000\000\000\000"},
+	{285, "compound_stmt", 0, 2, states_29,
+	 "\000\010\000\000\000\000\000\000\000\000\162\000\000\000\000\000\000\000\004\000"},
+	{286, "if_stmt", 0, 8, states_30,
+	 "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000"},
+	{287, "while_stmt", 0, 8, states_31,
+	 "\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000\000\000"},
+	{288, "for_stmt", 0, 10, states_32,
+	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
+	{289, "try_stmt", 0, 10, states_33,
+	 "\000\000\000\000\000\000\000\000\000\000\100\000\000\000\000\000\000\000\000\000"},
+	{290, "except_clause", 0, 5, states_34,
+	 "\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
+	{291, "suite", 0, 5, states_35,
+	 "\004\020\001\000\000\000\124\360\213\011\000\000\002\000\140\010\111\023\000\000"},
+	{292, "test", 0, 4, states_36,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{293, "and_test", 0, 2, states_37,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\003\000\000"},
+	{294, "not_test", 0, 3, states_38,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\003\000\000"},
+	{295, "comparison", 0, 2, states_39,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{296, "comp_op", 0, 4, states_40,
+	 "\000\000\000\000\000\000\000\000\000\004\000\000\362\017\000\000\000\000\000\000"},
+	{297, "expr", 0, 2, states_41,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{298, "xor_expr", 0, 2, states_42,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{299, "and_expr", 0, 2, states_43,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{300, "shift_expr", 0, 2, states_44,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{301, "arith_expr", 0, 2, states_45,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{302, "term", 0, 2, states_46,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{303, "factor", 0, 3, states_47,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{304, "power", 0, 4, states_48,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000\111\003\000\000"},
+	{305, "atom", 0, 11, states_49,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\000\111\003\000\000"},
+	{306, "listmaker", 0, 5, states_50,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{307, "testlist_gexp", 0, 5, states_51,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{308, "lambdef", 0, 5, states_52,
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\000\000"},
+	{309, "trailer", 0, 7, states_53,
+	 "\000\000\001\000\000\000\000\000\100\000\000\000\000\000\000\000\001\000\000\000"},
+	{310, "subscriptlist", 0, 3, states_54,
+	 "\000\120\001\000\000\000\000\000\100\000\000\000\002\000\140\010\111\023\000\000"},
+	{311, "subscript", 0, 7, states_55,
+	 "\000\120\001\000\000\000\000\000\100\000\000\000\002\000\140\010\111\023\000\000"},
+	{312, "sliceop", 0, 3, states_56,
+	 "\000\100\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+	{313, "exprlist", 0, 3, states_57,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\010\111\003\000\000"},
+	{314, "testlist", 0, 3, states_58,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{315, "testlist_safe", 0, 5, states_59,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{316, "dictmaker", 0, 5, states_60,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{317, "classdef", 0, 8, states_61,
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000"},
+	{318, "arglist", 0, 8, states_62,
+	 "\000\020\201\001\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{319, "argument", 0, 5, states_63,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{320, "list_iter", 0, 2, states_64,
+	 "\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000\000"},
+	{321, "list_for", 0, 6, states_65,
+	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
+	{322, "list_if", 0, 4, states_66,
+	 "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000"},
+	{323, "gen_iter", 0, 2, states_67,
+	 "\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000\000"},
+	{324, "gen_for", 0, 6, states_68,
+	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000\000"},
+	{325, "gen_if", 0, 4, states_69,
+	 "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000"},
+	{326, "testlist1", 0, 2, states_70,
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\010\111\023\000\000"},
+	{327, "encoding_decl", 0, 2, states_71,
+	 "\000\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"},
+};
+static label labels[153] = {
 	{0, "EMPTY"},
 	{256, 0},
 	{4, 0},
@@ -1621,7 +1718,7 @@
 	{264, 0},
 	{0, 0},
 	{258, 0},
-	{313, 0},
+	{314, 0},
 	{259, 0},
 	{1, "def"},
 	{1, 0},
@@ -1665,7 +1762,7 @@
 	{1, "print"},
 	{35, 0},
 	{1, "del"},
-	{312, 0},
+	{313, 0},
 	{1, "pass"},
 	{273, 0},
 	{274, 0},
@@ -1692,7 +1789,7 @@
 	{287, 0},
 	{288, 0},
 	{289, 0},
-	{316, 0},
+	{317, 0},
 	{1, "if"},
 	{1, "elif"},
 	{1, "else"},
@@ -1706,7 +1803,7 @@
 	{6, 0},
 	{293, 0},
 	{1, "or"},
-	{307, 0},
+	{308, 0},
 	{294, 0},
 	{1, "and"},
 	{1, "not"},
@@ -1738,33 +1835,37 @@
 	{32, 0},
 	{304, 0},
 	{305, 0},
-	{308, 0},
+	{309, 0},
+	{307, 0},
 	{9, 0},
 	{306, 0},
 	{10, 0},
 	{26, 0},
-	{315, 0},
+	{316, 0},
 	{27, 0},
 	{25, 0},
-	{322, 0},
+	{326, 0},
 	{2, 0},
 	{3, 0},
-	{320, 0},
+	{321, 0},
+	{324, 0},
 	{1, "lambda"},
-	{317, 0},
-	{309, 0},
+	{318, 0},
 	{310, 0},
 	{311, 0},
-	{314, 0},
+	{312, 0},
+	{315, 0},
 	{1, "class"},
-	{318, 0},
 	{319, 0},
-	{321, 0},
+	{320, 0},
+	{322, 0},
 	{323, 0},
+	{325, 0},
+	{327, 0},
 };
 grammar _PyParser_Grammar = {
-	68,
+	72,
 	dfas,
-	{149, labels},
+	{153, labels},
 	256
 };
diff --git a/Python/symtable.c b/Python/symtable.c
index f86fd2f..5ca2041 100644
--- a/Python/symtable.c
+++ b/Python/symtable.c
@@ -66,6 +66,8 @@
 	switch (type) {
 	case funcdef:
 	case lambdef:
+	case testlist_gexp: /* generator expression */
+	case argument:      /* generator expression */
 		ste->ste_type = TYPE_FUNCTION;
 		break;
 	case classdef:
