diff --git a/Lib/compiler/pycodegen.py b/Lib/compiler/pycodegen.py
index 4194d27..c107a08 100644
--- a/Lib/compiler/pycodegen.py
+++ b/Lib/compiler/pycodegen.py
@@ -1187,7 +1187,7 @@
 
     def get_module(self):
         return self
-    
+
     def visitDiscard(self, node):
         # XXX Discard means it's an expression.  Perhaps this is a bad
         # name.
diff --git a/Lib/dumbdbm.py b/Lib/dumbdbm.py
index 920a464..3fb6e1d 100644
--- a/Lib/dumbdbm.py
+++ b/Lib/dumbdbm.py
@@ -150,7 +150,7 @@
     def __del__(self):
         if self._index is not None:
             self._commit()
-  
+
 
 
 def open(file, flag=None, mode=0666):
diff --git a/Lib/ftplib.py b/Lib/ftplib.py
index 436f13d..6234f7f 100644
--- a/Lib/ftplib.py
+++ b/Lib/ftplib.py
@@ -351,13 +351,13 @@
         if not passwd: passwd = ''
         if not acct: acct = ''
         if user == 'anonymous' and passwd in ('', '-'):
-	    # If there is no anonymous ftp password specified
-	    # then we'll just use anonymous@
-	    # We don't send any other thing because:
-	    # - We want to remain anonymous
-	    # - We want to stop SPAM
-	    # - We don't want to let ftp sites to discriminate by the user,
-	    #   host or country.
+            # If there is no anonymous ftp password specified
+            # then we'll just use anonymous@
+            # We don't send any other thing because:
+            # - We want to remain anonymous
+            # - We want to stop SPAM
+            # - We don't want to let ftp sites to discriminate by the user,
+            #   host or country.
             passwd = passwd + 'anonymous@'
         resp = self.sendcmd('USER ' + user)
         if resp[0] == '3': resp = self.sendcmd('PASS ' + passwd)
diff --git a/Lib/test/test_StringIO.py b/Lib/test/test_StringIO.py
index bf3640c..a340e3b 100644
--- a/Lib/test/test_StringIO.py
+++ b/Lib/test/test_StringIO.py
@@ -76,7 +76,7 @@
         # The StringIO module also supports concatenating Unicode
         # snippets to larger Unicode strings. This is tested by this
         # method. Note that cStringIO does not support this extension.
-        
+
         f = self.MODULE.StringIO()
         f.write(self._line[:6])
         f.seek(3)
