diff --git a/Grammar/Grammar b/Grammar/Grammar
index c791892..d85863e 100644
--- a/Grammar/Grammar
+++ b/Grammar/Grammar
@@ -38,7 +38,7 @@
 simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE
 small_stmt: expr_stmt | print_stmt  | del_stmt | pass_stmt | flow_stmt | import_stmt | global_stmt | exec_stmt | assert_stmt
 expr_stmt: testlist (augassign testlist | ('=' testlist)*)
-augassign: '+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '|=' | '^=' | '<<=' | '>>=' | '**='
+augassign: '+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '|=' | '^=' | '<<=' | '>>=' | '**=' | '//='
 # For normal assignments, additional restrictions enforced by the interpreter
 print_stmt: 'print' ( [ test (',' test)* [','] ] | '>>' test [ (',' test)+ [','] ] )
 del_stmt: 'del' exprlist
@@ -77,7 +77,7 @@
 and_expr: shift_expr ('&' shift_expr)*
 shift_expr: arith_expr (('<<'|'>>') arith_expr)*
 arith_expr: term (('+'|'-') term)*
-term: factor (('*'|'/'|'%') factor)*
+term: factor (('*'|'/'|'%'|'//') factor)*
 factor: ('+'|'-'|'~') factor | power
 power: atom trailer* ('**' factor)*
 atom: '(' [testlist] ')' | '[' [listmaker] ']' | '{' [dictmaker] '}' | '`' testlist '`' | NAME | NUMBER | STRING+
diff --git a/Include/abstract.h b/Include/abstract.h
index 799438e..f4c1b3e 100644
--- a/Include/abstract.h
+++ b/Include/abstract.h
@@ -547,6 +547,26 @@
 
        */
 
+     DL_IMPORT(PyObject *) PyNumber_FloorDivide(PyObject *o1, PyObject *o2);
+
+       /*
+	 Returns the result of dividing o1 by o2 giving an integral result,
+	 or null on failure.
+	 This is the equivalent of the Python expression: o1//o2.
+
+
+       */
+
+     DL_IMPORT(PyObject *) PyNumber_TrueDivide(PyObject *o1, PyObject *o2);
+
+       /*
+	 Returns the result of dividing o1 by o2 giving a float result,
+	 or null on failure.
+	 This is the equivalent of the Python expression: o1/o2.
+
+
+       */
+
      DL_IMPORT(PyObject *) PyNumber_Remainder(PyObject *o1, PyObject *o2);
 
        /*
@@ -742,6 +762,28 @@
 
        */
 
+     DL_IMPORT(PyObject *) PyNumber_InPlaceFloorDivide(PyObject *o1,
+						       PyObject *o2);
+
+       /*
+	 Returns the result of dividing o1 by o2 giving an integral result,
+	 possibly in-place, or null on failure.
+	 This is the equivalent of the Python expression:
+	 o1 /= o2.
+
+       */
+
+     DL_IMPORT(PyObject *) PyNumber_InPlaceTrueDivide(PyObject *o1,
+						      PyObject *o2);
+
+       /*
+	 Returns the result of dividing o1 by o2 giving a float result,
+	 possibly in-place, or null on failure.
+	 This is the equivalent of the Python expression:
+	 o1 /= o2.
+
+       */
+
      DL_IMPORT(PyObject *) PyNumber_InPlaceRemainder(PyObject *o1, PyObject *o2);
 
        /*
diff --git a/Include/compile.h b/Include/compile.h
index 89c5ba4..e5840af 100644
--- a/Include/compile.h
+++ b/Include/compile.h
@@ -41,6 +41,8 @@
    effect, this passes on the "from __future__ import generators" state
    in effect when the code block was compiled. */
 #define CO_GENERATOR_ALLOWED    0x1000
+/* XXX Ditto for future division */
+#define CO_FUTURE_DIVISION    	0x2000
 
 extern DL_IMPORT(PyTypeObject) PyCode_Type;
 
@@ -64,6 +66,7 @@
     int ff_last_lineno;
     int ff_nested_scopes;
     int ff_generators;
+    int ff_division;
 } PyFutureFeatures;
 
 DL_IMPORT(PyFutureFeatures *) PyNode_Future(struct _node *, char *);
@@ -76,6 +79,9 @@
 #define GENERATORS_DEFAULT 0
 #define FUTURE_GENERATORS "generators"
 
+#define DIVISION_DEFAULT 0
+#define FUTURE_DIVISION "division"
+
 /* for internal use only */
 #define _PyCode_GETCODEPTR(co, pp) \
 	((*(co)->co_code->ob_type->tp_as_buffer->bf_getreadbuffer) \
diff --git a/Include/object.h b/Include/object.h
index 9f679b0..f6c6ac6 100644
--- a/Include/object.h
+++ b/Include/object.h
@@ -161,6 +161,12 @@
 	binaryfunc nb_inplace_and;
 	binaryfunc nb_inplace_xor;
 	binaryfunc nb_inplace_or;
+
+	/* The following require the Py_TPFLAGS_HAVE_CLASS flag */
+	binaryfunc nb_floor_divide;
+	binaryfunc nb_true_divide;
+	binaryfunc nb_inplace_floor_divide;
+	binaryfunc nb_inplace_true_divide;
 } PyNumberMethods;
 
 typedef struct {
@@ -396,7 +402,7 @@
 /* tp_iter is defined */
 #define Py_TPFLAGS_HAVE_ITER (1L<<7)
 
-/* Experimental stuff for healing the type/class split */
+/* New members introduced by Python 2.2 exist */
 #define Py_TPFLAGS_HAVE_CLASS (1L<<8)
 
 /* Set if the type object is dynamically allocated */
diff --git a/Include/opcode.h b/Include/opcode.h
index c1e8362..9508499 100644
--- a/Include/opcode.h
+++ b/Include/opcode.h
@@ -29,6 +29,10 @@
 #define BINARY_ADD	23
 #define BINARY_SUBTRACT	24
 #define BINARY_SUBSCR	25
+#define BINARY_FLOOR_DIVIDE 26
+#define BINARY_TRUE_DIVIDE 27
+#define INPLACE_FLOOR_DIVIDE 28
+#define INPLACE_TRUE_DIVIDE 29
 
 #define SLICE		30
 /* Also uses 31-33 */
diff --git a/Include/pythonrun.h b/Include/pythonrun.h
index 7d947df..55e1ddd 100644
--- a/Include/pythonrun.h
+++ b/Include/pythonrun.h
@@ -12,6 +12,7 @@
    accordingly then. */
 #define PyCF_NESTED_SCOPES	(0x00000001UL)
 #define PyCF_GENERATORS		(0x00000002UL)
+#define PyCF_DIVISION		(0x00000004UL)
 typedef struct {
 	unsigned long cf_flags;  /* bitmask of PyCF_xxx flags */
 } PyCompilerFlags;
diff --git a/Include/token.h b/Include/token.h
index 77e3de7..3f58106 100644
--- a/Include/token.h
+++ b/Include/token.h
@@ -55,10 +55,12 @@
 #define LEFTSHIFTEQUAL	45
 #define RIGHTSHIFTEQUAL	46
 #define DOUBLESTAREQUAL	47
+#define DOUBLESLASH	48
+#define DOUBLESLASHEQUAL 49
 /* Don't forget to update the table _PyParser_TokenNames in tokenizer.c! */
-#define OP		48
-#define ERRORTOKEN	49
-#define N_TOKENS	50
+#define OP		50
+#define ERRORTOKEN	51
+#define N_TOKENS	52
 
 /* Special definitions for cooperation with parser */
 
diff --git a/Lib/__future__.py b/Lib/__future__.py
index 65416ae..4cba7ed 100644
--- a/Lib/__future__.py
+++ b/Lib/__future__.py
@@ -68,3 +68,4 @@
 
 nested_scopes = _Feature((2, 1, 0, "beta", 1), (2, 2, 0, "alpha", 0))
 generators = _Feature((2, 2, 0, "alpha", 1), (2, 3, 0, "final", 0))
+division = _Feature((2, 2, 0, "alpha", 2), (3, 0, 0, "alpha", 0))
diff --git a/Objects/abstract.c b/Objects/abstract.c
index a0f075f..b646c36 100644
--- a/Objects/abstract.c
+++ b/Objects/abstract.c
@@ -565,6 +565,20 @@
 }
 
 PyObject *
