Whitespace normalization.
diff --git a/Lib/difflib.py b/Lib/difflib.py
index 8493503..a2689f4 100644
--- a/Lib/difflib.py
+++ b/Lib/difflib.py
@@ -946,7 +946,7 @@
 
         yield "- " + aline
         if atags:
-             yield "? %s%s\n" % ("\t" * common, atags)
+            yield "? %s%s\n" % ("\t" * common, atags)
 
         yield "+ " + bline
         if btags:
diff --git a/Lib/email/Encoders.py b/Lib/email/Encoders.py
index d9cd42d..0425e5c 100644
--- a/Lib/email/Encoders.py
+++ b/Lib/email/Encoders.py
@@ -8,7 +8,7 @@
 from quopri import encodestring as _encodestring
 
 
-
+
 # Helpers
 def _qencode(s):
     return _encodestring(s, quotetabs=1)
@@ -26,7 +26,7 @@
     return value
 
 
-
+
 def encode_base64(msg):
     """Encode the message's payload in Base64.
 
@@ -38,7 +38,7 @@
     msg['Content-Transfer-Encoding'] = 'base64'
 
 
-
+
 def encode_quopri(msg):
     """Encode the message's payload in Quoted-Printable.
 
@@ -50,7 +50,7 @@
     msg['Content-Transfer-Encoding'] = 'quoted-printable'
 
 
-
+
 def encode_7or8bit(msg):
     """Set the Content-Transfer-Encoding: header to 7bit or 8bit."""
     orig = msg.get_payload()
@@ -64,6 +64,6 @@
         msg['Content-Transfer-Encoding'] = '7bit'
 
 
-
+
 def encode_noop(msg):
     """Do nothing."""
diff --git a/Lib/email/Errors.py b/Lib/email/Errors.py
index 71d7663..5a1e0fe 100644
--- a/Lib/email/Errors.py
+++ b/Lib/email/Errors.py
@@ -5,7 +5,7 @@
 """
 
 
-
+
 class MessageError(Exception):
     """Base class for errors in this module."""
 
diff --git a/Lib/email/Generator.py b/Lib/email/Generator.py
index c31dc80..476e9e7 100644
--- a/Lib/email/Generator.py
+++ b/Lib/email/Generator.py
@@ -25,7 +25,7 @@
 fcre = re.compile(r'^From ', re.MULTILINE)
 
 
-
+
 class Generator:
     """Generates output from a Message object tree.
 
@@ -278,7 +278,7 @@
         self._fp.write(s.getvalue())
 
 
-
+
 class DecodedGenerator(Generator):
     """Generator a text representation of a message.
 
@@ -334,7 +334,7 @@
                     }
 
 
-
+
 # Helper
 def _make_boundary(self, text=None):
     # Craft a random boundary.  If text is given, ensure that the chosen
diff --git a/Lib/email/Iterators.py b/Lib/email/Iterators.py
index d1ee53f..cd08f37 100644
--- a/Lib/email/Iterators.py
+++ b/Lib/email/Iterators.py
@@ -9,7 +9,7 @@
 from types import StringType
 
 
-
+
 def body_line_iterator(msg):
     """Iterate over the parts, returning string payloads line-by-line."""
     for subpart in msg.walk():
@@ -19,7 +19,7 @@
                 yield line
 
 
-
+
 def typed_subpart_iterator(msg, maintype='text', subtype=None):
     """Iterate over the subparts with a given MIME type.
 
diff --git a/Lib/email/MIMEBase.py b/Lib/email/MIMEBase.py
index 33216f6..c4ff303 100644
--- a/Lib/email/MIMEBase.py
+++ b/Lib/email/MIMEBase.py
@@ -7,7 +7,7 @@
 import Message
 
 
-
+
 class MIMEBase(Message.Message):
     """Base class for MIME specializations."""
 
diff --git a/Lib/email/MIMEImage.py b/Lib/email/MIMEImage.py
index 963da23..5c28cfde 100644
--- a/Lib/email/MIMEImage.py
+++ b/Lib/email/MIMEImage.py
@@ -12,7 +12,7 @@
 import Encoders
 
 
-
+
 class MIMEImage(MIMEBase.MIMEBase):
     """Class for generating image/* type MIME documents."""
 
