diff --git a/Lib/__future__.py b/Lib/__future__.py
index de37336..8510ceb 100644
--- a/Lib/__future__.py
+++ b/Lib/__future__.py
@@ -66,4 +66,4 @@
         return "Feature(" + `self.getOptionalRelease()` + ", " + \
                             `self.getMandatoryRelease()` + ")"
 
-nested_scopes = _Feature((2, 1, 0, "beta", 1), (2, 2, 0, "final", 0))
+nested_scopes = _Feature((2, 1, 0, "beta", 1), (2, 2, 0, "alpha", 0))
diff --git a/Lib/symtable.py b/Lib/symtable.py
index 210c339..15549ee 100644
--- a/Lib/symtable.py
+++ b/Lib/symtable.py
@@ -1,5 +1,4 @@
 """Interface to the compiler's internal symbol tables"""
-from __future__ import nested_scopes
 
 import _symtable
 from _symtable import USE, DEF_GLOBAL, DEF_LOCAL, DEF_PARAM, \
diff --git a/Lib/test/test_generators.py b/Lib/test/test_generators.py
index 1b5dfb0..a5b2c37 100644
--- a/Lib/test/test_generators.py
+++ b/Lib/test/test_generators.py
@@ -1,5 +1,3 @@
-from __future__ import nested_scopes
-
 tutorial_tests = """
 Let's try a simple generator:
 
diff --git a/Lib/test/test_scope.py b/Lib/test/test_scope.py
index fb53790..cb06036 100644
--- a/Lib/test/test_scope.py
+++ b/Lib/test/test_scope.py
@@ -1,5 +1,3 @@
-from __future__ import nested_scopes
-
 from test.test_support import verify, TestFailed, check_syntax
 
 print "1. simple nesting"
@@ -179,7 +177,7 @@
 
 print "11. unoptimized namespaces"
 
-check_syntax("""from __future__ import nested_scopes
+check_syntax("""\
 def unoptimized_clash1(strip):
     def f(s):
         from string import *
@@ -187,7 +185,7 @@
     return f
 """)
 
-check_syntax("""from __future__ import nested_scopes
+check_syntax("""\
 def unoptimized_clash2():
     from string import *
     def f(s):
@@ -195,7 +193,7 @@
     return f
 """)
 
-check_syntax("""from __future__ import nested_scopes
+check_syntax("""\
 def unoptimized_clash2():
     from string import *
     def g():
@@ -205,7 +203,7 @@
 """)
 
 # XXX could allow this for exec with const argument, but what's the point
-check_syntax("""from __future__ import nested_scopes
+check_syntax("""\
 def error(y):
     exec "a = 1"
     def f(x):
@@ -213,14 +211,14 @@
     return f
 """)
 
-check_syntax("""from __future__ import nested_scopes
+check_syntax("""\
 def f(x):
     def g():
         return x
     del x # can't del name
 """)
 
-check_syntax("""from __future__ import nested_scopes
+check_syntax("""\
 def f():
     def g():
          from string import *
diff --git a/PCbuild/rmpyc.py b/PCbuild/rmpyc.py
index a87eab8..019c69b 100644
--- a/PCbuild/rmpyc.py
+++ b/PCbuild/rmpyc.py
@@ -1,7 +1,5 @@
 # Remove all the .pyc and .pyo files under ../Lib.
 
-from __future__ import nested_scopes
-
 def deltree(root):
     import os
     def rm(path):