+PyNumber_FloorDivide(PyObject *v, PyObject *w)
+{
+	/* XXX tp_flags test */
+	return binary_op(v, w, NB_SLOT(nb_floor_divide), "//");
+}
+
+PyObject *
+PyNumber_TrueDivide(PyObject *v, PyObject *w)
+{
+	/* XXX tp_flags test */
+	return binary_op(v, w, NB_SLOT(nb_true_divide), "/");
+}
+
+PyObject *
 PyNumber_Remainder(PyObject *v, PyObject *w)
 {
 	if (PyString_Check(v))
@@ -631,6 +645,22 @@
 INPLACE_BINOP(PyNumber_InPlaceDivide, nb_inplace_divide, nb_divide, "/=")
 
 PyObject *
+PyNumber_InPlaceFloorDivide(PyObject *v, PyObject *w)
+{
+	/* XXX tp_flags test */
+	return binary_iop(v, w, NB_SLOT(nb_inplace_floor_divide),
+			  NB_SLOT(nb_floor_divide), "//=");
+}
+
+PyObject *
+PyNumber_InPlaceTrueDivide(PyObject *v, PyObject *w)
+{
+	/* XXX tp_flags test */
+	return binary_iop(v, w, NB_SLOT(nb_inplace_true_divide),
+			  NB_SLOT(nb_true_divide), "/=");
+}
+
+PyObject *
 PyNumber_InPlaceAdd(PyObject *v, PyObject *w)
 {
 	binaryfunc f = NULL;
diff --git a/Objects/classobject.c b/Objects/classobject.c
index 4bad2fd..9c01538 100644
--- a/Objects/classobject.c
+++ b/Objects/classobject.c
@@ -1435,6 +1435,8 @@
 BINARY(instance_div, "div", PyNumber_Divide)
 BINARY(instance_mod, "mod", PyNumber_Remainder)
 BINARY(instance_divmod, "divmod", PyNumber_Divmod)
+BINARY(instance_floordiv, "floordiv", PyNumber_FloorDivide)
+BINARY(instance_truediv, "truediv", PyNumber_TrueDivide)
 
 BINARY_INPLACE(instance_ior, "or", PyNumber_InPlaceOr)
 BINARY_INPLACE(instance_ixor, "xor", PyNumber_InPlaceXor)
@@ -1446,6 +1448,8 @@
 BINARY_INPLACE(instance_imul, "mul", PyNumber_InPlaceMultiply)
 BINARY_INPLACE(instance_idiv, "div", PyNumber_InPlaceDivide)
 BINARY_INPLACE(instance_imod, "mod", PyNumber_InPlaceRemainder)
+BINARY_INPLACE(instance_ifloordiv, "floordiv", PyNumber_InPlaceFloorDivide)
+BINARY_INPLACE(instance_itruediv, "truediv", PyNumber_InPlaceTrueDivide)
 
 /* Try a 3-way comparison, returning an int; v is an instance.  Return:
    -2 for an exception;
@@ -1900,6 +1904,10 @@
 	(binaryfunc)instance_iand,		/* nb_inplace_and */
 	(binaryfunc)instance_ixor,		/* nb_inplace_xor */
 	(binaryfunc)instance_ior,		/* nb_inplace_or */
+	(binaryfunc)instance_floordiv,		/* nb_floor_divide */
+	(binaryfunc)instance_truediv,		/* nb_true_divide */
+	(binaryfunc)instance_ifloordiv,		/* nb_inplace_floor_divide */
+	(binaryfunc)instance_itruediv,		/* nb_inplace_true_divide */
 };
 
 PyTypeObject PyInstance_Type = {
diff --git a/Objects/complexobject.c b/Objects/complexobject.c
index 9a66c0c..5cfb3ca 100644
--- a/Objects/complexobject.c
+++ b/Objects/complexobject.c
@@ -442,6 +442,21 @@
 }
 
 static PyObject *
+complex_int_div(PyComplexObject *v, PyComplexObject *w)
+{
+	PyObject *t, *r;
+	
+	t = complex_divmod(v, w);
+	if (t != NULL) {
+		r = PyTuple_GET_ITEM(t, 0);
+		Py_INCREF(r);
+		Py_DECREF(t);
+		return r;
+	}
+	return NULL;
+}
+
+static PyObject *
 complex_neg(PyComplexObject *v)
 {
 	Py_complex neg;
@@ -859,6 +874,21 @@
 	(unaryfunc)complex_float,		/* nb_float */
 	0,					/* nb_oct */
 	0,					/* nb_hex */
+	0,					/* nb_inplace_add */
+	0,					/* nb_inplace_subtract */
+	0,					/* nb_inplace_multiply*/
+	0,					/* nb_inplace_divide */
+	0,					/* nb_inplace_remainder */
+	0, 					/* nb_inplace_power */
+	0,					/* nb_inplace_lshift */
+	0,					/* nb_inplace_rshift */
+	0,					/* nb_inplace_and */
+	0,					/* nb_inplace_xor */
+	0,					/* nb_inplace_or */
+	(binaryfunc)complex_int_div,		/* nb_floor_divide */
+	(binaryfunc)complex_div,		/* nb_true_divide */
+	0,					/* nb_inplace_floor_divide */
+	0,					/* nb_inplace_true_divide */
 };
 
 PyTypeObject PyComplex_Type = {
diff --git a/Objects/floatobject.c b/Objects/floatobject.c
index df88736..34b252b 100644
--- a/Objects/floatobject.c
+++ b/Objects/floatobject.c
@@ -558,6 +558,21 @@
 }
 
 static PyObject *
+float_int_div(PyObject *v, PyObject *w)
+{
+	PyObject *t, *r;
+	
+	t = float_divmod(v, w);
+	if (t != NULL) {
+		r = PyTuple_GET_ITEM(t, 0);
+		Py_INCREF(r);
+		Py_DECREF(t);
+		return r;
+	}
+	return NULL;
+}
+
+static PyObject *
 float_neg(PyFloatObject *v)
 {
 	return PyFloat_FromDouble(-v->ob_fval);
@@ -678,19 +693,23 @@
 	(unaryfunc)float_int, /*nb_int*/
 	(unaryfunc)float_long, /*nb_long*/
 	(unaryfunc)float_float, /*nb_float*/
-	0,		/*nb_oct*/
-	0,		/*nb_hex*/
-	0,		/*nb_inplace_add*/
-	0,		/*nb_inplace_subtract*/
-	0,		/*nb_inplace_multiply*/
-	0,		/*nb_inplace_divide*/
-	0,		/*nb_inplace_remainder*/
-	0, 		/*nb_inplace_power*/
-	0,		/*nb_inplace_lshift*/
-	0,		/*nb_inplace_rshift*/
-	0,		/*nb_inplace_and*/
-	0,		/*nb_inplace_xor*/
-	0,		/*nb_inplace_or*/
+	0,		/* nb_oct */
+	0,		/* nb_hex */
+	0,		/* nb_inplace_add */
+	0,		/* nb_inplace_subtract */
+	0,		/* nb_inplace_multiply */
+	0,		/* nb_inplace_divide */
+	0,		/* nb_inplace_remainder */
+	0, 		/* nb_inplace_power */
+	0,		/* nb_inplace_lshift */
+	0,		/* nb_inplace_rshift */
+	0,		/* nb_inplace_and */
+	0,		/* nb_inplace_xor */
+	0,		/* nb_inplace_or */
+	float_int_div,	/* nb_floor_divide */
+	float_div,	/* nb_true_divide */
+	0,		/* nb_inplace_floor_divide */
+	0,		/* nb_inplace_true_divide */
 };
 
 PyTypeObject PyFloat_Type = {
diff --git a/Objects/intobject.c b/Objects/intobject.c
index e5106c5..f69f81a 100644
--- a/Objects/intobject.c
+++ b/Objects/intobject.c
@@ -703,6 +703,12 @@
 }
 
 static PyObject *
+int_true_divide(PyObject *v, PyObject *w)
+{
+	return PyFloat_Type.tp_as_number->nb_divide(v, w);
+}
+
+static PyObject *
 int_int(PyIntObject *v)
 {
 	Py_INCREF(v);
@@ -812,6 +818,10 @@
 	0,			/*nb_inplace_and*/
 	0,			/*nb_inplace_xor*/
 	0,			/*nb_inplace_or*/
+	(binaryfunc)int_div,	/* nb_floor_divide */
+	int_true_divide,	/* nb_true_divide */
+	0,			/* nb_inplace_floor_divide */
+	0,			/* nb_inplace_true_divide */
 };
 
 PyTypeObject PyInt_Type = {
diff --git a/Objects/longobject.c b/Objects/longobject.c
index 28c3e57..9f7272c 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -1981,6 +1981,12 @@
 	return c;
 }
 
+static PyObject *
+long_true_divide(PyObject *v, PyObject *w)
+{
+	return PyFloat_Type.tp_as_number->nb_divide(v, w);
+}
+
 static int
 long_coerce(PyObject **pv, PyObject **pw)
 {
@@ -2092,17 +2098,21 @@
 	(unaryfunc)	long_float,	/*nb_float*/
 	(unaryfunc)	long_oct,	/*nb_oct*/
 	(unaryfunc)	long_hex,	/*nb_hex*/
-	0,				/*nb_inplace_add*/
-	0,				/*nb_inplace_subtract*/
-	0,				/*nb_inplace_multiply*/
-	0,				/*nb_inplace_divide*/
-	0,				/*nb_inplace_remainder*/
-	0,				/*nb_inplace_power*/
-	0,				/*nb_inplace_lshift*/
-	0,				/*nb_inplace_rshift*/
-	0,				/*nb_inplace_and*/
-	0,				/*nb_inplace_xor*/
-	0,				/*nb_inplace_or*/
+	0,				/* nb_inplace_add */
+	0,				/* nb_inplace_subtract */
+	0,				/* nb_inplace_multiply */
+	0,				/* nb_inplace_divide */
+	0,				/* nb_inplace_remainder */
+	0,				/* nb_inplace_power */
+	0,				/* nb_inplace_lshift */
+	0,				/* nb_inplace_rshift */
+	0,				/* nb_inplace_and */
+	0,				/* nb_inplace_xor */
+	0,				/* nb_inplace_or */
+	(binaryfunc)long_div,		/* nb_floor_divide */
+	long_true_divide,		/* nb_true_divide */
+	0,				/* nb_inplace_floor_divide */
+	0,				/* nb_inplace_true_divide */
 };
 
 PyTypeObject PyLong_Type = {
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index b783e80..2397969 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -80,6 +80,8 @@
 	"LEFTSHIFTEQUAL",
 	"RIGHTSHIFTEQUAL",
 	"DOUBLESTAREQUAL",
+	"DOUBLESLASH",
+	"DOUBLESLASHEQUAL",
 	/* This table must match the #defines in token.h! */
 	"OP",
 	"<ERRORTOKEN>",
@@ -408,6 +410,7 @@
 		break;
 	case '/':
 		switch (c2) {
+		case '/':	return DOUBLESLASH;
 		case '=':	return SLASHEQUAL;
 		}
 		break;
@@ -469,6 +472,16 @@
 			break;
 		}
 		break;
+	case '/':
+		switch (c2) {
+		case '/':
+			switch (c3) {
+			case '=':
+				return DOUBLESLASHEQUAL;
+			}
+			break;
+		}
+		break;
 	}
 	return OP;
 }