diff --git a/Lib/email/MIMEMessage.py b/Lib/email/MIMEMessage.py
index fc4b2c6..11bdb3b 100644
--- a/Lib/email/MIMEMessage.py
+++ b/Lib/email/MIMEMessage.py
@@ -8,7 +8,7 @@
 import MIMEBase
 
 
-
+
 class MIMEMessage(MIMEBase.MIMEBase):
     """Class representing message/* MIME documents."""
 
diff --git a/Lib/email/MIMEText.py b/Lib/email/MIMEText.py
index ccce9fb..b099598 100644
--- a/Lib/email/MIMEText.py
+++ b/Lib/email/MIMEText.py
@@ -8,7 +8,7 @@
 from Encoders import encode_7or8bit
 
 
-
+
 class MIMEText(MIMEBase.MIMEBase):
     """Class for generating text/* type MIME documents."""
 
diff --git a/Lib/email/Message.py b/Lib/email/Message.py
index 5822bad..d03b43f 100644
--- a/Lib/email/Message.py
+++ b/Lib/email/Message.py
@@ -20,7 +20,7 @@
 paramre = re.compile(r';\s*')
 
 
-
+
 class Message:
     """Basic message object for use inside the object tree.
 
@@ -430,7 +430,7 @@
 
     def get_charsets(self, failobj=None):
         """Return a list containing the charset(s) used in this message.
-    
+
         The returned list of items describes the Content-Type: headers'
         charset parameter for this message and all the subparts in its
         payload.
diff --git a/Lib/email/Parser.py b/Lib/email/Parser.py
index 81763dc..e8a3b92 100644
--- a/Lib/email/Parser.py
+++ b/Lib/email/Parser.py
@@ -14,7 +14,7 @@
 NL = '\n'
 
 
-
+
 class Parser:
     def __init__(self, _class=Message.Message):
         """Parser of RFC 2822 and MIME email messages.
diff --git a/Lib/email/Utils.py b/Lib/email/Utils.py
index 6bbf2d3..e75dae1 100644
--- a/Lib/email/Utils.py
+++ b/Lib/email/Utils.py
@@ -21,7 +21,7 @@
 UEMPTYSTRING = u''
 
 
-
+
 # Helpers
 
 def _identity(s):
@@ -42,7 +42,7 @@
     return value
 
 
-
+
 def getaddresses(fieldvalues):
     """Return a list of (REALNAME, EMAIL) for each fieldvalue."""
     all = COMMASPACE.join(fieldvalues)
@@ -50,7 +50,7 @@
     return a.getaddrlist()
 
 
-
+
 ecre = re.compile(r'''
   =\?                   # literal =?
   (?P<charset>[^?]*?)   # non-greedy up to the next ? is the charset
@@ -92,7 +92,7 @@
     return UEMPTYSTRING.join(rtn)
 
 
-
+
 def encode(s, charset='iso-8859-1', encoding='q'):
     """Encode a string according to RFC 2047."""
     if encoding.lower() == 'q':
diff --git a/Lib/email/__init__.py b/Lib/email/__init__.py
index 4995114..8ca8d02 100644
--- a/Lib/email/__init__.py
+++ b/Lib/email/__init__.py
@@ -22,7 +22,7 @@
            ]
 
 
-
+
 # Some convenience routines
 from Parser import Parser as _Parser
 from Message import Message as _Message
diff --git a/Lib/quopri.py b/Lib/quopri.py
index 0425735..6d7cdd6 100755
--- a/Lib/quopri.py
+++ b/Lib/quopri.py
@@ -12,10 +12,10 @@
 EMPTYSTRING = ''
 
 try:
-  from binascii import a2b_qp, b2a_qp
+    from binascii import a2b_qp, b2a_qp
 except:
-  a2b_qp = None
-  b2a_qp = None
+    a2b_qp = None
+    b2a_qp = None
 
 
 def needsquoting(c, quotetabs, header):
@@ -28,7 +28,7 @@
     if c in ' \t':
         return quotetabs
     # if header, we have to escape _ because _ is used to escape space
-    if c == '_': 
+    if c == '_':
         return header
     return c == ESCAPE or not (' ' <= c <= '~')
 
@@ -55,7 +55,7 @@
         odata = b2a_qp(data, quotetabs = quotetabs, header = header)
         output.write(odata)
         return
-      
+
     def write(s, output=output, lineEnd='\n'):
         # RFC 1521 requires that the line ending in a space or tab must have
         # that trailing character encoded.
diff --git a/Lib/test/test_email.py b/Lib/test/test_email.py
index 1c5add0..96facd6 100644
--- a/Lib/test/test_email.py
+++ b/Lib/test/test_email.py
@@ -28,14 +28,14 @@
 EMPTYSTRING = ''
 
 
-
+
 def openfile(filename):
     path = os.path.join(os.path.dirname(test.regrtest.__file__),
                         'data', filename)
     return open(path)
 
 
-
+
 # Base test class
 class TestEmailBase(unittest.TestCase):
     def _msgobj(self, filename):
@@ -47,12 +47,12 @@
         return msg
 
 
-
+
 # Test various aspects of the Message class's API
 class TestMessageAPI(TestEmailBase):
     def test_get_charsets(self):
         eq = self.assertEqual
-        
+
         msg = self._msgobj('msg_08.txt')
         charsets = msg.get_charsets()
         eq(charsets, [None, 'us-ascii', 'iso-8859-1', 'iso-8859-2', 'koi8-r'])
@@ -175,7 +175,7 @@
         msg = email.message_from_string(
         "Content-Disposition: blarg; filename\n")
         self.assertEqual(msg.get_filename(), '')
-        
+
     def test_missing_boundary(self):
         msg = email.message_from_string("From: foo\n")
         self.assertEqual(msg.get_boundary(), None)
@@ -217,7 +217,7 @@
         self.failIf(msg.has_key('headeri'))
 
 
-
+
 # Test the email.Encoders module
 class TestEncoders(unittest.TestCase):
     def test_encode_noop(self):
@@ -254,7 +254,7 @@
         eq(msg['content-transfer-encoding'], 'quoted-printable')
 
 
-
+
 class TestLongHeaders(unittest.TestCase):
     def test_header_splitter(self):
         msg = MIMEText('')
@@ -271,12 +271,12 @@
 MIME-Version: 1.0
 Content-Transfer-Encoding: 7bit
 X-Foobar-Spoink-Defrobnit: wasnipoop; giraffes="very-long-necked-animals";
-	spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"
+        spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"
 
 ''')
 
 
-
+
 class TestFromMangling(unittest.TestCase):
     def setUp(self):
         self.msg = Message()
@@ -309,7 +309,7 @@
 """)
 
 