diff --git a/Python/ceval.c b/Python/ceval.c
index e6da9eb..583d7e3 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -884,6 +884,26 @@
 			if (x != NULL) continue;
 			break;
 
+		case BINARY_FLOOR_DIVIDE:
+			w = POP();
+			v = POP();
+			x = PyNumber_FloorDivide(v, w);
+			Py_DECREF(v);
+			Py_DECREF(w);
+			PUSH(x);
+			if (x != NULL) continue;
+			break;
+
+		case BINARY_TRUE_DIVIDE:
+			w = POP();
+			v = POP();
+			x = PyNumber_TrueDivide(v, w);
+			Py_DECREF(v);
+			Py_DECREF(w);
+			PUSH(x);
+			if (x != NULL) continue;
+			break;
+
 		case BINARY_MODULO:
 			w = POP();
 			v = POP();
@@ -1051,6 +1071,26 @@
 			if (x != NULL) continue;
 			break;
 
+		case INPLACE_FLOOR_DIVIDE:
+			w = POP();
+			v = POP();
+			x = PyNumber_InPlaceFloorDivide(v, w);
+			Py_DECREF(v);
+			Py_DECREF(w);
+			PUSH(x);
+			if (x != NULL) continue;
+			break;
+
+		case INPLACE_TRUE_DIVIDE:
+			w = POP();
+			v = POP();
+			x = PyNumber_InPlaceTrueDivide(v, w);
+			Py_DECREF(v);
+			Py_DECREF(w);
+			PUSH(x);
+			if (x != NULL) continue;
+			break;
+
 		case INPLACE_MODULO:
 			w = POP();
 			v = POP();