-
+
 # Test the basic MIMEImage class
 class TestMIMEImage(unittest.TestCase):
     def setUp(self):
@@ -362,7 +362,7 @@
                                   header='foobar') is missing)
 
 
-
+
 # Test the basic MIMEText class
 class TestMIMEText(unittest.TestCase):
     def setUp(self):
@@ -383,7 +383,7 @@
         self.failUnless(not self._msg.is_multipart())
 
 
-
+
 class TestMultipartMixed(unittest.TestCase):
     def setUp(self):
         fp = openfile('PyBanner048.gif')
@@ -406,7 +406,7 @@
         container['From'] = 'Barry <barry@digicool.com>'
         container['To'] = 'Dingus Lovers <cravindogs@cravindogs.com>'
         container['Subject'] = 'Here is your dingus fish'
-        
+
         now = 987809702.54848599
         timetuple = time.localtime(now)
         if timetuple[-1] == 0:
@@ -445,7 +445,7 @@
         unless(not m1.is_multipart())
 
 
-
+
 class TestNonConformant(TestEmailBase):
     def test_parse_missing_minor_type(self):
         eq = self.assertEqual
@@ -466,7 +466,7 @@
         self.assertRaises(Errors.BoundaryError, p.parsestr, data)
 
 
-
+
 class TestRFC2047(unittest.TestCase):
     def test_iso_8859_1(self):
         eq = self.assertEqual
@@ -497,7 +497,7 @@
            '=?iso-8859-2?b?dSB1bmRlcnN0YW5kIHRoZSBleGFtcGxlLg==?=')
 
 
-
+
 class TestMIMEMessage(TestEmailBase):
     def setUp(self):
         fp = openfile('msg_11.txt')
@@ -603,7 +603,7 @@
            '<002001c144a6$8752e060$56104586@oxy.edu>')
 
 
-
+
 class TestIdempotent(unittest.TestCase):
     def _msgobj(self, filename):
         fp = openfile(filename)
@@ -652,7 +652,7 @@
     def test_mixed_with_image(self):
         msg, text = self._msgobj('msg_06.txt')
         self._idempotent(msg, text)
-    
+
     def test_multipart_report(self):
         msg, text = self._msgobj('msg_05.txt')
         self._idempotent(msg, text)
@@ -660,7 +660,7 @@
     def test_dsn(self):
         msg, text = self._msgobj('msg_16.txt')
         self._idempotent(msg, text)
-        
+
     def test_content_type(self):
         eq = self.assertEquals
         # Get a message object and reset the seek pointer for other tests
@@ -701,9 +701,9 @@
         eq(msg1.get_type(), 'text/plain')
         self.failUnless(isinstance(msg1.get_payload(), StringType))
         eq(msg1.get_payload(), '\n')
-        
 
-
+
+
 class TestMiscellaneous(unittest.TestCase):
     def test_message_from_string(self):
         fp = openfile('msg_01.txt')
@@ -744,7 +744,7 @@
         # Create a subclass
         class MyMessage(Message):
             pass
-        
+
         msg = email.message_from_string(text, MyMessage)
         unless(isinstance(msg, MyMessage))
         # Try something more complicated
@@ -763,7 +763,7 @@
         # Create a subclass
         class MyMessage(Message):
             pass
-        
+
         fp = openfile('msg_01.txt')
         try:
             msg = email.message_from_file(fp, MyMessage)
@@ -780,7 +780,7 @@
             unless(isinstance(subpart, MyMessage))
 
 
-
+
 class TestIterators(TestEmailBase):
     def test_body_line_iterator(self):
         eq = self.assertEqual
@@ -801,15 +801,15 @@
         eq(len(lines), 43)
         eq(EMPTYSTRING.join(lines), """\
 Send Ppp mailing list submissions to
-	ppp@zzz.org
+        ppp@zzz.org
 
 To subscribe or unsubscribe via the World Wide Web, visit
-	http://www.zzz.org/mailman/listinfo/ppp
+        http://www.zzz.org/mailman/listinfo/ppp
 or, via email, send a message with subject or body 'help' to
-	ppp-request@zzz.org
+        ppp-request@zzz.org
 
 You can reach the person managing the list at
-	ppp-admin@zzz.org
+        ppp-admin@zzz.org
 
 When replying, please edit your Subject line so it is more specific
 than "Re: Contents of Ppp digest..."
@@ -863,7 +863,7 @@
 """)
 
 
-
+
 def suite():
     suite = unittest.TestSuite()
     suite.addTest(unittest.makeSuite(TestMessageAPI))
@@ -882,7 +882,7 @@
     return suite
 
 
-
+
 if __name__ == '__main__':
     unittest.main(defaultTest='suite')
 else:
diff --git a/Lib/test/test_iter.py b/Lib/test/test_iter.py
index 257b61d..5bd7ba4 100644
--- a/Lib/test/test_iter.py
+++ b/Lib/test/test_iter.py
@@ -648,7 +648,7 @@
         try:
             self.assertRaises(TypeError, f.writelines, None)
             self.assertRaises(TypeError, f.writelines, 42)
-    
+
             f.writelines(["1\n", "2\n"])
             f.writelines(("3\n", "4\n"))
             f.writelines({'5\n': None})
@@ -678,14 +678,14 @@
 
                 def __iter__(self):
                     return Iterator(self.start, self.finish)
-                    
-            f.writelines(Whatever(6, 6+2000))            
+
+            f.writelines(Whatever(6, 6+2000))
             f.close()
 
             f = file(TESTFN)
             expected = [str(i) + "\n" for i in range(1, 2006)]
             self.assertEqual(list(f), expected)
-            
+
         finally:
             f.close()
             try:
diff --git a/Lib/test/test_profile.py b/Lib/test/test_profile.py
index 460d56f..6ff5811 100644
--- a/Lib/test/test_profile.py
+++ b/Lib/test/test_profile.py
@@ -7,7 +7,7 @@
 # (We can't use a helper function increment the timer since it would be
 # included in the profile and would appear to consume all the time.)
 ticks = 0
-    
+
 def test_main():
     global ticks
     ticks = 0
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py
index b0d024b..68eae13 100644
--- a/Lib/test/test_unicode.py
+++ b/Lib/test/test_unicode.py
@@ -409,7 +409,7 @@
 for x,y in utfTests:
     verify( x.encode('utf-7') == y )
 
-try:        
+try:
     unicode('+3ADYAA-', 'utf-7') # surrogates not supported
 except UnicodeError:
     pass