diff --git a/Python/compile.c b/Python/compile.c
index 31a75bd..d310e35 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -1874,14 +1874,20 @@
 			op = BINARY_MULTIPLY;
 			break;
 		case SLASH:
-			op = BINARY_DIVIDE;
+			if (c->c_flags & CO_FUTURE_DIVISION)
+				op = BINARY_TRUE_DIVIDE;
+			else
+				op = BINARY_DIVIDE;
 			break;
 		case PERCENT:
 			op = BINARY_MODULO;
 			break;
+		case DOUBLESLASH:
+			op = BINARY_FLOOR_DIVIDE;
+			break;
 		default:
 			com_error(c, PyExc_SystemError,
-				  "com_term: operator not *, / or %");
+				  "com_term: operator not *, /, // or %");
 			op = 255;
 		}
 		com_addbyte(c, op);
@@ -2475,7 +2481,14 @@
 	switch (STR(CHILD(CHILD(n, 1), 0))[0]) {
 	case '+': opcode = INPLACE_ADD; break;
 	case '-': opcode = INPLACE_SUBTRACT; break;
-	case '/': opcode = INPLACE_DIVIDE; break;
+	case '/':
+		if (STR(CHILD(CHILD(n, 1), 0))[1] == '/')
+			opcode = INPLACE_FLOOR_DIVIDE;
+		else if (c->c_flags & CO_FUTURE_DIVISION)
+			opcode = INPLACE_TRUE_DIVIDE;
+		else
+			opcode = INPLACE_DIVIDE;
+		break;
 	case '%': opcode = INPLACE_MODULO; break;
 	case '<': opcode = INPLACE_LSHIFT; break;
 	case '>': opcode = INPLACE_RSHIFT; break;
@@ -3945,7 +3958,8 @@
 		if (base->c_nested 
 		    || (sc.c_symtable->st_cur->ste_type == TYPE_FUNCTION))
 			sc.c_nested = 1;
-		sc.c_flags |= base->c_flags & CO_GENERATOR_ALLOWED;
+		sc.c_flags |= base->c_flags & (CO_GENERATOR_ALLOWED |
+					       CO_FUTURE_DIVISION);
 	} else {
 		sc.c_private = NULL;
 		sc.c_future = PyNode_Future(n, filename);
@@ -3963,6 +3977,11 @@
 				sc.c_future->ff_generators = 1;
 			else if (sc.c_future->ff_generators)
 				flags->cf_flags |= PyCF_GENERATORS;
+
+			if (flags->cf_flags & PyCF_DIVISION)
+				sc.c_future->ff_division = 1;
+			else if (sc.c_future->ff_division)
+				flags->cf_flags |= PyCF_DIVISION;
 		}
 		if (symtable_build(&sc, n) < 0) {
 			com_free(&sc);
@@ -4437,6 +4456,8 @@
 			c->c_flags |= CO_NESTED;
 		if (c->c_future->ff_generators)
 			c->c_flags |= CO_GENERATOR_ALLOWED;
+		if (c->c_future->ff_division)
+			c->c_flags |= CO_FUTURE_DIVISION;
 	}
 	if (ste->ste_generator)
 		c->c_flags |= CO_GENERATOR;
diff --git a/Python/future.c b/Python/future.c
index fc0d748..db62b5b 100644
--- a/Python/future.c
+++ b/Python/future.c
@@ -33,6 +33,8 @@
 			ff->ff_nested_scopes = 1;
 		} else if (strcmp(feature, FUTURE_GENERATORS) == 0) {
 			ff->ff_generators = 1;
+		} else if (strcmp(feature, FUTURE_DIVISION) == 0) {
+			ff->ff_division = 1;
 		} else if (strcmp(feature, "braces") == 0) {
 			PyErr_SetString(PyExc_SyntaxError,
 					"not a chance");
@@ -234,6 +236,7 @@
 	ff->ff_last_lineno = -1;
 	ff->ff_nested_scopes = 0;
 	ff->ff_generators = 0;
+	ff->ff_division = 0;
 
 	if (future_parse(ff, n, filename) < 0) {
 		PyMem_Free((void *)ff);
diff --git a/Python/graminit.c b/Python/graminit.c
index a960730..176f62d 100644
--- a/Python/graminit.c
+++ b/Python/graminit.c
@@ -252,7 +252,7 @@
 	{1, arcs_11_4},
 	{2, arcs_11_5},
 };
-static arc arcs_12_0[11] = {
+static arc arcs_12_0[12] = {
 	{38, 1},
 	{39, 1},
 	{40, 1},
@@ -264,20 +264,21 @@
 	{46, 1},
 	{47, 1},
 	{48, 1},
+	{49, 1},
 };
 static arc arcs_12_1[1] = {
 	{0, 1},
 };
 static state states_12[2] = {
-	{11, arcs_12_0},
+	{12, arcs_12_0},
 	{1, arcs_12_1},
 };
 static arc arcs_13_0[1] = {
-	{49, 1},
+	{50, 1},
 };
 static arc arcs_13_1[3] = {
 	{21, 2},
-	{50, 3},
+	{51, 3},
 	{0, 1},
 };
 static arc arcs_13_2[2] = {
@@ -318,10 +319,10 @@
 	{2, arcs_13_8},
 };
 static arc arcs_14_0[1] = {
-	{51, 1},
+	{52, 1},
 };
 static arc arcs_14_1[1] = {
-	{52, 2},
+	{53, 2},
 };
 static arc arcs_14_2[1] = {
 	{0, 2},
@@ -332,7 +333,7 @@
 	{1, arcs_14_2},
 };
 static arc arcs_15_0[1] = {
-	{53, 1},
+	{54, 1},
 };
 static arc arcs_15_1[1] = {
 	{0, 1},
@@ -342,11 +343,11 @@
 	{1, arcs_15_1},
 };
 static arc arcs_16_0[5] = {
-	{54, 1},
 	{55, 1},
 	{56, 1},
 	{57, 1},
 	{58, 1},
+	{59, 1},
 };
 static arc arcs_16_1[1] = {
 	{0, 1},
@@ -356,7 +357,7 @@
 	{1, arcs_16_1},
 };
 static arc arcs_17_0[1] = {
-	{59, 1},
+	{60, 1},
 };
 static arc arcs_17_1[1] = {
 	{0, 1},
@@ -366,7 +367,7 @@
 	{1, arcs_17_1},
 };
 static arc arcs_18_0[1] = {
-	{60, 1},
+	{61, 1},
 };
 static arc arcs_18_1[1] = {
 	{0, 1},
@@ -376,7 +377,7 @@
 	{1, arcs_18_1},
 };
 static arc arcs_19_0[1] = {
-	{61, 1},
+	{62, 1},
 };
 static arc arcs_19_1[2] = {
 	{9, 2},
@@ -391,7 +392,7 @@
 	{1, arcs_19_2},
 };
 static arc arcs_20_0[1] = {
-	{62, 1},
+	{63, 1},
 };
 static arc arcs_20_1[1] = {
 	{9, 2},
@@ -405,7 +406,7 @@
 	{1, arcs_20_2},
 };
 static arc arcs_21_0[1] = {
-	{63, 1},
+	{64, 1},
 };
 static arc arcs_21_1[2] = {
 	{21, 2},
@@ -438,25 +439,25 @@
 	{1, arcs_21_6},
 };
 static arc arcs_22_0[2] = {
-	{64, 1},
-	{66, 2},
+	{65, 1},
+	{67, 2},
 };
 static arc arcs_22_1[1] = {
-	{65, 3},
+	{66, 3},
 };
 static arc arcs_22_2[1] = {
-	{67, 4},
+	{68, 4},
 };
 static arc arcs_22_3[2] = {
 	{22, 1},
 	{0, 3},
 };
 static arc arcs_22_4[1] = {
-	{64, 5},
+	{65, 5},
 };
 static arc arcs_22_5[2] = {
 	{23, 6},
-	{68, 7},
+	{69, 7},
 };
 static arc arcs_22_6[1] = {
 	{0, 6},
@@ -466,7 +467,7 @@
 	{0, 7},
 };
 static arc arcs_22_8[1] = {
-	{68, 7},
+	{69, 7},
 };
 static state states_22[9] = {
 	{2, arcs_22_0},
@@ -499,7 +500,7 @@
 	{1, arcs_23_3},
 };
 static arc arcs_24_0[1] = {
-	{67, 1},
+	{68, 1},
 };
 static arc arcs_24_1[2] = {
 	{12, 2},
@@ -521,7 +522,7 @@
 	{12, 1},
 };
 static arc arcs_25_1[2] = {
-	{69, 0},
+	{70, 0},
 	{0, 1},
 };
 static state states_25[2] = {
@@ -529,7 +530,7 @@
 	{2, arcs_25_1},
 };
 static arc arcs_26_0[1] = {
-	{70, 1},
+	{71, 1},
 };
 static arc arcs_26_1[1] = {
 	{12, 2},
@@ -544,13 +545,13 @@
 	{2, arcs_26_2},
 };
 static arc arcs_27_0[1] = {
-	{71, 1},
+	{72, 1},
 };
 static arc arcs_27_1[1] = {
-	{72, 2},
+	{73, 2},
 };
 static arc arcs_27_2[2] = {
-	{73, 3},
+	{74, 3},
 	{0, 2},
 };
 static arc arcs_27_3[1] = {
@@ -576,7 +577,7 @@
 	{1, arcs_27_6},
 };
 static arc arcs_28_0[1] = {
-	{74, 1},
+	{75, 1},
 };
 static arc arcs_28_1[1] = {
 	{21, 2},
@@ -599,12 +600,12 @@
 	{1, arcs_28_4},
 };
 static arc arcs_29_0[6] = {
-	{75, 1},
 	{76, 1},
 	{77, 1},
 	{78, 1},
-	{10, 1},
 	{79, 1},
+	{10, 1},
+	{80, 1},
 };
 static arc arcs_29_1[1] = {
 	{0, 1},
@@ -614,7 +615,7 @@
 	{1, arcs_29_1},
 };
 static arc arcs_30_0[1] = {
-	{80, 1},
+	{81, 1},
 };
 static arc arcs_30_1[1] = {
 	{21, 2},
@@ -626,8 +627,8 @@
 	{15, 4},
 };
 static arc arcs_30_4[3] = {
-	{81, 1},
-	{82, 5},
+	{82, 1},
+	{83, 5},
 	{0, 4},
 };
 static arc arcs_30_5[1] = {
@@ -650,7 +651,7 @@
 	{1, arcs_30_7},
 };
 static arc arcs_31_0[1] = {
-	{83, 1},
+	{84, 1},
 };
 static arc arcs_31_1[1] = {
 	{21, 2},
@@ -662,7 +663,7 @@
 	{15, 4},
 };
 static arc arcs_31_4[2] = {
-	{82, 5},
+	{83, 5},
 	{0, 4},
 };
 static arc arcs_31_5[1] = {
@@ -685,13 +686,13 @@
 	{1, arcs_31_7},
 };
 static arc arcs_32_0[1] = {
-	{84, 1},
+	{85, 1},
 };
 static arc arcs_32_1[1] = {
-	{52, 2},
+	{53, 2},
 };
 static arc arcs_32_2[1] = {
-	{73, 3},
+	{74, 3},
 };
 static arc arcs_32_3[1] = {
 	{9, 4},
@@ -703,7 +704,7 @@
 	{15, 6},
 };
 static arc arcs_32_6[2] = {
-	{82, 7},
+	{83, 7},
 	{0, 6},
 };
 static arc arcs_32_7[1] = {
@@ -728,7 +729,7 @@
 	{1, arcs_32_9},
 };
 static arc arcs_33_0[1] = {
-	{85, 1},
+	{86, 1},
 };
 static arc arcs_33_1[1] = {
 	{14, 2},
@@ -737,8 +738,8 @@
 	{15, 3},
 };
 static arc arcs_33_3[2] = {
-	{86, 4},
-	{87, 5},
+	{87, 4},
+	{88, 5},
 };
 static arc arcs_33_4[1] = {
 	{14, 6},
@@ -753,8 +754,8 @@
 	{15, 9},
 };
 static arc arcs_33_8[3] = {
-	{86, 4},
-	{82, 5},
+	{87, 4},
+	{83, 5},
 	{0, 8},
 };
 static arc arcs_33_9[1] = {
@@ -773,7 +774,7 @@
 	{1, arcs_33_9},
 };
 static arc arcs_34_0[1] = {
-	{88, 1},
+	{89, 1},
 };
 static arc arcs_34_1[2] = {
 	{21, 2},
@@ -804,14 +805,14 @@
 	{0, 1},
 };
 static arc arcs_35_2[1] = {
-	{89, 3},
+	{90, 3},
 };
 static arc arcs_35_3[1] = {
 	{6, 4},
 };
 static arc arcs_35_4[2] = {
 	{6, 4},
-	{90, 1},
+	{91, 1},
 };
 static state states_35[5] = {
 	{2, arcs_35_0},
@@ -821,18 +822,18 @@
 	{2, arcs_35_4},
 };
 static arc arcs_36_0[2] = {
-	{91, 1},
-	{93, 2},
+	{92, 1},
+	{94, 2},
 };
 static arc arcs_36_1[2] = {
-	{92, 3},
+	{93, 3},
 	{0, 1},
 };
 static arc arcs_36_2[1] = {
 	{0, 2},
 };
 static arc arcs_36_3[1] = {
-	{91, 1},
+	{92, 1},
 };
 static state states_36[4] = {
 	{2, arcs_36_0},
@@ -841,10 +842,10 @@
 	{1, arcs_36_3},
 };
 static arc arcs_37_0[1] = {
-	{94, 1},
+	{95, 1},
 };
 static arc arcs_37_1[2] = {
-	{95, 0},
+	{96, 0},
 	{0, 1},
 };
 static state states_37[2] = {
@@ -852,11 +853,11 @@
 	{2, arcs_37_1},
 };
 static arc arcs_38_0[2] = {
-	{96, 1},
-	{97, 2},
+	{97, 1},
+	{98, 2},
 };
 static arc arcs_38_1[1] = {
-	{94, 2},
+	{95, 2},
 };
 static arc arcs_38_2[1] = {
 	{0, 2},
@@ -867,10 +868,10 @@
 	{1, arcs_38_2},
 };
 static arc arcs_39_0[1] = {
-	{72, 1},
+	{73, 1},
 };
 static arc arcs_39_1[2] = {
-	{98, 0},
+	{99, 0},
 	{0, 1},
 };
 static state states_39[2] = {
@@ -878,25 +879,25 @@
 	{2, arcs_39_1},
 };
 static arc arcs_40_0[10] = {
-	{99, 1},
 	{100, 1},
 	{101, 1},
 	{102, 1},
 	{103, 1},
 	{104, 1},
 	{105, 1},
-	{73, 1},
-	{96, 2},
-	{106, 3},
+	{106, 1},
+	{74, 1},
+	{97, 2},
+	{107, 3},
 };
 static arc arcs_40_1[1] = {
 	{0, 1},
 };
 static arc arcs_40_2[1] = {
-	{73, 1},
+	{74, 1},
 };
 static arc arcs_40_3[2] = {
-	{96, 1},
+	{97, 1},
 	{0, 3},
 };
 static state states_40[4] = {
@@ -906,10 +907,10 @@
 	{2, arcs_40_3},
 };
 static arc arcs_41_0[1] = {
-	{107, 1},
+	{108, 1},
 };
 static arc arcs_41_1[2] = {
-	{108, 0},
+	{109, 0},
 	{0, 1},
 };
 static state states_41[2] = {
@@ -917,10 +918,10 @@
 	{2, arcs_41_1},
 };
 static arc arcs_42_0[1] = {
-	{109, 1},
+	{110, 1},
 };
 static arc arcs_42_1[2] = {
-	{110, 0},
+	{111, 0},
 	{0, 1},
 };
 static state states_42[2] = {
@@ -928,10 +929,10 @@
 	{2, arcs_42_1},
 };
 static arc arcs_43_0[1] = {
-	{111, 1},
+	{112, 1},
 };
 static arc arcs_43_1[2] = {
-	{112, 0},
+	{113, 0},
 	{0, 1},
 };
 static state states_43[2] = {
@@ -939,11 +940,11 @@
 	{2, arcs_43_1},
 };
 static arc arcs_44_0[1] = {
-	{113, 1},
+	{114, 1},
 };
 static arc arcs_44_1[3] = {
-	{114, 0},
-	{50, 0},
+	{115, 0},
+	{51, 0},
 	{0, 1},
 };
 static state states_44[2] = {
@@ -951,11 +952,11 @@
 	{3, arcs_44_1},
 };
 static arc arcs_45_0[1] = {
-	{115, 1},
+	{116, 1},
 };
 static arc arcs_45_1[3] = {
-	{116, 0},
 	{117, 0},
+	{118, 0},
 	{0, 1},
 };
 static state states_45[2] = {
@@ -963,26 +964,27 @@
 	{3, arcs_45_1},
 };
 static arc arcs_46_0[1] = {
-	{118, 1},
+	{119, 1},
 };
-static arc arcs_46_1[4] = {
+static arc arcs_46_1[5] = {
 	{23, 0},
-	{119, 0},
 	{120, 0},
+	{121, 0},
+	{122, 0},
 	{0, 1},
 };
 static state states_46[2] = {
 	{1, arcs_46_0},
-	{4, arcs_46_1},
+	{5, arcs_46_1},
 };
 static arc arcs_47_0[4] = {
-	{116, 1},
 	{117, 1},
-	{121, 1},
-	{122, 2},
+	{118, 1},
+	{123, 1},
+	{124, 2},
 };
 static arc arcs_47_1[1] = {
-	{118, 2},
+	{119, 2},
 };
 static arc arcs_47_2[1] = {
 	{0, 2},
@@ -993,15 +995,15 @@
 	{1, arcs_47_2},
 };
 static arc arcs_48_0[1] = {
-	{123, 1},
+	{125, 1},
 };
 static arc arcs_48_1[3] = {
-	{124, 1},
+	{126, 1},
 	{24, 2},
 	{0, 1},
 };
 static arc arcs_48_2[1] = {
-	{118, 3},
+	{119, 3},
 };
 static arc arcs_48_3[2] = {
 	{24, 2},
@@ -1015,24 +1017,24 @@
 };
 static arc arcs_49_0[7] = {
 	{16, 1},
-	{125, 2},
-	{128, 3},
-	{131, 4},
+	{127, 2},
+	{130, 3},
+	{133, 4},
 	{12, 5},
-	{132, 5},
-	{133, 6},
+	{134, 5},
+	{135, 6},
 };
 static arc arcs_49_1[2] = {
 	{9, 7},
 	{18, 5},
 };
 static arc arcs_49_2[2] = {
-	{126, 8},
-	{127, 5},
+	{128, 8},
+	{129, 5},
 };
 static arc arcs_49_3[2] = {
-	{129, 9},
-	{130, 5},
+	{131, 9},
+	{132, 5},
 };
 static arc arcs_49_4[1] = {
 	{9, 10},
@@ -1041,20 +1043,20 @@
 	{0, 5},
 };
 static arc arcs_49_6[2] = {
-	{133, 6},
+	{135, 6},
 	{0, 6},
 };
 static arc arcs_49_7[1] = {
 	{18, 5},
 };
 static arc arcs_49_8[1] = {
-	{127, 5},
+	{129, 5},
 };
 static arc arcs_49_9[1] = {
-	{130, 5},
+	{132, 5},
 };
 static arc arcs_49_10[1] = {
-	{131, 5},
+	{133, 5},
 };
 static state states_49[11] = {
 	{7, arcs_49_0},
@@ -1073,7 +1075,7 @@
 	{21, 1},
 };
 static arc arcs_50_1[3] = {
-	{134, 2},
+	{136, 2},
 	{22, 3},
 	{0, 1},
 };
@@ -1096,7 +1098,7 @@
 	{2, arcs_50_4},
 };
 static arc arcs_51_0[1] = {
-	{135, 1},
+	{137, 1},
 };
 static arc arcs_51_1[2] = {
 	{17, 2},
@@ -1120,15 +1122,15 @@
 };
 static arc arcs_52_0[3] = {
 	{16, 1},
-	{125, 2},
-	{69, 3},
+	{127, 2},
+	{70, 3},
 };
 static arc arcs_52_1[2] = {
-	{136, 4},
+	{138, 4},
 	{18, 5},
 };
 static arc arcs_52_2[1] = {
-	{137, 6},
+	{139, 6},
 };
 static arc arcs_52_3[1] = {
 	{12, 5},
@@ -1140,7 +1142,7 @@
 	{0, 5},
 };
 static arc arcs_52_6[1] = {
-	{127, 5},
+	{129, 5},
 };
 static state states_52[7] = {
 	{3, arcs_52_0},
@@ -1152,14 +1154,14 @@
 	{1, arcs_52_6},
 };
 static arc arcs_53_0[1] = {
-	{138, 1},
+	{140, 1},
 };
 static arc arcs_53_1[2] = {
 	{22, 2},
 	{0, 1},
 };
 static arc arcs_53_2[2] = {
-	{138, 1},
+	{140, 1},
 	{0, 2},
 };
 static state states_53[3] = {
@@ -1168,12 +1170,12 @@
 	{2, arcs_53_2},
 };
 static arc arcs_54_0[3] = {
-	{69, 1},
+	{70, 1},
 	{21, 2},
 	{14, 3},
 };
 static arc arcs_54_1[1] = {
-	{69, 4},
+	{70, 4},
 };
 static arc arcs_54_2[2] = {
 	{14, 3},
@@ -1181,14 +1183,14 @@
 };
 static arc arcs_54_3[3] = {
 	{21, 5},
-	{139, 6},
+	{141, 6},
 	{0, 3},
 };
 static arc arcs_54_4[1] = {
-	{69, 6},
+	{70, 6},
 };
 static arc arcs_54_5[2] = {
-	{139, 6},
+	{141, 6},
 	{0, 5},
 };
 static arc arcs_54_6[1] = {
@@ -1219,14 +1221,14 @@
 	{1, arcs_55_2},
 };
 static arc arcs_56_0[1] = {
-	{72, 1},
+	{73, 1},
 };
 static arc arcs_56_1[2] = {
 	{22, 2},
 	{0, 1},
 };
 static arc arcs_56_2[2] = {
-	{72, 1},
+	{73, 1},
 	{0, 2},
 };
 static state states_56[3] = {
@@ -1275,7 +1277,7 @@
 	{2, arcs_58_4},
 };
 static arc arcs_59_0[1] = {
-	{140, 1},
+	{142, 1},
 };
 static arc arcs_59_1[1] = {
 	{12, 2},
@@ -1310,7 +1312,7 @@
 	{1, arcs_59_7},
 };
 static arc arcs_60_0[3] = {
-	{141, 1},
+	{143, 1},
 	{23, 2},
 	{24, 3},
 };
@@ -1325,7 +1327,7 @@
 	{21, 6},
 };
 static arc arcs_60_4[4] = {
-	{141, 1},
+	{143, 1},
 	{23, 2},
 	{24, 3},
 	{0, 4},
@@ -1370,8 +1372,8 @@
 	{1, arcs_61_3},
 };
 static arc arcs_62_0[2] = {
-	{134, 1},
-	{143, 1},
+	{136, 1},
+	{145, 1},
 };
 static arc arcs_62_1[1] = {
 	{0, 1},
@@ -1381,19 +1383,19 @@
 	{1, arcs_62_1},
 };
 static arc arcs_63_0[1] = {
-	{84, 1},
+	{85, 1},
 };
 static arc arcs_63_1[1] = {
-	{52, 2},
+	{53, 2},
 };
 static arc arcs_63_2[1] = {
-	{73, 3},
+	{74, 3},
 };
 static arc arcs_63_3[1] = {
 	{9, 4},
 };
 static arc arcs_63_4[2] = {
-	{142, 5},
+	{144, 5},
 	{0, 4},
 };
 static arc arcs_63_5[1] = {
@@ -1408,13 +1410,13 @@
 	{1, arcs_63_5},
 };
 static arc arcs_64_0[1] = {
-	{80, 1},
+	{81, 1},
 };
 static arc arcs_64_1[1] = {
 	{21, 2},
 };
 static arc arcs_64_2[2] = {
-	{142, 3},
+	{144, 3},
 	{0, 2},
 };
 static arc arcs_64_3[1] = {
@@ -1428,137 +1430,137 @@
 };
 static dfa dfas[65] = {
 	{256, "single_input", 0, 3, states_0,
-	 "\004\030\001\000\000\000\052\370\305\004\071\000\001\000\060\042\271\020"},
+	 "\004\030\001\000\000\000\124\360\213\011\162\000\002\000\140\210\344\102\000"},
 	{257, "file_input", 0, 2, states_1,
-	 "\204\030\001\000\000\000\052\370\305\004\071\000\001\000\060\042\271\020"},
+	 "\204\030\001\000\000\000\124\360\213\011\162\000\002\000\140\210\344\102\000"},
 	{258, "eval_input", 0, 3, states_2,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\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\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\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\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\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\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\052\370\305\004\071\000\001\000\060\042\271\020"},
+	 "\000\030\001\000\000\000\124\360\213\011\162\000\002\000\140\210\344\102\000"},
 	{265, "simple_stmt", 0, 4, states_9,
-	 "\000\020\001\000\000\000\052\370\305\004\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\124\360\213\011\000\000\002\000\140\210\344\002\000"},
 	{266, "small_stmt", 0, 2, states_10,
-	 "\000\020\001\000\000\000\052\370\305\004\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\124\360\213\011\000\000\002\000\140\210\344\002\000"},
 	{267, "expr_stmt", 0, 6, states_11,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{268, "augassign", 0, 2, states_12,
-	 "\000\000\000\000\300\377\001\000\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\002\000\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\010\000\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\040\000\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\370\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\010\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\020\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\040\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\100\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\200\000\000\000\000\000\000\000\000\000\000"},
+	 "\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\005\000\000\000\000\000\000\000\000\000"},
+	 "\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\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\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\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\100\000\000\000\000\000\000\000\000\000"},
+	 "\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\200\000\000\000\000\000\000\000\000\000"},
+	 "\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\004\000\000\000\000\000\000\000\000"},
+	 "\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\071\000\000\000\000\000\000\020"},
+	 "\000\010\000\000\000\000\000\000\000\000\162\000\000\000\000\000\000\100\000"},
 	{286, "if_stmt", 0, 8, states_30,
-	 "\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000"},
+	 "\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\010\000\000\000\000\000\000\000"},
+	 "\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\020\000\000\000\000\000\000\000"},
+	 "\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\040\000\000\000\000\000\000\000"},
+	 "\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\001\000\000\000\000\000\000"},
+	 "\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\052\370\305\004\000\000\001\000\060\042\271\000"},
+	 "\004\020\001\000\000\000\124\360\213\011\000\000\002\000\140\210\344\002\000"},
 	{292, "test", 0, 4, states_36,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{293, "and_test", 0, 2, states_37,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\000\000"},
 	{294, "not_test", 0, 3, states_38,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\000\000"},
 	{295, "comparison", 0, 2, states_39,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{296, "comp_op", 0, 4, states_40,
-	 "\000\000\000\000\000\000\000\000\000\002\000\000\371\007\000\000\000\000"},
+	 "\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\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{298, "xor_expr", 0, 2, states_42,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{299, "and_expr", 0, 2, states_43,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{300, "shift_expr", 0, 2, states_44,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{301, "arith_expr", 0, 2, states_45,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{302, "term", 0, 2, states_46,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{303, "factor", 0, 3, states_47,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{304, "power", 0, 4, states_48,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\040\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\200\344\000\000"},
 	{305, "atom", 0, 11, states_49,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\040\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\000\200\344\000\000"},
 	{306, "listmaker", 0, 5, states_50,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{307, "lambdef", 0, 5, states_51,
-	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\200\000"},
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000"},
 	{308, "trailer", 0, 7, states_52,
-	 "\000\000\001\000\000\000\000\000\040\000\000\000\000\000\000\040\000\000"},
+	 "\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\040\000\000\000\001\000\060\042\271\000"},
+	 "\000\120\001\000\000\000\000\000\100\000\000\000\002\000\140\210\344\002\000"},
 	{310, "subscript", 0, 7, states_54,
-	 "\000\120\001\000\000\000\000\000\040\000\000\000\001\000\060\042\271\000"},
+	 "\000\120\001\000\000\000\000\000\100\000\000\000\002\000\140\210\344\002\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\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\060\042\071\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\000\000\140\210\344\000\000"},
 	{313, "testlist", 0, 3, states_57,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{314, "dictmaker", 0, 5, states_58,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{315, "classdef", 0, 8, states_59,
-	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020"},
+	 "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\100\000"},
 	{316, "arglist", 0, 8, states_60,
-	 "\000\020\201\001\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\201\001\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{317, "argument", 0, 4, states_61,
-	 "\000\020\001\000\000\000\000\000\000\000\000\000\001\000\060\042\271\000"},
+	 "\000\020\001\000\000\000\000\000\000\000\000\000\002\000\140\210\344\002\000"},
 	{318, "list_iter", 0, 2, states_62,
-	 "\000\000\000\000\000\000\000\000\000\000\021\000\000\000\000\000\000\000"},
+	 "\000\000\000\000\000\000\000\000\000\000\042\000\000\000\000\000\000\000\000"},
 	{319, "list_for", 0, 6, states_63,
-	 "\000\000\000\000\000\000\000\000\000\000\020\000\000\000\000\000\000\000"},
+	 "\000\000\000\000\000\000\000\000\000\000\040\000\000\000\000\000\000\000\000"},
 	{320, "list_if", 0, 4, states_64,
-	 "\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000"},
+	 "\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000"},
 };
-static label labels[144] = {
+static label labels[146] = {
 	{0, "EMPTY"},
 	{256, 0},
 	{4, 0},
@@ -1608,6 +1610,7 @@
 	{45, 0},
 	{46, 0},
 	{47, 0},
+	{49, 0},
 	{1, "print"},
 	{35, 0},
 	{1, "del"},
@@ -1680,6 +1683,7 @@
 	{303, 0},
 	{17, 0},
 	{24, 0},
+	{48, 0},
 	{32, 0},
 	{304, 0},
 	{305, 0},
@@ -1707,6 +1711,6 @@
 grammar _PyParser_Grammar = {
 	65,
 	dfas,
-	{144, labels},
+	{146, labels},
 	256
 };
