Whitespace normalization, via reindent.py.
diff --git a/Mac/Modules/ae/aescan.py b/Mac/Modules/ae/aescan.py
index 80c198c..1283c1d 100644
--- a/Mac/Modules/ae/aescan.py
+++ b/Mac/Modules/ae/aescan.py
@@ -13,87 +13,87 @@
 from scantools import Scanner
 
 def main():
-	print "=== Scanning AEDataModel.h, AppleEvents.h, AERegistry.h, AEObjects.h ==="
-	input = ["AEDataModel.h", "AEInteraction.h", "AppleEvents.h", "AERegistry.h", "AEObjects.h"]
-	output = "aegen.py"
-	defsoutput = TOOLBOXDIR + "AppleEvents.py"
-	scanner = AppleEventsScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done Scanning and Generating, now doing 'import aesupport' ==="
-	import aesupport
-	print "=== Done 'import aesupport'.  It's up to you to compile AEmodule.c ==="
+    print "=== Scanning AEDataModel.h, AppleEvents.h, AERegistry.h, AEObjects.h ==="
+    input = ["AEDataModel.h", "AEInteraction.h", "AppleEvents.h", "AERegistry.h", "AEObjects.h"]
+    output = "aegen.py"
+    defsoutput = TOOLBOXDIR + "AppleEvents.py"
+    scanner = AppleEventsScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done Scanning and Generating, now doing 'import aesupport' ==="
+    import aesupport
+    print "=== Done 'import aesupport'.  It's up to you to compile AEmodule.c ==="
 
 class AppleEventsScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "AEFunction"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t[-4:] == "_ptr" and m == "InMode" and \
-			   t[:-4] in ("AEDesc", "AEAddressDesc", "AEDescList",
-			         "AERecord", "AppleEvent"):
-				classname = "AEMethod"
-				listname = "aedescmethods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "AEFunction"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t[-4:] == "_ptr" and m == "InMode" and \
+               t[:-4] in ("AEDesc", "AEAddressDesc", "AEDescList",
+                     "AERecord", "AppleEvent"):
+                classname = "AEMethod"
+                listname = "aedescmethods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"AEDisposeDesc",
-#			"AEGetEventHandler",
-			"AEGetDescData", # Use object.data
-			"AEGetSpecialHandler",
-			# Constants with funny definitions
-			"kAEDontDisposeOnResume",
-			"kAEUseStandardDispatch",
-			]
+    def makeblacklistnames(self):
+        return [
+                "AEDisposeDesc",
+#                       "AEGetEventHandler",
+                "AEGetDescData", # Use object.data
+                "AEGetSpecialHandler",
+                # Constants with funny definitions
+                "kAEDontDisposeOnResume",
+                "kAEUseStandardDispatch",
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"ProcPtr",
-			"AEArrayType",
-			"AECoercionHandlerUPP",
-			"UniversalProcPtr",
-			"OSLCompareUPP",
-			"OSLAccessorUPP",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "ProcPtr",
+                "AEArrayType",
+                "AECoercionHandlerUPP",
+                "UniversalProcPtr",
+                "OSLCompareUPP",
+                "OSLAccessorUPP",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("Boolean", "isSysHandler", "InMode")],
-			 [("AlwaysFalse", "*", "*")]),
-			
-			([("void_ptr", "*", "InMode"), ("Size", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("EventHandlerProcPtr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("EventHandler", "*", "*")]),
-			
-			([("EventHandlerProcPtr", "*", "OutMode"), ("long", "*", "OutMode")],
-			 [("EventHandler", "*", "*")]),
-			
-			([("AEEventHandlerUPP", "*", "InMode"), ("long", "*", "InMode")],
-			 [("EventHandler", "*", "*")]),
-			
-			([("AEEventHandlerUPP", "*", "OutMode"), ("long", "*", "OutMode")],
-			 [("EventHandler", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("Size", "*", "InMode"),
-			                            ("Size", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
-			 
-			([("AppleEvent", "theAppleEvent", "OutMode")],
-			 [("AppleEvent_ptr", "*", "InMode")]),
-			 
-			([("AEDescList", "theAEDescList", "OutMode")],
-			 [("AEDescList_ptr", "*", "InMode")]),
-			]
+    def makerepairinstructions(self):
+        return [
+                ([("Boolean", "isSysHandler", "InMode")],
+                 [("AlwaysFalse", "*", "*")]),
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+                ([("void_ptr", "*", "InMode"), ("Size", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                ([("EventHandlerProcPtr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("EventHandler", "*", "*")]),
+
+                ([("EventHandlerProcPtr", "*", "OutMode"), ("long", "*", "OutMode")],
+                 [("EventHandler", "*", "*")]),
+
+                ([("AEEventHandlerUPP", "*", "InMode"), ("long", "*", "InMode")],
+                 [("EventHandler", "*", "*")]),
+
+                ([("AEEventHandlerUPP", "*", "OutMode"), ("long", "*", "OutMode")],
+                 [("EventHandler", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("Size", "*", "InMode"),
+                                            ("Size", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
+
+                ([("AppleEvent", "theAppleEvent", "OutMode")],
+                 [("AppleEvent_ptr", "*", "InMode")]),
+
+                ([("AEDescList", "theAEDescList", "OutMode")],
+                 [("AEDescList_ptr", "*", "InMode")]),
+                ]
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/ae/aesupport.py b/Mac/Modules/ae/aesupport.py
index 17184db..91c5b82 100644
--- a/Mac/Modules/ae/aesupport.py
+++ b/Mac/Modules/ae/aesupport.py
@@ -39,29 +39,29 @@
 
 
 class EHType(Type):
-	def __init__(self, name = 'EventHandler', format = ''):
-		Type.__init__(self, name, format)
-	def declare(self, name):
-		Output("AEEventHandlerUPP %s__proc__ = upp_GenericEventHandler;", name)
-		Output("PyObject *%s;", name)
-	def getargsFormat(self):
-		return "O"
-	def getargsArgs(self, name):
-		return "&%s" % name
-	def passInput(self, name):
-		return "%s__proc__, (long)%s" % (name, name)
-	def passOutput(self, name):
-		return "&%s__proc__, (long *)&%s" % (name, name)
-	def mkvalueFormat(self):
-		return "O"
-	def mkvalueArgs(self, name):
-		return name
-	def cleanup(self, name):
-		Output("Py_INCREF(%s); /* XXX leak, but needed */", name)
+    def __init__(self, name = 'EventHandler', format = ''):
+        Type.__init__(self, name, format)
+    def declare(self, name):
+        Output("AEEventHandlerUPP %s__proc__ = upp_GenericEventHandler;", name)
+        Output("PyObject *%s;", name)
+    def getargsFormat(self):
+        return "O"
+    def getargsArgs(self, name):
+        return "&%s" % name
+    def passInput(self, name):
+        return "%s__proc__, (long)%s" % (name, name)
+    def passOutput(self, name):
+        return "&%s__proc__, (long *)&%s" % (name, name)
+    def mkvalueFormat(self):
+        return "O"
+    def mkvalueArgs(self, name):
+        return name
+    def cleanup(self, name):
+        Output("Py_INCREF(%s); /* XXX leak, but needed */", name)
 
 class EHNoRefConType(EHType):
-	def passInput(self, name):
-		return "upp_GenericEventHandler"
+    def passInput(self, name):
+        return "upp_GenericEventHandler"
 
 EventHandler = EHType()
 EventHandlerNoRefCon = EHNoRefConType()
@@ -101,9 +101,9 @@
 
 static pascal Boolean AEIdleProc(EventRecord *theEvent, long *sleepTime, RgnHandle *mouseRgn)
 {
-	if ( PyOS_InterruptOccurred() )
-		return 1;
-	return 0;
+        if ( PyOS_InterruptOccurred() )
+                return 1;
+        return 0;
 }
 
 AEIdleUPP upp_AEIdleProc;
@@ -113,99 +113,99 @@
 static pascal OSErr
 GenericEventHandler(const AppleEvent *request, AppleEvent *reply, refcontype refcon)
 {
-	PyObject *handler = (PyObject *)refcon;
-	AEDescObject *requestObject, *replyObject;
-	PyObject *args, *res;
-	if ((requestObject = (AEDescObject *)AEDesc_New((AppleEvent *)request)) == NULL) {
-		return -1;
-	}
-	if ((replyObject = (AEDescObject *)AEDesc_New(reply)) == NULL) {
-		Py_DECREF(requestObject);
-		return -1;
-	}
-	if ((args = Py_BuildValue("OO", requestObject, replyObject)) == NULL) {
-		Py_DECREF(requestObject);
-		Py_DECREF(replyObject);
-		return -1;
-	}
-	res = PyEval_CallObject(handler, args);
-	requestObject->ob_itself.descriptorType = 'null';
-	requestObject->ob_itself.dataHandle = NULL;
-	replyObject->ob_itself.descriptorType = 'null';
-	replyObject->ob_itself.dataHandle = NULL;
-	Py_DECREF(args);
-	if (res == NULL) {
-		PySys_WriteStderr("Exception in AE event handler function\\n");
-		PyErr_Print();
-		return -1;
-	}
-	Py_DECREF(res);
-	return noErr;
+        PyObject *handler = (PyObject *)refcon;
+        AEDescObject *requestObject, *replyObject;
+        PyObject *args, *res;
+        if ((requestObject = (AEDescObject *)AEDesc_New((AppleEvent *)request)) == NULL) {
+                return -1;
+        }
+        if ((replyObject = (AEDescObject *)AEDesc_New(reply)) == NULL) {
+                Py_DECREF(requestObject);
+                return -1;
+        }
+        if ((args = Py_BuildValue("OO", requestObject, replyObject)) == NULL) {
+                Py_DECREF(requestObject);
+                Py_DECREF(replyObject);
+                return -1;
+        }
+        res = PyEval_CallObject(handler, args);
+        requestObject->ob_itself.descriptorType = 'null';
+        requestObject->ob_itself.dataHandle = NULL;
+        replyObject->ob_itself.descriptorType = 'null';
+        replyObject->ob_itself.dataHandle = NULL;
+        Py_DECREF(args);
+        if (res == NULL) {
+                PySys_WriteStderr("Exception in AE event handler function\\n");
+                PyErr_Print();
+                return -1;
+        }
+        Py_DECREF(res);
+        return noErr;
 }
 
 PyObject *AEDesc_NewBorrowed(AEDesc *itself)
 {
-	PyObject *it;
-	
-	it = AEDesc_New(itself);
-	if (it)
-		((AEDescObject *)it)->ob_owned = 0;
-	return (PyObject *)it;
+        PyObject *it;
+
+        it = AEDesc_New(itself);
+        if (it)
+                ((AEDescObject *)it)->ob_owned = 0;
+        return (PyObject *)it;
 }
 
 """
 
 initstuff = initstuff + """
-	upp_AEIdleProc = NewAEIdleUPP(AEIdleProc);
-	upp_GenericEventHandler = NewAEEventHandlerUPP(GenericEventHandler);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(AEDesc *, AEDesc_New);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(AEDesc *, AEDesc_NewBorrowed);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(AEDesc, AEDesc_Convert);
+        upp_AEIdleProc = NewAEIdleUPP(AEIdleProc);
+        upp_GenericEventHandler = NewAEEventHandlerUPP(GenericEventHandler);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(AEDesc *, AEDesc_New);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(AEDesc *, AEDesc_NewBorrowed);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(AEDesc, AEDesc_Convert);
 """
 
 module = MacModule('_AE', 'AE', includestuff, finalstuff, initstuff)
 
 class AEDescDefinition(PEP253Mixin, GlobalObjectDefinition):
-	getsetlist = [(
-		'type',
-		'return PyMac_BuildOSType(self->ob_itself.descriptorType);',
-		None,
-		'Type of this AEDesc'
-		), (
-		'data',
-		"""
-		PyObject *res;
-		Size size;
-		char *ptr;
-		OSErr err;
-		
-		size = AEGetDescDataSize(&self->ob_itself);
-		if ( (res = PyString_FromStringAndSize(NULL, size)) == NULL )
-			return NULL;
-		if ( (ptr = PyString_AsString(res)) == NULL )
-			return NULL;
-		if ( (err=AEGetDescData(&self->ob_itself, ptr, size)) < 0 )
-			return PyMac_Error(err);	
-		return res;
-		""",
-		None,
-		'The raw data in this AEDesc'
-		)]
+    getsetlist = [(
+            'type',
+            'return PyMac_BuildOSType(self->ob_itself.descriptorType);',
+            None,
+            'Type of this AEDesc'
+            ), (
+            'data',
+            """
+            PyObject *res;
+            Size size;
+            char *ptr;
+            OSErr err;
 
-	def __init__(self, name, prefix = None, itselftype = None):
-		GlobalObjectDefinition.__init__(self, name, prefix or name, itselftype or name)
-		self.argref = "*"
+            size = AEGetDescDataSize(&self->ob_itself);
+            if ( (res = PyString_FromStringAndSize(NULL, size)) == NULL )
+                    return NULL;
+            if ( (ptr = PyString_AsString(res)) == NULL )
+                    return NULL;
+            if ( (err=AEGetDescData(&self->ob_itself, ptr, size)) < 0 )
+                    return PyMac_Error(err);
+            return res;
+            """,
+            None,
+            'The raw data in this AEDesc'
+            )]
 
-	def outputStructMembers(self):
-		GlobalObjectDefinition.outputStructMembers(self)
-		Output("int ob_owned;")
-		
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("it->ob_owned = 1;")
-		
-	def outputCleanupStructMembers(self):
-		Output("if (self->ob_owned) AEDisposeDesc(&self->ob_itself);")
+    def __init__(self, name, prefix = None, itselftype = None):
+        GlobalObjectDefinition.__init__(self, name, prefix or name, itselftype or name)
+        self.argref = "*"
+
+    def outputStructMembers(self):
+        GlobalObjectDefinition.outputStructMembers(self)
+        Output("int ob_owned;")
+
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("it->ob_owned = 1;")
+
+    def outputCleanupStructMembers(self):
+        Output("if (self->ob_owned) AEDisposeDesc(&self->ob_itself);")
 
 aedescobject = AEDescDefinition('AEDesc')
 module.addobject(aedescobject)
diff --git a/Mac/Modules/ah/ahscan.py b/Mac/Modules/ah/ahscan.py
index cced19f..0b7fe08 100644
--- a/Mac/Modules/ah/ahscan.py
+++ b/Mac/Modules/ah/ahscan.py
@@ -11,42 +11,42 @@
 OBJECT = "NOTUSED"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			]
+    def makeblacklistnames(self):
+        return [
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			]
+    def makeblacklisttypes(self):
+        return [
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/ah/ahsupport.py b/Mac/Modules/ah/ahsupport.py
index c91c298..c5f24be 100644
--- a/Mac/Modules/ah/ahsupport.py
+++ b/Mac/Modules/ah/ahsupport.py
@@ -6,13 +6,13 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'AppleHelp.h'		# The Apple header file
-MODNAME = '_AH'				# The name of the module
+MACHEADERFILE = 'AppleHelp.h'           # The Apple header file
+MODNAME = '_AH'                         # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Ah'			# The prefix for module-wide routines
+MODPREFIX = 'Ah'                        # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -43,4 +43,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/app/appscan.py b/Mac/Modules/app/appscan.py
index 822651d..1b04859 100644
--- a/Mac/Modules/app/appscan.py
+++ b/Mac/Modules/app/appscan.py
@@ -11,71 +11,71 @@
 OBJECT = "ThemeDrawingState"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			"GetThemeFont",		# Funny stringbuffer in/out parameter, I think...
-			# Constants with funny definitions
-			"appearanceBadBrushIndexErr",
-			"appearanceProcessRegisteredErr",
-			"appearanceProcessNotRegisteredErr",
-			"appearanceBadTextColorIndexErr",
-			"appearanceThemeHasNoAccents",
-			"appearanceBadCursorIndexErr",
-			]
+    def makeblacklistnames(self):
+        return [
+                "GetThemeFont",         # Funny stringbuffer in/out parameter, I think...
+                # Constants with funny definitions
+                "appearanceBadBrushIndexErr",
+                "appearanceProcessRegisteredErr",
+                "appearanceProcessNotRegisteredErr",
+                "appearanceBadTextColorIndexErr",
+                "appearanceThemeHasNoAccents",
+                "appearanceBadCursorIndexErr",
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"MenuTitleDrawingUPP",
-			"MenuItemDrawingUPP",
-			"ThemeIteratorUPP",
-			"ThemeTabTitleDrawUPP",
-#			"ThemeEraseUPP",
-#			"ThemeButtonDrawUPP",
-			"WindowTitleDrawingUPP",
-			"ProcessSerialNumber_ptr",		# Too much work for now.
-			"ThemeTrackDrawInfo_ptr", 	# Too much work
-#			"ThemeButtonDrawInfo_ptr",	# ditto
-			"ThemeWindowMetrics_ptr",	# ditto
-#			"ThemeDrawingState",	# This is an opaque pointer, so it should be simple. Later.
-			"Collection",		# No interface to collection mgr yet.
-			"BytePtr",		# Not yet.
-			]
+    def makeblacklisttypes(self):
+        return [
+                "MenuTitleDrawingUPP",
+                "MenuItemDrawingUPP",
+                "ThemeIteratorUPP",
+                "ThemeTabTitleDrawUPP",
+#                       "ThemeEraseUPP",
+#                       "ThemeButtonDrawUPP",
+                "WindowTitleDrawingUPP",
+                "ProcessSerialNumber_ptr",              # Too much work for now.
+                "ThemeTrackDrawInfo_ptr",       # Too much work
+#                       "ThemeButtonDrawInfo_ptr",      # ditto
+                "ThemeWindowMetrics_ptr",       # ditto
+#                       "ThemeDrawingState",    # This is an opaque pointer, so it should be simple. Later.
+                "Collection",           # No interface to collection mgr yet.
+                "BytePtr",              # Not yet.
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("void", 'inContext', "OutMode")],
-			 [("NULL", 'inContext', "InMode")]),
-			([("Point", 'ioBounds', "OutMode")],
-			 [("Point", 'ioBounds', "InOutMode")]),
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ([("void", 'inContext', "OutMode")],
+                 [("NULL", 'inContext', "InMode")]),
+                ([("Point", 'ioBounds', "OutMode")],
+                 [("Point", 'ioBounds', "InOutMode")]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/app/appsupport.py b/Mac/Modules/app/appsupport.py
index a9d8768..177dfd5 100644
--- a/Mac/Modules/app/appsupport.py
+++ b/Mac/Modules/app/appsupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Appearance.h'		# The Apple header file
-MODNAME = '_App'				# The name of the module
-OBJECTNAME = 'ThemeDrawingState'			# The basic name of the objects used here
-KIND = ''				# Usually 'Ptr' or 'Handle'
+MACHEADERFILE = 'Appearance.h'          # The Apple header file
+MODNAME = '_App'                                # The name of the module
+OBJECTNAME = 'ThemeDrawingState'                        # The basic name of the objects used here
+KIND = ''                               # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'App'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + KIND		# The C type used to represent them
-OBJECTPREFIX = OBJECTNAME + 'Obj'	# The prefix for object methods
+MODPREFIX = 'App'                       # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + KIND          # The C type used to represent them
+OBJECTPREFIX = OBJECTNAME + 'Obj'       # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -84,24 +84,24 @@
 
 int ThemeButtonDrawInfo_Convert(PyObject *v, ThemeButtonDrawInfo *p_itself)
 {
-	return PyArg_Parse(v, "(iHH)", &p_itself->state, &p_itself->value, &p_itself->adornment);
+        return PyArg_Parse(v, "(iHH)", &p_itself->state, &p_itself->value, &p_itself->adornment);
 }
 
 """
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	pass
-## 	def outputCheckNewArg(self):
-## 		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-## 	def outputCheckConvertArg(self):
-## 		OutLbrace("if (DlgObj_Check(v))")
-## 		Output("*p_itself = ((WindowObject *)v)->ob_itself;")
-## 		Output("return 1;")
-## 		OutRbrace()
-## 		Out("""
-## 		if (v == Py_None) { *p_itself = NULL; return 1; }
-## 		if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
-## 		""")
+    pass
+##      def outputCheckNewArg(self):
+##              Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+##      def outputCheckConvertArg(self):
+##              OutLbrace("if (DlgObj_Check(v))")
+##              Output("*p_itself = ((WindowObject *)v)->ob_itself;")
+##              Output("return 1;")
+##              OutRbrace()
+##              Out("""
+##              if (v == Py_None) { *p_itself = NULL; return 1; }
+##              if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
+##              """)
 
 # From here on it's basically all boiler plate...
 
@@ -131,4 +131,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/carbonevt/CarbonEvtscan.py b/Mac/Modules/carbonevt/CarbonEvtscan.py
index c6bf93f..e3c72ae 100644
--- a/Mac/Modules/carbonevt/CarbonEvtscan.py
+++ b/Mac/Modules/carbonevt/CarbonEvtscan.py
@@ -12,106 +12,106 @@
 from scantools import Scanner, Scanner_OSX
 
 def main():
-	print "---Scanning CarbonEvents.h---"
-	input = ["CarbonEvents.h"]
-	output = "CarbonEventsgen.py"
-	defsoutput = TOOLBOXDIR + "CarbonEvents.py"
-	scanner = CarbonEvents_Scanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "--done scanning, importing--"
-	import CarbonEvtsupport
-	print "done"
+    print "---Scanning CarbonEvents.h---"
+    input = ["CarbonEvents.h"]
+    output = "CarbonEventsgen.py"
+    defsoutput = TOOLBOXDIR + "CarbonEvents.py"
+    scanner = CarbonEvents_Scanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "--done scanning, importing--"
+    import CarbonEvtsupport
+    print "done"
 
-RefObjectTypes = ["EventRef", 
-				"EventQueueRef", 
-				"EventLoopRef",
-				"EventLoopTimerRef",
-				"EventHandlerRef",
-				"EventHandlerCallRef",
-				"EventTargetRef",
-				"EventHotKeyRef",
-				]
+RefObjectTypes = ["EventRef",
+                                "EventQueueRef",
+                                "EventLoopRef",
+                                "EventLoopTimerRef",
+                                "EventHandlerRef",
+                                "EventHandlerCallRef",
+                                "EventTargetRef",
+                                "EventHotKeyRef",
+                                ]
 
 class CarbonEvents_Scanner(Scanner_OSX):
-	def destination(self, type, name, arglist):
-		classname = "CarbonEventsFunction"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in RefObjectTypes and m == "InMode":
-				if t == "EventHandlerRef":
-					classname = "EventHandlerRefMethod"
-				else:
-					classname = "CarbonEventsMethod"
-				listname = t + "methods"
-			#else:
-			#	print "not method"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "CarbonEventsFunction"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in RefObjectTypes and m == "InMode":
+                if t == "EventHandlerRef":
+                    classname = "EventHandlerRefMethod"
+                else:
+                    classname = "CarbonEventsMethod"
+                listname = t + "methods"
+            #else:
+            #       print "not method"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("false = 0\n")
-		self.defsfile.write("true = 1\n")
-		self.defsfile.write("keyAEEventClass = FOUR_CHAR_CODE('evcl')\n")
-		self.defsfile.write("keyAEEventID = FOUR_CHAR_CODE('evti')\n")
-	
-	def makeblacklistnames(self):
-		return [
-			"sHandler",
-			"MacCreateEvent",
-#			"TrackMouseLocationWithOptions",
-#			"TrackMouseLocation",
-#			"TrackMouseRegion",
-			"RegisterToolboxObjectClass",
-			"UnregisterToolboxObjectClass",
-			"ProcessHICommand",
-			"GetCFRunLoopFromEventLoop",
-			
-			"InvokeEventHandlerUPP",
-			"InvokeEventComparatorUPP",
-			"InvokeEventLoopTimerUPP",
-			"NewEventComparatorUPP",
-			"NewEventLoopTimerUPP",
-			"NewEventHandlerUPP",
-			"DisposeEventComparatorUPP",
-			"DisposeEventLoopTimerUPP",
-			"DisposeEventHandlerUPP",
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("false = 0\n")
+        self.defsfile.write("true = 1\n")
+        self.defsfile.write("keyAEEventClass = FOUR_CHAR_CODE('evcl')\n")
+        self.defsfile.write("keyAEEventID = FOUR_CHAR_CODE('evti')\n")
 
-			# Wrote by hand
-			"InstallEventHandler",
-			"RemoveEventHandler",
-						
-			# Write by hand?
-			"GetEventParameter",
-			"FlushSpecificEventsFromQueue",
-			"FindSpecificEventInQueue",
-			"InstallEventLoopTimer",
+    def makeblacklistnames(self):
+        return [
+                "sHandler",
+                "MacCreateEvent",
+#                       "TrackMouseLocationWithOptions",
+#                       "TrackMouseLocation",
+#                       "TrackMouseRegion",
+                "RegisterToolboxObjectClass",
+                "UnregisterToolboxObjectClass",
+                "ProcessHICommand",
+                "GetCFRunLoopFromEventLoop",
 
-			# Don't do these because they require a CFRelease
-			"CreateTypeStringWithOSType",
-			"CopyEvent",
-			]
+                "InvokeEventHandlerUPP",
+                "InvokeEventComparatorUPP",
+                "InvokeEventLoopTimerUPP",
+                "NewEventComparatorUPP",
+                "NewEventLoopTimerUPP",
+                "NewEventHandlerUPP",
+                "DisposeEventComparatorUPP",
+                "DisposeEventLoopTimerUPP",
+                "DisposeEventHandlerUPP",
 
-#	def makeblacklisttypes(self):
-#		return ["EventComparatorUPP",
-#				"EventLoopTimerUPP",
-#				#"EventHandlerUPP",
-#				"EventComparatorProcPtr",
-#				"EventLoopTimerProcPtr",
-#				"EventHandlerProcPtr",
-#				]
+                # Wrote by hand
+                "InstallEventHandler",
+                "RemoveEventHandler",
 
-	def makerepairinstructions(self):
-		return [
-			([("UInt32", 'inSize', "InMode"), ("void_ptr", 'inDataPtr', "InMode")],
-			 [("MyInBuffer", 'inDataPtr', "InMode")]),
-			([("Boolean", 'ioWasInRgn', "OutMode")],
-			 [("Boolean", 'ioWasInRgn', "InOutMode")]),
-		]
+                # Write by hand?
+                "GetEventParameter",
+                "FlushSpecificEventsFromQueue",
+                "FindSpecificEventInQueue",
+                "InstallEventLoopTimer",
+
+                # Don't do these because they require a CFRelease
+                "CreateTypeStringWithOSType",
+                "CopyEvent",
+                ]
+
+#       def makeblacklisttypes(self):
+#               return ["EventComparatorUPP",
+#                               "EventLoopTimerUPP",
+#                               #"EventHandlerUPP",
+#                               "EventComparatorProcPtr",
+#                               "EventLoopTimerProcPtr",
+#                               "EventHandlerProcPtr",
+#                               ]
+
+    def makerepairinstructions(self):
+        return [
+                ([("UInt32", 'inSize', "InMode"), ("void_ptr", 'inDataPtr', "InMode")],
+                 [("MyInBuffer", 'inDataPtr', "InMode")]),
+                ([("Boolean", 'ioWasInRgn', "OutMode")],
+                 [("Boolean", 'ioWasInRgn', "InOutMode")]),
+        ]
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/carbonevt/CarbonEvtsupport.py b/Mac/Modules/carbonevt/CarbonEvtsupport.py
index 3cc1672..77d12b6 100644
--- a/Mac/Modules/carbonevt/CarbonEvtsupport.py
+++ b/Mac/Modules/carbonevt/CarbonEvtsupport.py
@@ -8,23 +8,23 @@
 CFStringRef = OpaqueByValueType('CFStringRef')
 
 for typ in RefObjectTypes:
-	execstr = "%(name)s = OpaqueByValueType('%(name)s')" % {"name": typ}
-	exec execstr
+    execstr = "%(name)s = OpaqueByValueType('%(name)s')" % {"name": typ}
+    exec execstr
 
 
 if 0:
-	# these types will have no methods and will merely be opaque blobs
-	# should write getattr and setattr for them?
+    # these types will have no methods and will merely be opaque blobs
+    # should write getattr and setattr for them?
 
-	StructObjectTypes = ["EventTypeSpec",
-						"HIPoint",
-						"HICommand",
-						"EventHotKeyID",
-						]
+    StructObjectTypes = ["EventTypeSpec",
+                                            "HIPoint",
+                                            "HICommand",
+                                            "EventHotKeyID",
+                                            ]
 
-	for typ in StructObjectTypes:
-		execstr = "%(name)s = OpaqueType('%(name)s')" % {"name": typ}
-		exec execstr
+    for typ in StructObjectTypes:
+        execstr = "%(name)s = OpaqueType('%(name)s')" % {"name": typ}
+        exec execstr
 
 EventHotKeyID = OpaqueByValueType("EventHotKeyID", "EventHotKeyID")
 EventTypeSpec_ptr = OpaqueType("EventTypeSpec", "EventTypeSpec")
@@ -35,10 +35,10 @@
 # here are some types that are really other types
 
 class MyVarInputBufferType(VarInputBufferType):
-	def passInput(self, name):
-		return "%s__len__, %s__in__" % (name, name)
+    def passInput(self, name):
+        return "%s__len__, %s__in__" % (name, name)
 
-MyInBuffer = MyVarInputBufferType('char', 'long', 'l')		# (buf, len)
+MyInBuffer = MyVarInputBufferType('char', 'long', 'l')          # (buf, len)
 
 EventTime = double
 EventTimeout = EventTime
@@ -61,11 +61,11 @@
 CarbonEventsMethod = OSErrMethodGenerator
 
 class EventHandlerRefMethod(OSErrMethodGenerator):
-	def precheck(self):
-		OutLbrace('if (_self->ob_itself == NULL)')
-		Output('PyErr_SetString(CarbonEvents_Error, "Handler has been removed");')
-		Output('return NULL;')
-		OutRbrace()
+    def precheck(self):
+        OutLbrace('if (_self->ob_itself == NULL)')
+        Output('PyErr_SetString(CarbonEvents_Error, "Handler has been removed");')
+        Output('return NULL;')
+        OutRbrace()
 
 
 RgnHandle = OpaqueByValueType("RgnHandle", "ResObj")
@@ -89,17 +89,17 @@
 static PyObject*
 EventTypeSpec_New(EventTypeSpec *in)
 {
-	return Py_BuildValue("ll", in->eventClass, in->eventKind);
+        return Py_BuildValue("ll", in->eventClass, in->eventKind);
 }
 
 static int
 EventTypeSpec_Convert(PyObject *v, EventTypeSpec *out)
 {
-	if (PyArg_Parse(v, "(O&l)",
-	                PyMac_GetOSType, &(out->eventClass),
-	                &(out->eventKind)))
-		return 1;
-	return NULL;
+        if (PyArg_Parse(v, "(O&l)",
+                        PyMac_GetOSType, &(out->eventClass),
+                        &(out->eventKind)))
+                return 1;
+        return NULL;
 }
 
 /********** end EventTypeSpec *******/
@@ -110,15 +110,15 @@
 static PyObject*
 HIPoint_New(HIPoint *in)
 {
-	return Py_BuildValue("ff", in->x, in->y);
+        return Py_BuildValue("ff", in->x, in->y);
 }
 
 static int
 HIPoint_Convert(PyObject *v, HIPoint *out)
 {
-	if (PyArg_ParseTuple(v, "ff", &(out->x), &(out->y)))
-		return 1;
-	return NULL;
+        if (PyArg_ParseTuple(v, "ff", &(out->x), &(out->y)))
+                return 1;
+        return NULL;
 }
 #endif
 
@@ -129,15 +129,15 @@
 static PyObject*
 EventHotKeyID_New(EventHotKeyID *in)
 {
-	return Py_BuildValue("ll", in->signature, in->id);
+        return Py_BuildValue("ll", in->signature, in->id);
 }
 
 static int
 EventHotKeyID_Convert(PyObject *v, EventHotKeyID *out)
 {
-	if (PyArg_ParseTuple(v, "ll", &out->signature, &out->id))
-		return 1;
-	return NULL;
+        if (PyArg_ParseTuple(v, "ll", &out->signature, &out->id))
+                return 1;
+        return NULL;
 }
 
 /********** end EventHotKeyID *******/
@@ -148,27 +148,27 @@
 
 static pascal OSStatus
 myEventHandler(EventHandlerCallRef handlerRef, EventRef event, void *outPyObject) {
-	PyObject *retValue;
-	int status;
+        PyObject *retValue;
+        int status;
 
-	retValue = PyObject_CallFunction((PyObject *)outPyObject, "O&O&",
-	                                 EventHandlerCallRef_New, handlerRef,
-	                                 EventRef_New, event);
-	if (retValue == NULL) {
-		PySys_WriteStderr("Error in event handler callback:\n");
-		PyErr_Print();  /* this also clears the error */
-		status = noErr; /* complain? how? */
-	} else {
-		if (retValue == Py_None)
-			status = noErr;
-		else if (PyInt_Check(retValue)) {
-			status = PyInt_AsLong(retValue);
-		} else
-			status = noErr; /* wrong object type, complain? */
-		Py_DECREF(retValue);
-	}
+        retValue = PyObject_CallFunction((PyObject *)outPyObject, "O&O&",
+                                         EventHandlerCallRef_New, handlerRef,
+                                         EventRef_New, event);
+        if (retValue == NULL) {
+                PySys_WriteStderr("Error in event handler callback:\n");
+                PyErr_Print();  /* this also clears the error */
+                status = noErr; /* complain? how? */
+        } else {
+                if (retValue == Py_None)
+                        status = noErr;
+                else if (PyInt_Check(retValue)) {
+                        status = PyInt_AsLong(retValue);
+                } else
+                        status = noErr; /* wrong object type, complain? */
+                Py_DECREF(retValue);
+        }
 
-	return status;
+        return status;
 }
 
 /******** end myEventHandler ***********/
@@ -184,56 +184,56 @@
 
 
 class EventHandlerRefObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputStructMembers(self):
-		Output("%s ob_itself;", self.itselftype)
-		Output("PyObject *ob_callback;")
-	def outputInitStructMembers(self):
-		Output("it->ob_itself = %sitself;", self.argref)
-		Output("it->ob_callback = NULL;")
-	def outputFreeIt(self, name):
-		OutLbrace("if (self->ob_itself != NULL)")
-		Output("RemoveEventHandler(self->ob_itself);")
-		Output("Py_DECREF(self->ob_callback);")
-		OutRbrace()
-		
+    def outputStructMembers(self):
+        Output("%s ob_itself;", self.itselftype)
+        Output("PyObject *ob_callback;")
+    def outputInitStructMembers(self):
+        Output("it->ob_itself = %sitself;", self.argref)
+        Output("it->ob_callback = NULL;")
+    def outputFreeIt(self, name):
+        OutLbrace("if (self->ob_itself != NULL)")
+        Output("RemoveEventHandler(self->ob_itself);")
+        Output("Py_DECREF(self->ob_callback);")
+        OutRbrace()
+
 class MyGlobalObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	pass
+    pass
 
 for typ in RefObjectTypes:
-	if typ == 'EventHandlerRef':
-		EventHandlerRefobject = EventHandlerRefObjectDefinition('EventHandlerRef')
-	else:
-		execstr = typ + 'object = MyGlobalObjectDefinition(typ)'
-		exec execstr
-	module.addobject(eval(typ + 'object'))
+    if typ == 'EventHandlerRef':
+        EventHandlerRefobject = EventHandlerRefObjectDefinition('EventHandlerRef')
+    else:
+        execstr = typ + 'object = MyGlobalObjectDefinition(typ)'
+        exec execstr
+    module.addobject(eval(typ + 'object'))
 
 
 functions = []
 for typ in RefObjectTypes: ## go thru all ObjectTypes as defined in CarbonEventsscan.py
-	# initialize the lists for carbongen to fill
-	execstr = typ + 'methods = []'
-	exec execstr
+    # initialize the lists for carbongen to fill
+    execstr = typ + 'methods = []'
+    exec execstr
 
 execfile('CarbonEventsgen.py')
 
 
 
-for f in functions: module.add(f)	# add all the functions carboneventsgen put in the list
+for f in functions: module.add(f)       # add all the functions carboneventsgen put in the list
 
-for typ in RefObjectTypes:				 ## go thru all ObjectTypes as defined in CarbonEventsscan.py
-	methods = eval(typ + 'methods')  ## get a reference to the method list from the main namespace
-	obj = eval(typ + 'object')		  ## get a reference to the object
-	for m in methods: obj.add(m)	## add each method in the list to the object
+for typ in RefObjectTypes:                               ## go thru all ObjectTypes as defined in CarbonEventsscan.py
+    methods = eval(typ + 'methods')  ## get a reference to the method list from the main namespace
+    obj = eval(typ + 'object')                ## get a reference to the object
+    for m in methods: obj.add(m)    ## add each method in the list to the object
 
 
 removeeventhandler = """
 OSStatus _err;
 if (_self->ob_itself == NULL) {
-	PyErr_SetString(CarbonEvents_Error, "Handler has been removed");
-	return NULL;
+        PyErr_SetString(CarbonEvents_Error, "Handler has been removed");
+        return NULL;
 }
 if (!PyArg_ParseTuple(_args, ""))
-	return NULL;
+        return NULL;
 _err = RemoveEventHandler(_self->ob_itself);
 if (_err != noErr) return PyMac_Error(_err);
 _self->ob_itself = NULL;
@@ -255,15 +255,15 @@
 OSStatus _err;
 
 if (!PyArg_ParseTuple(_args, "O&O", EventTypeSpec_Convert, &inSpec, &callback))
-	return NULL;
+        return NULL;
 
 _err = InstallEventHandler(_self->ob_itself, myEventHandlerUPP, 1, &inSpec, (void *)callback, &outRef);
 if (_err != noErr) return PyMac_Error(_err);
 
 _res = EventHandlerRef_New(outRef);
 if (_res != NULL) {
-	((EventHandlerRefObject*)_res)->ob_callback = callback;
-	Py_INCREF(callback);
+        ((EventHandlerRefObject*)_res)->ob_callback = callback;
+        Py_INCREF(callback);
 }
 return _res;"""
 
diff --git a/Mac/Modules/cf/cfscan.py b/Mac/Modules/cf/cfscan.py
index aa0ea3d..d2de92e 100644
--- a/Mac/Modules/cf/cfscan.py
+++ b/Mac/Modules/cf/cfscan.py
@@ -8,135 +8,135 @@
 
 LONG = "CoreFoundation"
 SHORT = "cf"
-OBJECTS = ("CFTypeRef", 
-		"CFArrayRef", "CFMutableArrayRef",
-		"CFDataRef", "CFMutableDataRef",
-		"CFDictionaryRef", "CFMutableDictionaryRef",
-		"CFStringRef", "CFMutableStringRef",
-		"CFURLRef",
-##		"CFPropertyListRef",
-		)
+OBJECTS = ("CFTypeRef",
+                "CFArrayRef", "CFMutableArrayRef",
+                "CFDataRef", "CFMutableDataRef",
+                "CFDictionaryRef", "CFMutableDictionaryRef",
+                "CFStringRef", "CFMutableStringRef",
+                "CFURLRef",
+##              "CFPropertyListRef",
+                )
 # ADD object typenames here
 
 def main():
-	input = [
-		"CFBase.h",
-		"CFArray.h",
-##		"CFBag.h",
-##		"CFBundle.h",
-##		"CFCharacterSet.h",
-		"CFData.h",
-##		"CFDate.h",
-		"CFDictionary.h",
-##		"CFNumber.h",
-##		"CFPlugIn.h",
-		"CFPreferences.h",
-		"CFPropertyList.h",
-##		"CFSet.h",
-		"CFString.h",
-##		"CFStringEncodingExt.h",
-##		"CFTimeZone.h",
-		"CFURL.h",
-		]
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.gentypetest(SHORT+"typetest.py")
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = [
+            "CFBase.h",
+            "CFArray.h",
+##              "CFBag.h",
+##              "CFBundle.h",
+##              "CFCharacterSet.h",
+            "CFData.h",
+##              "CFDate.h",
+            "CFDictionary.h",
+##              "CFNumber.h",
+##              "CFPlugIn.h",
+            "CFPreferences.h",
+            "CFPropertyList.h",
+##              "CFSet.h",
+            "CFString.h",
+##              "CFStringEncodingExt.h",
+##              "CFTimeZone.h",
+            "CFURL.h",
+            ]
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.gentypetest(SHORT+"typetest.py")
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist and name[:13] != 'CFPreferences':
-			t, n, m = arglist[0]
-			if t in OBJECTS and m == "InMode":
-				classname = "Method"
-				listname = t + "_methods"
-			# Special case for the silly first AllocatorRef argument
-			if t == 'CFAllocatorRef' and m == 'InMode' and len(arglist) > 1:
-				t, n, m = arglist[1]
-				if t in OBJECTS and m == "InMode":
-					classname = "MethodSkipArg1"
-					listname = t + "_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist and name[:13] != 'CFPreferences':
+            t, n, m = arglist[0]
+            if t in OBJECTS and m == "InMode":
+                classname = "Method"
+                listname = t + "_methods"
+            # Special case for the silly first AllocatorRef argument
+            if t == 'CFAllocatorRef' and m == 'InMode' and len(arglist) > 1:
+                t, n, m = arglist[1]
+                if t in OBJECTS and m == "InMode":
+                    classname = "MethodSkipArg1"
+                    listname = t + "_methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			# Memory allocator functions
-			"CFAllocatorGetDefault",
-			"CFAllocatorSetDefault",
-			"CFAllocatorAllocate",
-			"CFAllocatorReallocate",
-			"CFAllocatorDeallocate",
-			"CFGetAllocator",
-			# Array functions we skip for now.
-			"CFArrayGetValueAtIndex",
-			# Data pointer functions. Skip for now.
-			"CFDataGetBytePtr",
-			"CFDataGetMutableBytePtr",
-			"CFDataGetBytes",   # XXXX Should support this one
-			# String functions
-			"CFStringGetPascalString", # Use the C-string methods.
-			"CFStringGetPascalStringPtr", # TBD automatically
-			"CFStringGetCStringPtr", 
-			"CFStringGetCharactersPtr",
-			"CFStringGetCString", 
-			"CFStringGetCharacters",
-			"CFURLCreateStringWithFileSystemPath", # Gone in later releases
-			"CFStringCreateMutableWithExternalCharactersNoCopy", # Not a clue...
-			"CFStringSetExternalCharactersNoCopy",
-			"CFStringGetCharacterAtIndex", # No format for single unichars yet.
-			"kCFStringEncodingInvalidId", # incompatible constant declaration
-			"CFPropertyListCreateFromXMLData", # Manually generated
-			]
+    def makeblacklistnames(self):
+        return [
+                # Memory allocator functions
+                "CFAllocatorGetDefault",
+                "CFAllocatorSetDefault",
+                "CFAllocatorAllocate",
+                "CFAllocatorReallocate",
+                "CFAllocatorDeallocate",
+                "CFGetAllocator",
+                # Array functions we skip for now.
+                "CFArrayGetValueAtIndex",
+                # Data pointer functions. Skip for now.
+                "CFDataGetBytePtr",
+                "CFDataGetMutableBytePtr",
+                "CFDataGetBytes",   # XXXX Should support this one
+                # String functions
+                "CFStringGetPascalString", # Use the C-string methods.
+                "CFStringGetPascalStringPtr", # TBD automatically
+                "CFStringGetCStringPtr",
+                "CFStringGetCharactersPtr",
+                "CFStringGetCString",
+                "CFStringGetCharacters",
+                "CFURLCreateStringWithFileSystemPath", # Gone in later releases
+                "CFStringCreateMutableWithExternalCharactersNoCopy", # Not a clue...
+                "CFStringSetExternalCharactersNoCopy",
+                "CFStringGetCharacterAtIndex", # No format for single unichars yet.
+                "kCFStringEncodingInvalidId", # incompatible constant declaration
+                "CFPropertyListCreateFromXMLData", # Manually generated
+                ]
 
-	def makegreylist(self):
-		return []
+    def makegreylist(self):
+        return []
 
-	def makeblacklisttypes(self):
-		return [
-			"CFComparatorFunction", # Callback function pointer
-			"CFAllocatorContext", # Not interested in providing our own allocator
-			"void_ptr_ptr",  # Tricky. This is the initializer for arrays...
-			"void_ptr", # Ditto for various array lookup methods
-			"CFArrayApplierFunction", # Callback function pointer
-			"CFDictionaryApplierFunction", # Callback function pointer
-			"va_list", # For printf-to-a-cfstring. Use Python.
-			"const_CFStringEncoding_ptr", # To be done, I guess
-			]
+    def makeblacklisttypes(self):
+        return [
+                "CFComparatorFunction", # Callback function pointer
+                "CFAllocatorContext", # Not interested in providing our own allocator
+                "void_ptr_ptr",  # Tricky. This is the initializer for arrays...
+                "void_ptr", # Ditto for various array lookup methods
+                "CFArrayApplierFunction", # Callback function pointer
+                "CFDictionaryApplierFunction", # Callback function pointer
+                "va_list", # For printf-to-a-cfstring. Use Python.
+                "const_CFStringEncoding_ptr", # To be done, I guess
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			# Buffers in CF seem to be passed as UInt8 * normally.
-			([("UInt8_ptr", "*", "InMode"), ("CFIndex", "*", "InMode")],
-			 [("UcharInBuffer", "*", "*")]),
-			 
-			([("UniChar_ptr", "*", "InMode"), ("CFIndex", "*", "InMode")],
-			 [("UnicodeInBuffer", "*", "*")]),
+    def makerepairinstructions(self):
+        return [
+                # Buffers in CF seem to be passed as UInt8 * normally.
+                ([("UInt8_ptr", "*", "InMode"), ("CFIndex", "*", "InMode")],
+                 [("UcharInBuffer", "*", "*")]),
 
-			# Some functions return a const char *. Don't worry, we won't modify it.
-			([("const_char_ptr", "*", "ReturnMode")],
-			 [("return_stringptr", "*", "*")]),
-			 
-			# base URLs are optional (pass None for NULL)
-			([("CFURLRef", "baseURL", "InMode")],
-			 [("OptionalCFURLRef", "*", "*")]),
-			 
-			# We handle CFPropertyListRef objects as plain CFTypeRef
-			([("CFPropertyListRef", "*", "*")],
-			 [("CFTypeRef", "*", "*")]),
-			]
-			
+                ([("UniChar_ptr", "*", "InMode"), ("CFIndex", "*", "InMode")],
+                 [("UnicodeInBuffer", "*", "*")]),
+
+                # Some functions return a const char *. Don't worry, we won't modify it.
+                ([("const_char_ptr", "*", "ReturnMode")],
+                 [("return_stringptr", "*", "*")]),
+
+                # base URLs are optional (pass None for NULL)
+                ([("CFURLRef", "baseURL", "InMode")],
+                 [("OptionalCFURLRef", "*", "*")]),
+
+                # We handle CFPropertyListRef objects as plain CFTypeRef
+                ([("CFPropertyListRef", "*", "*")],
+                 [("CFTypeRef", "*", "*")]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/cf/cfsupport.py b/Mac/Modules/cf/cfsupport.py
index 95aeaa7..87b9a6f 100644
--- a/Mac/Modules/cf/cfsupport.py
+++ b/Mac/Modules/cf/cfsupport.py
@@ -8,35 +8,35 @@
 import string
 
 # Declarations that change for each manager
-MODNAME = '_CF'				# The name of the module
+MODNAME = '_CF'                         # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'CF'			# The prefix for module-wide routines
+MODPREFIX = 'CF'                        # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
 # Special case generator for the functions that have an AllocatorRef first argument,
 # which we skip anyway, and the object as the second arg.
 class MethodSkipArg1(MethodGenerator):
-	"""Similar to MethodGenerator, but has self as last argument"""
+    """Similar to MethodGenerator, but has self as last argument"""
 
-	def parseArgumentList(self, args):
-		if len(args) < 2:
-			raise ValueError, "MethodSkipArg1 expects at least 2 args"
-		a0, a1, args = args[0], args[1], args[2:]
-		t0, n0, m0 = a0
-		if t0 != "CFAllocatorRef" and m0 != InMode:
-			raise ValueError, "MethodSkipArg1 should have dummy AllocatorRef first arg"
-		t1, n1, m1 = a1
-		if m1 != InMode:
-			raise ValueError, "method's 'self' must be 'InMode'"
-		dummy = Variable(t0, n0, m0)
-		self.argumentList.append(dummy)
-		self.itself = Variable(t1, "_self->ob_itself", SelfMode)
-		self.argumentList.append(self.itself)
-		FunctionGenerator.parseArgumentList(self, args)
+    def parseArgumentList(self, args):
+        if len(args) < 2:
+            raise ValueError, "MethodSkipArg1 expects at least 2 args"
+        a0, a1, args = args[0], args[1], args[2:]
+        t0, n0, m0 = a0
+        if t0 != "CFAllocatorRef" and m0 != InMode:
+            raise ValueError, "MethodSkipArg1 should have dummy AllocatorRef first arg"
+        t1, n1, m1 = a1
+        if m1 != InMode:
+            raise ValueError, "method's 'self' must be 'InMode'"
+        dummy = Variable(t0, n0, m0)
+        self.argumentList.append(dummy)
+        self.itself = Variable(t1, "_self->ob_itself", SelfMode)
+        self.argumentList.append(self.itself)
+        FunctionGenerator.parseArgumentList(self, args)
 
 
 # Create the type objects
@@ -111,19 +111,19 @@
 PyObject *CFRange_New(CFRange *itself)
 {
 
-	return Py_BuildValue("ll", (long)itself->location, (long)itself->length);
+        return Py_BuildValue("ll", (long)itself->location, (long)itself->length);
 }
 
 int
 CFRange_Convert(PyObject *v, CFRange *p_itself)
 {
-	long location, length;
-	
-	if( !PyArg_ParseTuple(v, "ll", &location, &length) )
-		return 0;
-	p_itself->location = (CFIndex)location;
-	p_itself->length = (CFIndex)length;
-	return 1;
+        long location, length;
+
+        if( !PyArg_ParseTuple(v, "ll", &location, &length) )
+                return 0;
+        p_itself->location = (CFIndex)location;
+        p_itself->length = (CFIndex)length;
+        return 1;
 }
 
 /* Optional CFURL argument or None (passed as NULL) */
@@ -131,8 +131,8 @@
 OptionalCFURLRefObj_Convert(PyObject *v, CFURLRef *p_itself)
 {
     if ( v == Py_None ) {
-    	p_itself = NULL;
-    	return 1;
+        p_itself = NULL;
+        return 1;
     }
     return CFURLRefObj_Convert(v, p_itself);
 }
@@ -143,42 +143,42 @@
 /* Routines to convert any CF type to/from the corresponding CFxxxObj */
 PyObject *CFObj_New(CFTypeRef itself)
 {
-	if (itself == NULL)
-	{
-		PyErr_SetString(PyExc_RuntimeError, "cannot wrap NULL");
-		return NULL;
-	}
-	if (CFGetTypeID(itself) == CFArrayGetTypeID()) return CFArrayRefObj_New((CFArrayRef)itself);
-	if (CFGetTypeID(itself) == CFDictionaryGetTypeID()) return CFDictionaryRefObj_New((CFDictionaryRef)itself);
-	if (CFGetTypeID(itself) == CFDataGetTypeID()) return CFDataRefObj_New((CFDataRef)itself);
-	if (CFGetTypeID(itself) == CFStringGetTypeID()) return CFStringRefObj_New((CFStringRef)itself);
-	if (CFGetTypeID(itself) == CFURLGetTypeID()) return CFURLRefObj_New((CFURLRef)itself);
-	/* XXXX Or should we use PyCF_CF2Python here?? */
-	return CFTypeRefObj_New(itself);
+        if (itself == NULL)
+        {
+                PyErr_SetString(PyExc_RuntimeError, "cannot wrap NULL");
+                return NULL;
+        }
+        if (CFGetTypeID(itself) == CFArrayGetTypeID()) return CFArrayRefObj_New((CFArrayRef)itself);
+        if (CFGetTypeID(itself) == CFDictionaryGetTypeID()) return CFDictionaryRefObj_New((CFDictionaryRef)itself);
+        if (CFGetTypeID(itself) == CFDataGetTypeID()) return CFDataRefObj_New((CFDataRef)itself);
+        if (CFGetTypeID(itself) == CFStringGetTypeID()) return CFStringRefObj_New((CFStringRef)itself);
+        if (CFGetTypeID(itself) == CFURLGetTypeID()) return CFURLRefObj_New((CFURLRef)itself);
+        /* XXXX Or should we use PyCF_CF2Python here?? */
+        return CFTypeRefObj_New(itself);
 }
 int CFObj_Convert(PyObject *v, CFTypeRef *p_itself)
 {
 
-	if (v == Py_None) { *p_itself = NULL; return 1; }
-	/* Check for other CF objects here */
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        /* Check for other CF objects here */
 
-	if (!CFTypeRefObj_Check(v) &&
-		!CFArrayRefObj_Check(v) &&
-		!CFMutableArrayRefObj_Check(v) &&
-		!CFDictionaryRefObj_Check(v) &&
-		!CFMutableDictionaryRefObj_Check(v) &&
-		!CFDataRefObj_Check(v) &&
-		!CFMutableDataRefObj_Check(v) &&
-		!CFStringRefObj_Check(v) &&
-		!CFMutableStringRefObj_Check(v) &&
-		!CFURLRefObj_Check(v) )
-	{
-		/* XXXX Or should we use PyCF_Python2CF here?? */
-		PyErr_SetString(PyExc_TypeError, "CF object required");
-		return 0;
-	}
-	*p_itself = ((CFTypeRefObject *)v)->ob_itself;
-	return 1;
+        if (!CFTypeRefObj_Check(v) &&
+                !CFArrayRefObj_Check(v) &&
+                !CFMutableArrayRefObj_Check(v) &&
+                !CFDictionaryRefObj_Check(v) &&
+                !CFMutableDictionaryRefObj_Check(v) &&
+                !CFDataRefObj_Check(v) &&
+                !CFMutableDataRefObj_Check(v) &&
+                !CFStringRefObj_Check(v) &&
+                !CFMutableStringRefObj_Check(v) &&
+                !CFURLRefObj_Check(v) )
+        {
+                /* XXXX Or should we use PyCF_Python2CF here?? */
+                PyErr_SetString(PyExc_TypeError, "CF object required");
+                return 0;
+        }
+        *p_itself = ((CFTypeRefObject *)v)->ob_itself;
+        return 1;
 }
 """
 
@@ -225,7 +225,7 @@
 CFURLPathStyle = Type("CFURLPathStyle", "l") #  a bit dangerous, it's an enum
 
 char_ptr = stringptr
-return_stringptr = Type("char *", "s")	# ONLY FOR RETURN VALUES!!
+return_stringptr = Type("char *", "s")  # ONLY FOR RETURN VALUES!!
 
 CFAllocatorRef = FakeType("(CFAllocatorRef)NULL")
 CFArrayCallBacks_ptr = FakeType("&kCFTypeArrayCallBacks")
@@ -251,233 +251,233 @@
 # Our (opaque) objects
 
 class MyGlobalObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output('if (itself == NULL)')
-		OutLbrace()
-		Output('PyErr_SetString(PyExc_RuntimeError, "cannot wrap NULL");')
-		Output('return NULL;')
-		OutRbrace()
-	def outputStructMembers(self):
-		GlobalObjectDefinition.outputStructMembers(self)
-		Output("void (*ob_freeit)(CFTypeRef ptr);")
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-##		Output("it->ob_freeit = NULL;")
-		Output("it->ob_freeit = CFRelease;")
-	def outputCheckConvertArg(self):
-		Out("""
-		if (v == Py_None) { *p_itself = NULL; return 1; }
-		/* Check for other CF objects here */
-		""")
-	def outputCleanupStructMembers(self):
-		Output("if (self->ob_freeit && self->ob_itself)")
-		OutLbrace()
-		Output("self->ob_freeit((CFTypeRef)self->ob_itself);")
-		Output("self->ob_itself = NULL;")
-		OutRbrace()
-		
-	def outputCompare(self):
-		Output()
-		Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype, self.objecttype)
-		OutLbrace()
-		Output("/* XXXX Or should we use CFEqual?? */")
-		Output("if ( self->ob_itself > other->ob_itself ) return 1;")
-		Output("if ( self->ob_itself < other->ob_itself ) return -1;")
-		Output("return 0;")
-		OutRbrace()
-		
-	def outputHash(self):
-		Output()
-		Output("static int %s_hash(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("/* XXXX Or should we use CFHash?? */")
-		Output("return (int)self->ob_itself;")
-		OutRbrace()
-		
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFTypeRef type-%%d object at 0x%%8.8x for 0x%%8.8x>", (int)CFGetTypeID(self->ob_itself), (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
+    def outputCheckNewArg(self):
+        Output('if (itself == NULL)')
+        OutLbrace()
+        Output('PyErr_SetString(PyExc_RuntimeError, "cannot wrap NULL");')
+        Output('return NULL;')
+        OutRbrace()
+    def outputStructMembers(self):
+        GlobalObjectDefinition.outputStructMembers(self)
+        Output("void (*ob_freeit)(CFTypeRef ptr);")
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+##              Output("it->ob_freeit = NULL;")
+        Output("it->ob_freeit = CFRelease;")
+    def outputCheckConvertArg(self):
+        Out("""
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        /* Check for other CF objects here */
+        """)
+    def outputCleanupStructMembers(self):
+        Output("if (self->ob_freeit && self->ob_itself)")
+        OutLbrace()
+        Output("self->ob_freeit((CFTypeRef)self->ob_itself);")
+        Output("self->ob_itself = NULL;")
+        OutRbrace()
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;")
-		Output
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("((%s *)self)->ob_itself = NULL;", self.objecttype)
-		Output("((%s *)self)->ob_freeit = CFRelease;", self.objecttype)
-		Output("return self;")
-		
-	def output_tp_initBody(self):
-		Output("%s itself;", self.itselftype)
-		Output("char *kw[] = {\"itself\", 0};")
-		Output()
-		Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"O&\", kw, %s_Convert, &itself))",
-			self.prefix)
-		OutLbrace()
-		Output("((%s *)self)->ob_itself = itself;", self.objecttype)
-		Output("return 0;")
-		OutRbrace()
-		if self.prefix != 'CFTypeRefObj':
-			Output()
-			Output("/* Any CFTypeRef descendent is allowed as initializer too */")
-			Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"O&\", kw, CFTypeRefObj_Convert, &itself))")
-			OutLbrace()
-			Output("((%s *)self)->ob_itself = itself;", self.objecttype)
-			Output("return 0;")
-			OutRbrace()
-		Output("return -1;")
+    def outputCompare(self):
+        Output()
+        Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype, self.objecttype)
+        OutLbrace()
+        Output("/* XXXX Or should we use CFEqual?? */")
+        Output("if ( self->ob_itself > other->ob_itself ) return 1;")
+        Output("if ( self->ob_itself < other->ob_itself ) return -1;")
+        Output("return 0;")
+        OutRbrace()
+
+    def outputHash(self):
+        Output()
+        Output("static int %s_hash(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("/* XXXX Or should we use CFHash?? */")
+        Output("return (int)self->ob_itself;")
+        OutRbrace()
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFTypeRef type-%%d object at 0x%%8.8x for 0x%%8.8x>", (int)CFGetTypeID(self->ob_itself), (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
+    def output_tp_newBody(self):
+        Output("PyObject *self;")
+        Output
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("((%s *)self)->ob_itself = NULL;", self.objecttype)
+        Output("((%s *)self)->ob_freeit = CFRelease;", self.objecttype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("%s itself;", self.itselftype)
+        Output("char *kw[] = {\"itself\", 0};")
+        Output()
+        Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"O&\", kw, %s_Convert, &itself))",
+                self.prefix)
+        OutLbrace()
+        Output("((%s *)self)->ob_itself = itself;", self.objecttype)
+        Output("return 0;")
+        OutRbrace()
+        if self.prefix != 'CFTypeRefObj':
+            Output()
+            Output("/* Any CFTypeRef descendent is allowed as initializer too */")
+            Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"O&\", kw, CFTypeRefObj_Convert, &itself))")
+            OutLbrace()
+            Output("((%s *)self)->ob_itself = itself;", self.objecttype)
+            Output("return 0;")
+            OutRbrace()
+        Output("return -1;")
 
 class CFTypeRefObjectDefinition(MyGlobalObjectDefinition):
-	pass
-	
-class CFArrayRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFTypeRef_Type"
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFArrayRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-	
-class CFMutableArrayRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFArrayRef_Type"
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFMutableArrayRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-	
-class CFDictionaryRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFTypeRef_Type"
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFDictionaryRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-	
-class CFMutableDictionaryRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFDictionaryRef_Type"
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFMutableDictionaryRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-	
-class CFDataRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFTypeRef_Type"
-	
-	def outputCheckConvertArg(self):
-		Out("""
-		if (v == Py_None) { *p_itself = NULL; return 1; }
-		if (PyString_Check(v)) {
-		    char *cStr;
-		    int cLen;
-		    if( PyString_AsStringAndSize(v, &cStr, &cLen) < 0 ) return 0;
-		    *p_itself = CFDataCreate((CFAllocatorRef)NULL, (unsigned char *)cStr, cLen);
-		    return 1;
-		}
-		""")
+    pass
 
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFDataRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-	
+class CFArrayRefObjectDefinition(MyGlobalObjectDefinition):
+    basetype = "CFTypeRef_Type"
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFArrayRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
+class CFMutableArrayRefObjectDefinition(MyGlobalObjectDefinition):
+    basetype = "CFArrayRef_Type"
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFMutableArrayRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
+class CFDictionaryRefObjectDefinition(MyGlobalObjectDefinition):
+    basetype = "CFTypeRef_Type"
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFDictionaryRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
+class CFMutableDictionaryRefObjectDefinition(MyGlobalObjectDefinition):
+    basetype = "CFDictionaryRef_Type"
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFMutableDictionaryRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
+class CFDataRefObjectDefinition(MyGlobalObjectDefinition):
+    basetype = "CFTypeRef_Type"
+
+    def outputCheckConvertArg(self):
+        Out("""
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        if (PyString_Check(v)) {
+            char *cStr;
+            int cLen;
+            if( PyString_AsStringAndSize(v, &cStr, &cLen) < 0 ) return 0;
+            *p_itself = CFDataCreate((CFAllocatorRef)NULL, (unsigned char *)cStr, cLen);
+            return 1;
+        }
+        """)
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFDataRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
 class CFMutableDataRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFDataRef_Type"
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFMutableDataRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
+    basetype = "CFDataRef_Type"
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFMutableDataRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
 
 class CFStringRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFTypeRef_Type"
-	
-	def outputCheckConvertArg(self):
-		Out("""
-		if (v == Py_None) { *p_itself = NULL; return 1; }
-		if (PyString_Check(v)) {
-		    char *cStr;
-		    if (!PyArg_Parse(v, "es", "ascii", &cStr))
-		    	return NULL;
-			*p_itself = CFStringCreateWithCString((CFAllocatorRef)NULL, cStr, kCFStringEncodingASCII);
-			return 1;
-		}
-		if (PyUnicode_Check(v)) {
-			/* We use the CF types here, if Python was configured differently that will give an error */
-			CFIndex size = PyUnicode_GetSize(v);
-			UniChar *unichars = PyUnicode_AsUnicode(v);
-			if (!unichars) return 0;
-			*p_itself = CFStringCreateWithCharacters((CFAllocatorRef)NULL, unichars, size);
-			return 1;
-		}
-			
-		""")
+    basetype = "CFTypeRef_Type"
 
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFStringRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
+    def outputCheckConvertArg(self):
+        Out("""
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        if (PyString_Check(v)) {
+            char *cStr;
+            if (!PyArg_Parse(v, "es", "ascii", &cStr))
+                return NULL;
+                *p_itself = CFStringCreateWithCString((CFAllocatorRef)NULL, cStr, kCFStringEncodingASCII);
+                return 1;
+        }
+        if (PyUnicode_Check(v)) {
+                /* We use the CF types here, if Python was configured differently that will give an error */
+                CFIndex size = PyUnicode_GetSize(v);
+                UniChar *unichars = PyUnicode_AsUnicode(v);
+                if (!unichars) return 0;
+                *p_itself = CFStringCreateWithCharacters((CFAllocatorRef)NULL, unichars, size);
+                return 1;
+        }
+
+        """)
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFStringRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
 
 class CFMutableStringRefObjectDefinition(CFStringRefObjectDefinition):
-	basetype = "CFStringRef_Type"
-	
-	def outputCheckConvertArg(self):
-		# Mutable, don't allow Python strings
-		return MyGlobalObjectDefinition.outputCheckConvertArg(self)
-		
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFMutableStringRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
+    basetype = "CFStringRef_Type"
+
+    def outputCheckConvertArg(self):
+        # Mutable, don't allow Python strings
+        return MyGlobalObjectDefinition.outputCheckConvertArg(self)
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFMutableStringRef object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
 
 class CFURLRefObjectDefinition(MyGlobalObjectDefinition):
-	basetype = "CFTypeRef_Type"
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<CFURL object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
+    basetype = "CFTypeRef_Type"
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<CFURL object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
 
 
 # ADD object class here
@@ -554,10 +554,10 @@
 
 if( data == NULL ) return PyErr_NoMemory();
 if ( CFStringGetCString(_self->ob_itself, data, size, 0) ) {
-	_res = (PyObject *)PyString_FromString(data);
+        _res = (PyObject *)PyString_FromString(data);
 } else {
-	PyErr_SetString(PyExc_RuntimeError, "CFStringGetCString could not fit the string");
-	_res = NULL;
+        PyErr_SetString(PyExc_RuntimeError, "CFStringGetCString could not fit the string");
+        _res = NULL;
 }
 free(data);
 return _res;
@@ -605,16 +605,16 @@
 CFStringRef errorString;
 if (!PyArg_ParseTuple(_args, "l",
                       &mutabilityOption))
-	return NULL;
+        return NULL;
 _rv = CFPropertyListCreateFromXMLData((CFAllocatorRef)NULL,
                                       _self->ob_itself,
                                       mutabilityOption,
                                       &errorString);
 if (errorString)
-	CFRelease(errorString);
+        CFRelease(errorString);
 if (_rv == NULL) {
-	PyErr_SetString(PyExc_RuntimeError, "Parse error in XML data");
-	return NULL;
+        PyErr_SetString(PyExc_RuntimeError, "Parse error in XML data");
+        return NULL;
 }
 _res = Py_BuildValue("O&",
                      CFTypeRefObj_New, _rv);
@@ -639,17 +639,17 @@
 CFTypeID typeid;
 
 if (!PyArg_ParseTuple(_args, "O&", PyCF_Python2CF, &rv))
-	return NULL;
+        return NULL;
 typeid = CFGetTypeID(rv);
 
 if (typeid == CFStringGetTypeID())
-	return Py_BuildValue("O&", CFStringRefObj_New, rv);
+        return Py_BuildValue("O&", CFStringRefObj_New, rv);
 if (typeid == CFArrayGetTypeID())
-	return Py_BuildValue("O&", CFArrayRefObj_New, rv);
+        return Py_BuildValue("O&", CFArrayRefObj_New, rv);
 if (typeid == CFDictionaryGetTypeID())
-	return Py_BuildValue("O&", CFDictionaryRefObj_New, rv);
+        return Py_BuildValue("O&", CFDictionaryRefObj_New, rv);
 if (typeid == CFURLGetTypeID())
-	return Py_BuildValue("O&", CFURLRefObj_New, rv);
+        return Py_BuildValue("O&", CFURLRefObj_New, rv);
 
 _res = Py_BuildValue("O&", CFTypeRefObj_New, rv);
 return _res;
@@ -663,4 +663,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/cg/cgscan.py b/Mac/Modules/cg/cgscan.py
index 5d84500..b2e7946 100755
--- a/Mac/Modules/cg/cgscan.py
+++ b/Mac/Modules/cg/cgscan.py
@@ -8,77 +8,77 @@
 
 LONG = "CoreGraphics"
 SHORT = "cg"
-OBJECTS = ("CGContextRef", 
-		)
+OBJECTS = ("CGContextRef",
+                )
 # ADD object typenames here
 
 def main():
-	input = [
-		"CGContext.h",
-	]
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.gentypetest(SHORT+"typetest.py")
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = [
+            "CGContext.h",
+    ]
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.gentypetest(SHORT+"typetest.py")
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in OBJECTS and m == "InMode":
-				classname = "Method"
-				listname = t + "_methods"
-			# Special case for the silly first AllocatorRef argument
-			if t == 'CFAllocatorRef' and m == 'InMode' and len(arglist) > 1:
-				t, n, m = arglist[1]
-				if t in OBJECTS and m == "InMode":
-					classname = "MethodSkipArg1"
-					listname = t + "_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in OBJECTS and m == "InMode":
+                classname = "Method"
+                listname = t + "_methods"
+            # Special case for the silly first AllocatorRef argument
+            if t == 'CFAllocatorRef' and m == 'InMode' and len(arglist) > 1:
+                t, n, m = arglist[1]
+                if t in OBJECTS and m == "InMode":
+                    classname = "MethodSkipArg1"
+                    listname = t + "_methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			"CGContextRetain",
-			"CGContextRelease",
-			]
+    def makeblacklistnames(self):
+        return [
+                "CGContextRetain",
+                "CGContextRelease",
+                ]
 
-	def makegreylist(self):
-		return []
+    def makegreylist(self):
+        return []
 
-	def makeblacklisttypes(self):
-		return [
-			"float_ptr",
-			"CGRect_ptr",
-			"CGPoint_ptr",
-			"CGColorSpaceRef",
-			"CGColorRenderingIntent",
-			"CGFontRef",
-#			"char_ptr",
-			"CGGlyph_ptr",
-			"CGImageRef",
-			"CGPDFDocumentRef",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "float_ptr",
+                "CGRect_ptr",
+                "CGPoint_ptr",
+                "CGColorSpaceRef",
+                "CGColorRenderingIntent",
+                "CGFontRef",
+#                       "char_ptr",
+                "CGGlyph_ptr",
+                "CGImageRef",
+                "CGPDFDocumentRef",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("char_ptr", "cstring", "InMode"), ("size_t", "length", "InMode")],
-			 [("InBuffer", "*", "*")]),
-#			([("char_ptr", "name", "InMode"),],
-#			 [("CCCCC", "*", "*")]),
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ([("char_ptr", "cstring", "InMode"), ("size_t", "length", "InMode")],
+                 [("InBuffer", "*", "*")]),
+#                       ([("char_ptr", "name", "InMode"),],
+#                        [("CCCCC", "*", "*")]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/cg/cgsupport.py b/Mac/Modules/cg/cgsupport.py
index 7dc2d54..6eedfbe 100755
--- a/Mac/Modules/cg/cgsupport.py
+++ b/Mac/Modules/cg/cgsupport.py
@@ -8,12 +8,12 @@
 import string
 
 # Declarations that change for each manager
-MODNAME = '_CG'				# The name of the module
+MODNAME = '_CG'                         # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'CG'			# The prefix for module-wide routines
+MODPREFIX = 'CG'                        # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -34,74 +34,74 @@
 PyObject *CGPoint_New(CGPoint *itself)
 {
 
-	return Py_BuildValue("(ff)",
-			itself->x,
-			itself->y);
+        return Py_BuildValue("(ff)",
+                        itself->x,
+                        itself->y);
 }
 
 int
 CGPoint_Convert(PyObject *v, CGPoint *p_itself)
 {
-	if( !PyArg_Parse(v, "(ff)",
-			&p_itself->x,
-			&p_itself->y) )
-		return 0;
-	return 1;
+        if( !PyArg_Parse(v, "(ff)",
+                        &p_itself->x,
+                        &p_itself->y) )
+                return 0;
+        return 1;
 }
 
 PyObject *CGRect_New(CGRect *itself)
 {
 
-	return Py_BuildValue("(ffff)",
-			itself->origin.x,
-			itself->origin.y,
-			itself->size.width,
-			itself->size.height);
+        return Py_BuildValue("(ffff)",
+                        itself->origin.x,
+                        itself->origin.y,
+                        itself->size.width,
+                        itself->size.height);
 }
 
 int
 CGRect_Convert(PyObject *v, CGRect *p_itself)
 {
-	if( !PyArg_Parse(v, "(ffff)",
-			&p_itself->origin.x,
-			&p_itself->origin.y,
-			&p_itself->size.width,
-			&p_itself->size.height) )
-		return 0;
-	return 1;
+        if( !PyArg_Parse(v, "(ffff)",
+                        &p_itself->origin.x,
+                        &p_itself->origin.y,
+                        &p_itself->size.width,
+                        &p_itself->size.height) )
+                return 0;
+        return 1;
 }
 
 PyObject *CGAffineTransform_New(CGAffineTransform *itself)
 {
 
-	return Py_BuildValue("(ffffff)",
-			itself->a,
-			itself->b,
-			itself->c,
-			itself->d,
-			itself->tx,
-			itself->ty);
+        return Py_BuildValue("(ffffff)",
+                        itself->a,
+                        itself->b,
+                        itself->c,
+                        itself->d,
+                        itself->tx,
+                        itself->ty);
 }
 
 int
 CGAffineTransform_Convert(PyObject *v, CGAffineTransform *p_itself)
 {
-	if( !PyArg_Parse(v, "(ffffff)",
-			&p_itself->a,
-			&p_itself->b,
-			&p_itself->c,
-			&p_itself->d,
-			&p_itself->tx,
-			&p_itself->ty) )
-		return 0;
-	return 1;
+        if( !PyArg_Parse(v, "(ffffff)",
+                        &p_itself->a,
+                        &p_itself->b,
+                        &p_itself->c,
+                        &p_itself->d,
+                        &p_itself->tx,
+                        &p_itself->ty) )
+                return 0;
+        return 1;
 }
 """
 
 class MyOpaqueByValueType(OpaqueByValueType):
-	"""Sort of a mix between OpaqueByValueType and OpaqueType."""
-	def mkvalueArgs(self, name):
-		return "%s, &%s" % (self.new, name)
+    """Sort of a mix between OpaqueByValueType and OpaqueType."""
+    def mkvalueArgs(self, name):
+        return "%s, &%s" % (self.new, name)
 
 CGPoint = MyOpaqueByValueType('CGPoint', 'CGPoint')
 CGRect = MyOpaqueByValueType('CGRect', 'CGRect')
@@ -121,10 +121,10 @@
 
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputStructMembers(self):
-		ObjectDefinition.outputStructMembers(self)
-	def outputCleanupStructMembers(self):
-		Output("CGContextRelease(self->ob_itself);")
+    def outputStructMembers(self):
+        ObjectDefinition.outputStructMembers(self)
+    def outputCleanupStructMembers(self):
+        Output("CGContextRelease(self->ob_itself);")
 
 
 # Create the generator groups and link them
@@ -169,11 +169,11 @@
 OSStatus _err;
 
 if (!PyArg_ParseTuple(_args, "O&", GrafObj_Convert, &port))
-	return NULL;
+        return NULL;
 
 _err = CreateCGContextForPort(port, &ctx);
 if (_err != noErr)
-	if (_err != noErr) return PyMac_Error(_err);
+        if (_err != noErr) return PyMac_Error(_err);
 _res = Py_BuildValue("O&", CGContextRefObj_New, ctx);
 return _res;
 """
@@ -185,9 +185,8 @@
 
 # ADD add forloop here
 for f in CGContextRef_methods:
-	CGContextRef_object.add(f)
+    CGContextRef_object.add(f)
 
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/cm/cmscan.py b/Mac/Modules/cm/cmscan.py
index 6e56cb2..087f239 100644
--- a/Mac/Modules/cm/cmscan.py
+++ b/Mac/Modules/cm/cmscan.py
@@ -10,80 +10,80 @@
 SHORT = "cm"
 
 def main():
-	input = "Components.h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "Components.h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			#
-			# FindNextComponent is a special case, since it call also be called
-			# with None as the argument. Hence, we make it a function
-			#
-			if t == "Component" and m == "InMode" and name != "FindNextComponent":
-				classname = "Method"
-				listname = "c_methods"
-			elif t == "ComponentInstance" and m == "InMode":
-				classname = "Method"
-				listname = "ci_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            #
+            # FindNextComponent is a special case, since it call also be called
+            # with None as the argument. Hence, we make it a function
+            #
+            if t == "Component" and m == "InMode" and name != "FindNextComponent":
+                classname = "Method"
+                listname = "c_methods"
+            elif t == "ComponentInstance" and m == "InMode":
+                classname = "Method"
+                listname = "ci_methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			"OpenADefaultComponent",
-			"GetComponentTypeModSeed",
-			"OpenAComponentResFile",
-			"CallComponentUnregister",
-			"CallComponentTarget",
-			"CallComponentRegister",
-			"CallComponentVersion",
-			"CallComponentCanDo",
-			"CallComponentClose",
-			"CallComponentOpen",
-			"OpenAComponent",
-			"GetComponentPublicResource", # Missing in CW Pro 6
-			"CallComponentGetPublicResource", # Missing in CW Pro 6
-			'SetComponentInstanceA5',
-			'GetComponentInstanceA5',
-			]
+    def makeblacklistnames(self):
+        return [
+                "OpenADefaultComponent",
+                "GetComponentTypeModSeed",
+                "OpenAComponentResFile",
+                "CallComponentUnregister",
+                "CallComponentTarget",
+                "CallComponentRegister",
+                "CallComponentVersion",
+                "CallComponentCanDo",
+                "CallComponentClose",
+                "CallComponentOpen",
+                "OpenAComponent",
+                "GetComponentPublicResource", # Missing in CW Pro 6
+                "CallComponentGetPublicResource", # Missing in CW Pro 6
+                'SetComponentInstanceA5',
+                'GetComponentInstanceA5',
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"ResourceSpec",
-			"ComponentResource",
-			"ComponentPlatformInfo",
-			"ComponentResourceExtension",
-			"ComponentPlatformInfoArray",
-			"ExtComponentResource",
-			"ComponentParameters",
-			
-			"ComponentRoutineUPP",
-			"ComponentMPWorkFunctionUPP",
-			"ComponentFunctionUPP",
-			"GetMissingComponentResourceUPP",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "ResourceSpec",
+                "ComponentResource",
+                "ComponentPlatformInfo",
+                "ComponentResourceExtension",
+                "ComponentPlatformInfoArray",
+                "ExtComponentResource",
+                "ComponentParameters",
 
-	def makerepairinstructions(self):
-		return [
-			([('ComponentDescription', 'looking', 'OutMode')],
-			 [('ComponentDescription', '*', 'InMode')]),
-			]
-			
+                "ComponentRoutineUPP",
+                "ComponentMPWorkFunctionUPP",
+                "ComponentFunctionUPP",
+                "GetMissingComponentResourceUPP",
+                ]
+
+    def makerepairinstructions(self):
+        return [
+                ([('ComponentDescription', 'looking', 'OutMode')],
+                 [('ComponentDescription', '*', 'InMode')]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/cm/cmsupport.py b/Mac/Modules/cm/cmsupport.py
index 98018c4..4109dba 100644
--- a/Mac/Modules/cm/cmsupport.py
+++ b/Mac/Modules/cm/cmsupport.py
@@ -6,15 +6,15 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Components.h'		# The Apple header file
-MODNAME = '_Cm'				# The name of the module
+MACHEADERFILE = 'Components.h'          # The Apple header file
+MODNAME = '_Cm'                         # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Cm'			# The prefix for module-wide routines
-C_OBJECTPREFIX = 'CmpObj'	# The prefix for object methods
+MODPREFIX = 'Cm'                        # The prefix for module-wide routines
+C_OBJECTPREFIX = 'CmpObj'       # The prefix for object methods
 CI_OBJECTPREFIX = 'CmpInstObj'
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -42,30 +42,30 @@
 CmpDesc_New(ComponentDescription *itself)
 {
 
-	return Py_BuildValue("O&O&O&ll", 
-		PyMac_BuildOSType, itself->componentType,
-		PyMac_BuildOSType, itself->componentSubType,
-		PyMac_BuildOSType, itself->componentManufacturer,
-		itself->componentFlags, itself->componentFlagsMask);
+        return Py_BuildValue("O&O&O&ll",
+                PyMac_BuildOSType, itself->componentType,
+                PyMac_BuildOSType, itself->componentSubType,
+                PyMac_BuildOSType, itself->componentManufacturer,
+                itself->componentFlags, itself->componentFlagsMask);
 }
 
 static int
 CmpDesc_Convert(PyObject *v, ComponentDescription *p_itself)
 {
-	return PyArg_ParseTuple(v, "O&O&O&ll",
-		PyMac_GetOSType, &p_itself->componentType,
-		PyMac_GetOSType, &p_itself->componentSubType,
-		PyMac_GetOSType, &p_itself->componentManufacturer,
-		&p_itself->componentFlags, &p_itself->componentFlagsMask);
+        return PyArg_ParseTuple(v, "O&O&O&ll",
+                PyMac_GetOSType, &p_itself->componentType,
+                PyMac_GetOSType, &p_itself->componentSubType,
+                PyMac_GetOSType, &p_itself->componentManufacturer,
+                &p_itself->componentFlags, &p_itself->componentFlagsMask);
 }
 
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(Component, CmpObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Component, CmpObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(ComponentInstance, CmpInstObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(ComponentInstance, CmpInstObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(Component, CmpObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Component, CmpObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(ComponentInstance, CmpInstObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(ComponentInstance, CmpInstObj_Convert);
 """
 
 ComponentDescription = OpaqueType('ComponentDescription', 'CmpDesc')
@@ -76,30 +76,30 @@
 ComponentResourceHandle = OpaqueByValueType("ComponentResourceHandle", "ResObj")
 
 class MyCIObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					PyErr_SetString(Cm_Error,"NULL ComponentInstance");
-					return NULL;
-				}""")
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(Cm_Error,"NULL ComponentInstance");
+                                return NULL;
+                        }""")
 
 class MyCObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					/* XXXX Or should we return None? */
-					PyErr_SetString(Cm_Error,"No such component");
-					return NULL;
-				}""")
-				
-	def outputCheckConvertArg(self):
-		Output("""if ( v == Py_None ) {
-					*p_itself = 0;
-					return 1;
-		}""")
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                /* XXXX Or should we return None? */
+                                PyErr_SetString(Cm_Error,"No such component");
+                                return NULL;
+                        }""")
+
+    def outputCheckConvertArg(self):
+        Output("""if ( v == Py_None ) {
+                                *p_itself = 0;
+                                return 1;
+        }""")
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff)
 ci_object = MyCIObjectDefinition('ComponentInstance', CI_OBJECTPREFIX,
-		'ComponentInstance')
+                'ComponentInstance')
 c_object = MyCObjectDefinition('Component', C_OBJECTPREFIX, 'Component')
 module.addobject(ci_object)
 module.addobject(c_object)
@@ -123,4 +123,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/ctl/ctledit.py b/Mac/Modules/ctl/ctledit.py
index 6ba024b..fdd9712 100644
--- a/Mac/Modules/ctl/ctledit.py
+++ b/Mac/Modules/ctl/ctledit.py
@@ -8,7 +8,7 @@
 functions.append(f)
 
 f = Function(ControlHandle, 'as_Control',
-	(Handle, 'h', InMode))
+        (Handle, 'h', InMode))
 functions.append(f)
 
 f = Method(Handle, 'as_Resource', (ControlHandle, 'ctl', InMode))
@@ -18,16 +18,16 @@
 methods.append(f)
 
 DisposeControl_body = """
-	if (!PyArg_ParseTuple(_args, ""))
-		return NULL;
-	if ( _self->ob_itself ) {
-		SetControlReference(_self->ob_itself, (long)0); /* Make it forget about us */
-		DisposeControl(_self->ob_itself);
-		_self->ob_itself = NULL;
-	}
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
+        if (!PyArg_ParseTuple(_args, ""))
+                return NULL;
+        if ( _self->ob_itself ) {
+                SetControlReference(_self->ob_itself, (long)0); /* Make it forget about us */
+                DisposeControl(_self->ob_itself);
+                _self->ob_itself = NULL;
+        }
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
 """
 
 f = ManualGenerator("DisposeControl", DisposeControl_body)
@@ -39,7 +39,7 @@
 # parameter; these should however be managed by us (we're creating them
 # after all), so set the type to ControlRef.
 for f in functions:
-	if f.name.startswith("Create"):
-		v = f.argumentList[-1]
-		if v.type == ExistingControlHandle:
-			v.type = ControlRef
+    if f.name.startswith("Create"):
+        v = f.argumentList[-1]
+        if v.type == ExistingControlHandle:
+            v.type = ControlRef
diff --git a/Mac/Modules/ctl/ctlscan.py b/Mac/Modules/ctl/ctlscan.py
index 818541e..25333f1 100644
--- a/Mac/Modules/ctl/ctlscan.py
+++ b/Mac/Modules/ctl/ctlscan.py
@@ -7,166 +7,166 @@
 from scantools import Scanner
 
 def main():
-#	input = "Controls.h" # Universal Headers < 3.3
-	input = ["Controls.h", "ControlDefinitions.h"] # Universal Headers >= 3.3
-	output = "ctlgen.py"
-	defsoutput = TOOLBOXDIR + "Controls.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now doing 'import ctlsupport' ==="
-	import ctlsupport
-	print "=== Done.  It's up to you to compile Ctlmodule.c ==="
+#       input = "Controls.h" # Universal Headers < 3.3
+    input = ["Controls.h", "ControlDefinitions.h"] # Universal Headers >= 3.3
+    output = "ctlgen.py"
+    defsoutput = TOOLBOXDIR + "Controls.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now doing 'import ctlsupport' ==="
+    import ctlsupport
+    print "=== Done.  It's up to you to compile Ctlmodule.c ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in ("ControlHandle", "ControlRef") and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in ("ControlHandle", "ControlRef") and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("from Carbon.TextEdit import *\n")
-		self.defsfile.write("from Carbon.QuickDraw import *\n")
-		self.defsfile.write("from Carbon.Dragconst import *\n")
-		self.defsfile.write("from Carbon.CarbonEvents import *\n")
-		self.defsfile.write("from Carbon.Appearance import *\n")
-		self.defsfile.write("kDataBrowserItemAnyState = -1\n")
-		self.defsfile.write("kControlBevelButtonCenterPopupGlyphTag = -1\n")
-		self.defsfile.write("kDataBrowserClientPropertyFlagsMask = 0xFF000000\n")
-		self.defsfile.write("\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("from Carbon.TextEdit import *\n")
+        self.defsfile.write("from Carbon.QuickDraw import *\n")
+        self.defsfile.write("from Carbon.Dragconst import *\n")
+        self.defsfile.write("from Carbon.CarbonEvents import *\n")
+        self.defsfile.write("from Carbon.Appearance import *\n")
+        self.defsfile.write("kDataBrowserItemAnyState = -1\n")
+        self.defsfile.write("kControlBevelButtonCenterPopupGlyphTag = -1\n")
+        self.defsfile.write("kDataBrowserClientPropertyFlagsMask = 0xFF000000\n")
+        self.defsfile.write("\n")
 
-	def makeblacklistnames(self):
-		return [
-			'FindControlUnderMouse', # Generated manually, returns an existing control, not a new one.
-			'DisposeControl', # Generated manually
-			'KillControls', # Implied by close of dialog
-			'SetCtlAction',
-			'TrackControl',	# Generated manually
-			'HandleControlClick',	# Generated manually
-			'SetControlData',	# Generated manually
-			'GetControlData',	# Generated manually
-			'kControlBevelButtonCenterPopupGlyphTag', # Constant with funny definition
-			'kDataBrowserClientPropertyFlagsMask',  # ditto
-			'kDataBrowserItemAnyState',   # and ditto
-			# The following are unavailable for static 68k (appearance manager)
-##			'GetBevelButtonMenuValue',
-##			'SetBevelButtonMenuValue',
-##			'GetBevelButtonMenuHandle',
-##			'SetBevelButtonTransform',
-			'SetBevelButtonGraphicAlignment',
-			'SetBevelButtonTextAlignment',
-			'SetBevelButtonTextPlacement',
-##			'SetImageWellTransform',
-##			'GetTabContentRect',
-##			'SetTabEnabled',
-##			'SetDisclosureTriangleLastValue',
-## 			# Unavailable in CW Pro 3 libraries
-## 			'SetUpControlTextColor',
-## 			# Unavailable in Jack's CW Pro 5.1 libraries
-## 			'GetControlRegion',
-## 			'RemoveControlProperty',
-## 			'IsValidControlHandle',
-## 			'SetControl32BitMinimum',
-## 			'GetControl32BitMinimum',
-## 			'SetControl32BitMaximum',
-## 			'GetControl32BitMaximum',
-## 			'SetControl32BitValue',
-## 			'GetControl32BitValue',
-## 			'SetControlViewSize',
-## 			'GetControlViewSize',
-			# Generally Bad News
-			'GetControlProperty',
-			'SetControlProperty',
-			'GetControlPropertySize',
-			'SendControlMessage', # Parameter changed from long to void* from UH3.3 to UH3.4
-			'CreateTabsControl',  # wrote manually
-			'GetControlAction',  # too much effort for too little usefulness
-			
-			# too lazy for now
-			'GetImageWellContentInfo',
-			'GetBevelButtonContentInfo',
-			# OS8 only
-			'GetAuxiliaryControlRecord',
-			'SetControlColor',
-			]
+    def makeblacklistnames(self):
+        return [
+                'FindControlUnderMouse', # Generated manually, returns an existing control, not a new one.
+                'DisposeControl', # Generated manually
+                'KillControls', # Implied by close of dialog
+                'SetCtlAction',
+                'TrackControl', # Generated manually
+                'HandleControlClick',   # Generated manually
+                'SetControlData',       # Generated manually
+                'GetControlData',       # Generated manually
+                'kControlBevelButtonCenterPopupGlyphTag', # Constant with funny definition
+                'kDataBrowserClientPropertyFlagsMask',  # ditto
+                'kDataBrowserItemAnyState',   # and ditto
+                # The following are unavailable for static 68k (appearance manager)
+##                      'GetBevelButtonMenuValue',
+##                      'SetBevelButtonMenuValue',
+##                      'GetBevelButtonMenuHandle',
+##                      'SetBevelButtonTransform',
+                'SetBevelButtonGraphicAlignment',
+                'SetBevelButtonTextAlignment',
+                'SetBevelButtonTextPlacement',
+##                      'SetImageWellTransform',
+##                      'GetTabContentRect',
+##                      'SetTabEnabled',
+##                      'SetDisclosureTriangleLastValue',
+##                      # Unavailable in CW Pro 3 libraries
+##                      'SetUpControlTextColor',
+##                      # Unavailable in Jack's CW Pro 5.1 libraries
+##                      'GetControlRegion',
+##                      'RemoveControlProperty',
+##                      'IsValidControlHandle',
+##                      'SetControl32BitMinimum',
+##                      'GetControl32BitMinimum',
+##                      'SetControl32BitMaximum',
+##                      'GetControl32BitMaximum',
+##                      'SetControl32BitValue',
+##                      'GetControl32BitValue',
+##                      'SetControlViewSize',
+##                      'GetControlViewSize',
+                # Generally Bad News
+                'GetControlProperty',
+                'SetControlProperty',
+                'GetControlPropertySize',
+                'SendControlMessage', # Parameter changed from long to void* from UH3.3 to UH3.4
+                'CreateTabsControl',  # wrote manually
+                'GetControlAction',  # too much effort for too little usefulness
 
-	def makeblacklisttypes(self):
-		return [
-			'ProcPtr',
-#			'ControlActionUPP',
-			'Ptr',
-			'ControlDefSpec', # Don't know how to do this yet
-			'ControlDefSpec_ptr', # ditto
-			'Collection', # Ditto
-			# not-yet-supported stuff in Universal Headers 3.4:
-			'ControlColorUPP',
-			'ControlKind',  # XXX easy: 2-tuple containing 2 OSType's
-#			'ControlTabEntry_ptr', # XXX needed for tabs
-#			'ControlButtonContentInfoPtr',
-#			'ControlButtonContentInfo',  # XXX ugh: a union
-#			'ControlButtonContentInfo_ptr',  # XXX ugh: a union
-			'ListDefSpec_ptr',  # XXX see _Listmodule.c, tricky but possible
-			'DataBrowserItemID_ptr',  # XXX array of UInt32, for BrowserView
-			'DataBrowserItemUPP',
-			'DataBrowserItemDataRef', # XXX void *
-			'DataBrowserCallbacks', # difficult struct
-			'DataBrowserCallbacks_ptr',
-			'DataBrowserCustomCallbacks',
-			'DataBrowserCustomCallbacks_ptr',
-##			'DataBrowserTableViewColumnDesc',
-##			'DataBrowserListViewColumnDesc',
-			'CFDataRef',
-			'DataBrowserListViewHeaderDesc', # difficult struct
-			]
+                # too lazy for now
+                'GetImageWellContentInfo',
+                'GetBevelButtonContentInfo',
+                # OS8 only
+                'GetAuxiliaryControlRecord',
+                'SetControlColor',
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
+    def makeblacklisttypes(self):
+        return [
+                'ProcPtr',
+#                       'ControlActionUPP',
+                'Ptr',
+                'ControlDefSpec', # Don't know how to do this yet
+                'ControlDefSpec_ptr', # ditto
+                'Collection', # Ditto
+                # not-yet-supported stuff in Universal Headers 3.4:
+                'ControlColorUPP',
+                'ControlKind',  # XXX easy: 2-tuple containing 2 OSType's
+#                       'ControlTabEntry_ptr', # XXX needed for tabs
+#                       'ControlButtonContentInfoPtr',
+#                       'ControlButtonContentInfo',  # XXX ugh: a union
+#                       'ControlButtonContentInfo_ptr',  # XXX ugh: a union
+                'ListDefSpec_ptr',  # XXX see _Listmodule.c, tricky but possible
+                'DataBrowserItemID_ptr',  # XXX array of UInt32, for BrowserView
+                'DataBrowserItemUPP',
+                'DataBrowserItemDataRef', # XXX void *
+                'DataBrowserCallbacks', # difficult struct
+                'DataBrowserCallbacks_ptr',
+                'DataBrowserCustomCallbacks',
+                'DataBrowserCustomCallbacks_ptr',
+##                      'DataBrowserTableViewColumnDesc',
+##                      'DataBrowserListViewColumnDesc',
+                'CFDataRef',
+                'DataBrowserListViewHeaderDesc', # difficult struct
+                ]
 
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
+    def makerepairinstructions(self):
+        return [
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
 
-##			# For TrackControl
-##			([("ProcPtr", "actionProc", "InMode")],
-##			 [("FakeType('(ControlActionUPP)0')", "*", "*")]),
-##			([("ControlActionUPP", "actionProc", "InMode")],
-##			 [("FakeType('(ControlActionUPP)0')", "*", "*")]),
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
 
-			# For GetControlTitle
-			([('Str255', 'title', 'InMode')],
-			 [('Str255', 'title', 'OutMode')]),
+##                      # For TrackControl
+##                      ([("ProcPtr", "actionProc", "InMode")],
+##                       [("FakeType('(ControlActionUPP)0')", "*", "*")]),
+##                      ([("ControlActionUPP", "actionProc", "InMode")],
+##                       [("FakeType('(ControlActionUPP)0')", "*", "*")]),
 
-			([("ControlHandle", "*", "OutMode")],
-			 [("ExistingControlHandle", "*", "*")]),
-			([("ControlRef", "*", "OutMode")],	# Ditto, for Universal Headers
-			 [("ExistingControlHandle", "*", "*")]),
-			 
-			([("Rect_ptr", "*", "ReturnMode")], # GetControlBounds
-			 [("void", "*", "ReturnMode")]),
+                # For GetControlTitle
+                ([('Str255', 'title', 'InMode')],
+                 [('Str255', 'title', 'OutMode')]),
 
-			([("DataBrowserListViewColumnDesc", "*", "OutMode")],
-			 [("DataBrowserListViewColumnDesc", "*", "InMode")]),
-			 
-			([("ControlButtonContentInfoPtr", 'outContent', "InMode")],
-			 [("ControlButtonContentInfoPtr", '*', "OutMode")]),
-			 
-			([("ControlButtonContentInfo", '*', "OutMode")],
-			 [("ControlButtonContentInfo", '*', "InMode")]),
-			
-			([("ControlActionUPP", 'liveTrackingProc', "InMode")],
-			 [("ControlActionUPPNewControl", 'liveTrackingProc', "InMode")]),
-			]
+                ([("ControlHandle", "*", "OutMode")],
+                 [("ExistingControlHandle", "*", "*")]),
+                ([("ControlRef", "*", "OutMode")],      # Ditto, for Universal Headers
+                 [("ExistingControlHandle", "*", "*")]),
+
+                ([("Rect_ptr", "*", "ReturnMode")], # GetControlBounds
+                 [("void", "*", "ReturnMode")]),
+
+                ([("DataBrowserListViewColumnDesc", "*", "OutMode")],
+                 [("DataBrowserListViewColumnDesc", "*", "InMode")]),
+
+                ([("ControlButtonContentInfoPtr", 'outContent', "InMode")],
+                 [("ControlButtonContentInfoPtr", '*', "OutMode")]),
+
+                ([("ControlButtonContentInfo", '*', "OutMode")],
+                 [("ControlButtonContentInfo", '*', "InMode")]),
+
+                ([("ControlActionUPP", 'liveTrackingProc', "InMode")],
+                 [("ControlActionUPPNewControl", 'liveTrackingProc', "InMode")]),
+                ]
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/ctl/ctlsupport.py b/Mac/Modules/ctl/ctlsupport.py
index b2d9ad5..d354d94 100644
--- a/Mac/Modules/ctl/ctlsupport.py
+++ b/Mac/Modules/ctl/ctlsupport.py
@@ -6,16 +6,16 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Controls.h'		# The Apple header file
-MODNAME = '_Ctl'				# The name of the module
-OBJECTNAME = 'Control'			# The basic name of the objects used here
+MACHEADERFILE = 'Controls.h'            # The Apple header file
+MODNAME = '_Ctl'                                # The name of the module
+OBJECTNAME = 'Control'                  # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Ctl'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + 'Handle'	# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Ctl'                       # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + 'Handle'      # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -79,11 +79,11 @@
 ControlDisclosureTriangleOrientation = UInt16
 
 DataBrowserTableViewColumnDesc = OpaqueType("DataBrowserTableViewColumnDesc",
-		"DataBrowserTableViewColumnDesc")
+                "DataBrowserTableViewColumnDesc")
 DataBrowserListViewColumnDesc = OpaqueType("DataBrowserListViewColumnDesc",
-		"DataBrowserListViewColumnDesc")
+                "DataBrowserListViewColumnDesc")
 ControlButtonContentInfo = OpaqueType("ControlButtonContentInfo",
-		"ControlButtonContentInfo")
+                "ControlButtonContentInfo")
 ControlButtonContentInfoPtr = ControlButtonContentInfo_ptr = ControlButtonContentInfo
 
 ControlTabEntry_ptr = OpaqueType("ControlTabEntry", "ControlTabEntry")
@@ -95,17 +95,17 @@
 ControlPushButtonIconAlignment = UInt16
 
 class ControlActionDefinition(Type):
-	def declare(self, name):
-		Output("%s %s;", self.typeName, name)
-		Output("UniversalProcPtr c_callback;")
-	def passInput(self, name):
-		return "myactionproc_upp"
-	def cleanup(self, name):
-		Output("setcallback((PyObject*)_self, kMyControlActionProcTag, actionProc, &c_callback);")
+    def declare(self, name):
+        Output("%s %s;", self.typeName, name)
+        Output("UniversalProcPtr c_callback;")
+    def passInput(self, name):
+        return "myactionproc_upp"
+    def cleanup(self, name):
+        Output("setcallback((PyObject*)_self, kMyControlActionProcTag, actionProc, &c_callback);")
 
 class ControlActionDefinitionNewControl(ControlActionDefinition):
-	def cleanup(self, name):
-		Output("setcallback(_res, kMyControlActionProcTag, liveTrackingProc, &c_callback);")
+    def cleanup(self, name):
+        Output("setcallback(_res, kMyControlActionProcTag, liveTrackingProc, &c_callback);")
 
 ControlActionUPP = ControlActionDefinition("PyObject*", "O")
 ControlActionUPPNewControl = ControlActionDefinitionNewControl("PyObject*", "O")
@@ -138,19 +138,19 @@
 ControlFontStyle_New(ControlFontStyleRec *itself)
 {
 
-	return Py_BuildValue("hhhhhhO&O&", itself->flags, itself->font,
-		itself->size, itself->style, itself->mode, itself->just,
-		QdRGB_New, &itself->foreColor, QdRGB_New, &itself->backColor);
+        return Py_BuildValue("hhhhhhO&O&", itself->flags, itself->font,
+                itself->size, itself->style, itself->mode, itself->just,
+                QdRGB_New, &itself->foreColor, QdRGB_New, &itself->backColor);
 }
 #endif
 
 static int
 ControlFontStyle_Convert(PyObject *v, ControlFontStyleRec *itself)
 {
-	return PyArg_Parse(v, "(hhhhhhO&O&)", &itself->flags,
-		&itself->font, &itself->size, &itself->style, &itself->mode,
-		&itself->just, QdRGB_Convert, &itself->foreColor,
-		QdRGB_Convert, &itself->backColor);
+        return PyArg_Parse(v, "(hhhhhhO&O&)", &itself->flags,
+                &itself->font, &itself->size, &itself->style, &itself->mode,
+                &itself->just, QdRGB_Convert, &itself->foreColor,
+                QdRGB_Convert, &itself->backColor);
 }
 
 /*
@@ -160,13 +160,13 @@
 PyControlID_New(ControlID *itself)
 {
 
-	return Py_BuildValue("O&l", PyMac_BuildOSType, itself->signature, itself->id);
+        return Py_BuildValue("O&l", PyMac_BuildOSType, itself->signature, itself->id);
 }
 
 static int
 PyControlID_Convert(PyObject *v, ControlID *itself)
 {
-	return PyArg_Parse(v, "(O&l)", PyMac_GetOSType, &itself->signature, &itself->id);
+        return PyArg_Parse(v, "(O&l)", PyMac_GetOSType, &itself->signature, &itself->id);
 }
 
 /*
@@ -175,40 +175,40 @@
 static int
 DataBrowserTableViewColumnDesc_Convert(PyObject *v, DataBrowserTableViewColumnDesc *itself)
 {
-	return PyArg_Parse(v, "(lO&l)",
-	                   &itself->propertyID,
-	                   PyMac_GetOSType, &itself->propertyType,
-	                   &itself->propertyFlags);
+        return PyArg_Parse(v, "(lO&l)",
+                           &itself->propertyID,
+                           PyMac_GetOSType, &itself->propertyType,
+                           &itself->propertyFlags);
 }
 
 static int
 ControlButtonContentInfo_Convert(PyObject *v, ControlButtonContentInfo *itself)
 {
-	return PyArg_Parse(v, "(hO&)",
-	                   &itself->contentType,
-	                   OptResObj_Convert, &itself->u.iconSuite);
+        return PyArg_Parse(v, "(hO&)",
+                           &itself->contentType,
+                           OptResObj_Convert, &itself->u.iconSuite);
 }
 
 static int
 DataBrowserListViewHeaderDesc_Convert(PyObject *v, DataBrowserListViewHeaderDesc *itself)
 {
-	itself->version = kDataBrowserListViewLatestHeaderDesc;
-	return PyArg_Parse(v, "(HHhO&HO&O&)",
-	                   &itself->minimumWidth,
-	                   &itself->maximumWidth,
-	                   &itself->titleOffset,
-	                   CFStringRefObj_Convert, &itself->titleString,
-	                   &itself->initialOrder,
-	                   ControlFontStyle_Convert, &itself->btnFontStyle,
-	                   ControlButtonContentInfo_Convert, &itself->btnContentInfo);
+        itself->version = kDataBrowserListViewLatestHeaderDesc;
+        return PyArg_Parse(v, "(HHhO&HO&O&)",
+                           &itself->minimumWidth,
+                           &itself->maximumWidth,
+                           &itself->titleOffset,
+                           CFStringRefObj_Convert, &itself->titleString,
+                           &itself->initialOrder,
+                           ControlFontStyle_Convert, &itself->btnFontStyle,
+                           ControlButtonContentInfo_Convert, &itself->btnContentInfo);
 }
 
 static int
 DataBrowserListViewColumnDesc_Convert(PyObject *v, DataBrowserListViewColumnDesc *itself)
 {
-	return PyArg_Parse(v, "(O&O&)",
-	                   DataBrowserTableViewColumnDesc_Convert, &itself->propertyDesc,
-	                   DataBrowserListViewHeaderDesc_Convert, &itself->headerBtnDesc);
+        return PyArg_Parse(v, "(O&O&)",
+                           DataBrowserTableViewColumnDesc_Convert, &itself->propertyDesc,
+                           DataBrowserListViewHeaderDesc_Convert, &itself->headerBtnDesc);
 }
 
 /* TrackControl and HandleControlClick callback support */
@@ -223,8 +223,8 @@
 static ControlUserPaneHitTestUPP myhittestproc_upp;
 static ControlUserPaneTrackingUPP mytrackingproc_upp;
 
-static int settrackfunc(PyObject *); 	/* forward */
-static void clrtrackfunc(void);	/* forward */
+static int settrackfunc(PyObject *);    /* forward */
+static void clrtrackfunc(void); /* forward */
 static int setcallback(PyObject *, OSType, PyObject *, UniversalProcPtr *);
 """
 
@@ -232,239 +232,239 @@
 static PyObject *
 CtlObj_NewUnmanaged(ControlHandle itself)
 {
-	ControlObject *it;
-	if (itself == NULL) return PyMac_Error(resNotFound);
-	it = PyObject_NEW(ControlObject, &Control_Type);
-	if (it == NULL) return NULL;
-	it->ob_itself = itself;
-	it->ob_callbackdict = NULL;
-	return (PyObject *)it;
+        ControlObject *it;
+        if (itself == NULL) return PyMac_Error(resNotFound);
+        it = PyObject_NEW(ControlObject, &Control_Type);
+        if (it == NULL) return NULL;
+        it->ob_itself = itself;
+        it->ob_callbackdict = NULL;
+        return (PyObject *)it;
 }
 
 static PyObject *
 CtlObj_WhichControl(ControlHandle c)
 {
-	PyObject *it;
+        PyObject *it;
 
-	if (c == NULL)
-		it = Py_None;
-	else {
-		it = (PyObject *) GetControlReference(c);
-		/*
-		** If the refcon is zero or doesn't point back to the Python object
-		** the control is not ours. Return a temporary object.
-		*/
-		if (it == NULL || ((ControlObject *)it)->ob_itself != c)
-			return CtlObj_NewUnmanaged(c);
-	}
-	Py_INCREF(it);
-	return it;
+        if (c == NULL)
+                it = Py_None;
+        else {
+                it = (PyObject *) GetControlReference(c);
+                /*
+                ** If the refcon is zero or doesn't point back to the Python object
+                ** the control is not ours. Return a temporary object.
+                */
+                if (it == NULL || ((ControlObject *)it)->ob_itself != c)
+                        return CtlObj_NewUnmanaged(c);
+        }
+        Py_INCREF(it);
+        return it;
 }
 
 static int
 settrackfunc(PyObject *obj)
 {
-	if (tracker) {
-		PyErr_SetString(Ctl_Error, "Tracker function in use");
-		return 0;
-	}
-	tracker = obj;
-	Py_INCREF(tracker);
-	return 1;
+        if (tracker) {
+                PyErr_SetString(Ctl_Error, "Tracker function in use");
+                return 0;
+        }
+        tracker = obj;
+        Py_INCREF(tracker);
+        return 1;
 }
 
 static void
 clrtrackfunc(void)
 {
-	Py_XDECREF(tracker);
-	tracker = 0;
+        Py_XDECREF(tracker);
+        tracker = 0;
 }
 
 static pascal void
 mytracker(ControlHandle ctl, short part)
 {
-	PyObject *args, *rv=0;
+        PyObject *args, *rv=0;
 
-	args = Py_BuildValue("(O&i)", CtlObj_WhichControl, ctl, (int)part);
-	if (args && tracker) {
-		rv = PyEval_CallObject(tracker, args);
-		Py_DECREF(args);
-	}
-	if (rv)
-		Py_DECREF(rv);
-	else {
-		PySys_WriteStderr("TrackControl or HandleControlClick: exception in tracker function\\n");
-		PyErr_Print();
-	}
+        args = Py_BuildValue("(O&i)", CtlObj_WhichControl, ctl, (int)part);
+        if (args && tracker) {
+                rv = PyEval_CallObject(tracker, args);
+                Py_DECREF(args);
+        }
+        if (rv)
+                Py_DECREF(rv);
+        else {
+                PySys_WriteStderr("TrackControl or HandleControlClick: exception in tracker function\\n");
+                PyErr_Print();
+        }
 }
 
 static int
 setcallback(PyObject *myself, OSType which, PyObject *callback, UniversalProcPtr *uppp)
 {
-	ControlObject *self = (ControlObject *)myself;
-	char keybuf[9];
-	
-	if ( which == kMyControlActionProcTag )
-		*uppp = (UniversalProcPtr)myactionproc_upp;
-	else if ( which == kControlUserPaneKeyDownProcTag )
-		*uppp = (UniversalProcPtr)mykeydownproc_upp;
-	else if ( which == kControlUserPaneFocusProcTag )
-		*uppp = (UniversalProcPtr)myfocusproc_upp;
-	else if ( which == kControlUserPaneDrawProcTag )
-		*uppp = (UniversalProcPtr)mydrawproc_upp;
-	else if ( which == kControlUserPaneIdleProcTag )
-		*uppp = (UniversalProcPtr)myidleproc_upp;
-	else if ( which == kControlUserPaneHitTestProcTag )
-		*uppp = (UniversalProcPtr)myhittestproc_upp;
-	else if ( which == kControlUserPaneTrackingProcTag )
-		*uppp = (UniversalProcPtr)mytrackingproc_upp;
-	else
-		return -1;
-	/* Only now do we test for clearing of the callback: */
-	if ( callback == Py_None )
-		*uppp = NULL;
-	/* Create the dict if it doesn't exist yet (so we don't get such a dict for every control) */
-	if ( self->ob_callbackdict == NULL )
-		if ( (self->ob_callbackdict = PyDict_New()) == NULL )
-			return -1;
-	/* And store the Python callback */
-	sprintf(keybuf, "%x", (unsigned)which);
-	if (PyDict_SetItemString(self->ob_callbackdict, keybuf, callback) < 0)
-		return -1;
-	return 0;
+        ControlObject *self = (ControlObject *)myself;
+        char keybuf[9];
+
+        if ( which == kMyControlActionProcTag )
+                *uppp = (UniversalProcPtr)myactionproc_upp;
+        else if ( which == kControlUserPaneKeyDownProcTag )
+                *uppp = (UniversalProcPtr)mykeydownproc_upp;
+        else if ( which == kControlUserPaneFocusProcTag )
+                *uppp = (UniversalProcPtr)myfocusproc_upp;
+        else if ( which == kControlUserPaneDrawProcTag )
+                *uppp = (UniversalProcPtr)mydrawproc_upp;
+        else if ( which == kControlUserPaneIdleProcTag )
+                *uppp = (UniversalProcPtr)myidleproc_upp;
+        else if ( which == kControlUserPaneHitTestProcTag )
+                *uppp = (UniversalProcPtr)myhittestproc_upp;
+        else if ( which == kControlUserPaneTrackingProcTag )
+                *uppp = (UniversalProcPtr)mytrackingproc_upp;
+        else
+                return -1;
+        /* Only now do we test for clearing of the callback: */
+        if ( callback == Py_None )
+                *uppp = NULL;
+        /* Create the dict if it doesn't exist yet (so we don't get such a dict for every control) */
+        if ( self->ob_callbackdict == NULL )
+                if ( (self->ob_callbackdict = PyDict_New()) == NULL )
+                        return -1;
+        /* And store the Python callback */
+        sprintf(keybuf, "%x", (unsigned)which);
+        if (PyDict_SetItemString(self->ob_callbackdict, keybuf, callback) < 0)
+                return -1;
+        return 0;
 }
 
 static PyObject *
 callcallback(ControlObject *self, OSType which, PyObject *arglist)
 {
-	char keybuf[9];
-	PyObject *func, *rv;
-	
-	sprintf(keybuf, "%x", (unsigned)which);
-	if ( self->ob_callbackdict == NULL ||
-			(func = PyDict_GetItemString(self->ob_callbackdict, keybuf)) == NULL ) {
-		PySys_WriteStderr("Control callback %x without callback object\\n", (unsigned)which);
-		return NULL;
-	}
-	rv = PyEval_CallObject(func, arglist);
-	if ( rv == NULL ) {
-		PySys_WriteStderr("Exception in control callback %x handler\\n", (unsigned)which);
-		PyErr_Print();
-	}
-	return rv;
+        char keybuf[9];
+        PyObject *func, *rv;
+
+        sprintf(keybuf, "%x", (unsigned)which);
+        if ( self->ob_callbackdict == NULL ||
+                        (func = PyDict_GetItemString(self->ob_callbackdict, keybuf)) == NULL ) {
+                PySys_WriteStderr("Control callback %x without callback object\\n", (unsigned)which);
+                return NULL;
+        }
+        rv = PyEval_CallObject(func, arglist);
+        if ( rv == NULL ) {
+                PySys_WriteStderr("Exception in control callback %x handler\\n", (unsigned)which);
+                PyErr_Print();
+        }
+        return rv;
 }
 
 static pascal void
 myactionproc(ControlHandle control, SInt16 part)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("Oh", ctl_obj, part);
-	rv = callcallback(ctl_obj, kMyControlActionProcTag, arglist);
-	Py_XDECREF(arglist);
-	Py_XDECREF(rv);
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        arglist = Py_BuildValue("Oh", ctl_obj, part);
+        rv = callcallback(ctl_obj, kMyControlActionProcTag, arglist);
+        Py_XDECREF(arglist);
+        Py_XDECREF(rv);
 }
 
 static pascal ControlPartCode
 mykeydownproc(ControlHandle control, SInt16 keyCode, SInt16 charCode, SInt16 modifiers)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	short c_rv = 0;
-	
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("Ohhh", ctl_obj, keyCode, charCode, modifiers);
-	rv = callcallback(ctl_obj, kControlUserPaneKeyDownProcTag, arglist);
-	Py_XDECREF(arglist);
-	if ( rv )
-		if (!PyArg_Parse(rv, "h", &c_rv))
-			PyErr_Clear();
-	Py_XDECREF(rv);
-	return (ControlPartCode)c_rv;
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+        short c_rv = 0;
+
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        arglist = Py_BuildValue("Ohhh", ctl_obj, keyCode, charCode, modifiers);
+        rv = callcallback(ctl_obj, kControlUserPaneKeyDownProcTag, arglist);
+        Py_XDECREF(arglist);
+        if ( rv )
+                if (!PyArg_Parse(rv, "h", &c_rv))
+                        PyErr_Clear();
+        Py_XDECREF(rv);
+        return (ControlPartCode)c_rv;
 }
 
 static pascal ControlPartCode
 myfocusproc(ControlHandle control, ControlPartCode part)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	short c_rv = kControlFocusNoPart;
-	
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("Oh", ctl_obj, part);
-	rv = callcallback(ctl_obj, kControlUserPaneFocusProcTag, arglist);
-	Py_XDECREF(arglist);
-	if ( rv )
-		if (!PyArg_Parse(rv, "h", &c_rv))
-			PyErr_Clear();
-	Py_XDECREF(rv);
-	return (ControlPartCode)c_rv;
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+        short c_rv = kControlFocusNoPart;
+
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        arglist = Py_BuildValue("Oh", ctl_obj, part);
+        rv = callcallback(ctl_obj, kControlUserPaneFocusProcTag, arglist);
+        Py_XDECREF(arglist);
+        if ( rv )
+                if (!PyArg_Parse(rv, "h", &c_rv))
+                        PyErr_Clear();
+        Py_XDECREF(rv);
+        return (ControlPartCode)c_rv;
 }
 
 static pascal void
 mydrawproc(ControlHandle control, SInt16 part)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("Oh", ctl_obj, part);
-	rv = callcallback(ctl_obj, kControlUserPaneDrawProcTag, arglist);
-	Py_XDECREF(arglist);
-	Py_XDECREF(rv);
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        arglist = Py_BuildValue("Oh", ctl_obj, part);
+        rv = callcallback(ctl_obj, kControlUserPaneDrawProcTag, arglist);
+        Py_XDECREF(arglist);
+        Py_XDECREF(rv);
 }
 
 static pascal void
 myidleproc(ControlHandle control)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("O", ctl_obj);
-	rv = callcallback(ctl_obj, kControlUserPaneIdleProcTag, arglist);
-	Py_XDECREF(arglist);
-	Py_XDECREF(rv);
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        arglist = Py_BuildValue("O", ctl_obj);
+        rv = callcallback(ctl_obj, kControlUserPaneIdleProcTag, arglist);
+        Py_XDECREF(arglist);
+        Py_XDECREF(rv);
 }
 
 static pascal ControlPartCode
 myhittestproc(ControlHandle control, Point where)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	short c_rv = -1;
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+        short c_rv = -1;
 
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, where);
-	rv = callcallback(ctl_obj, kControlUserPaneHitTestProcTag, arglist);
-	Py_XDECREF(arglist);
-	/* Ignore errors, nothing we can do about them */
-	if ( rv )
-		if (!PyArg_Parse(rv, "h", &c_rv))
-			PyErr_Clear();
-	Py_XDECREF(rv);
-	return (ControlPartCode)c_rv;
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, where);
+        rv = callcallback(ctl_obj, kControlUserPaneHitTestProcTag, arglist);
+        Py_XDECREF(arglist);
+        /* Ignore errors, nothing we can do about them */
+        if ( rv )
+                if (!PyArg_Parse(rv, "h", &c_rv))
+                        PyErr_Clear();
+        Py_XDECREF(rv);
+        return (ControlPartCode)c_rv;
 }
 
 static pascal ControlPartCode
 mytrackingproc(ControlHandle control, Point startPt, ControlActionUPP actionProc)
 {
-	ControlObject *ctl_obj;
-	PyObject *arglist, *rv;
-	short c_rv = -1;
+        ControlObject *ctl_obj;
+        PyObject *arglist, *rv;
+        short c_rv = -1;
 
-	ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
-	/* We cannot pass the actionProc without lots of work */
-	arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, startPt);
-	rv = callcallback(ctl_obj, kControlUserPaneTrackingProcTag, arglist);
-	Py_XDECREF(arglist);
-	if ( rv )
-		if (!PyArg_Parse(rv, "h", &c_rv))
-			PyErr_Clear();
-	Py_XDECREF(rv);
-	return (ControlPartCode)c_rv;
+        ctl_obj = (ControlObject *)CtlObj_WhichControl(control);
+        /* We cannot pass the actionProc without lots of work */
+        arglist = Py_BuildValue("OO&", ctl_obj, PyMac_BuildPoint, startPt);
+        rv = callcallback(ctl_obj, kControlUserPaneTrackingProcTag, arglist);
+        Py_XDECREF(arglist);
+        if ( rv )
+                if (!PyArg_Parse(rv, "h", &c_rv))
+                        PyErr_Clear();
+        Py_XDECREF(rv);
+        return (ControlPartCode)c_rv;
 }
 """
 
@@ -482,18 +482,18 @@
 """
 
 class MyObjectDefinition(PEP253Mixin, ObjectIdentityMixin, GlobalObjectDefinition):
-	def outputStructMembers(self):
-		GlobalObjectDefinition.outputStructMembers(self)
-		Output("PyObject *ob_callbackdict;")
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("SetControlReference(itself, (long)it);")
-		Output("it->ob_callbackdict = NULL;")
-	def outputCleanupStructMembers(self):
-		Output("Py_XDECREF(self->ob_callbackdict);")
-		Output("if (self->ob_itself)SetControlReference(self->ob_itself, (long)0); /* Make it forget about us */")
+    def outputStructMembers(self):
+        GlobalObjectDefinition.outputStructMembers(self)
+        Output("PyObject *ob_callbackdict;")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("SetControlReference(itself, (long)it);")
+        Output("it->ob_callbackdict = NULL;")
+    def outputCleanupStructMembers(self):
+        Output("Py_XDECREF(self->ob_callbackdict);")
+        Output("if (self->ob_itself)SetControlReference(self->ob_itself, (long)0); /* Make it forget about us */")
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff)
@@ -523,14 +523,14 @@
 
 if (!PyArg_ParseTuple(_args, "O&|O",
                       PyMac_GetPoint, &startPoint, &callback))
-	return NULL;
+        return NULL;
 if (callback && callback != Py_None) {
-	if (PyInt_Check(callback) && PyInt_AS_LONG(callback) == -1)
-		upp = (ControlActionUPP)-1;
-	else {
-		settrackfunc(callback);
-		upp = mytracker_upp;
-	}
+        if (PyInt_Check(callback) && PyInt_AS_LONG(callback) == -1)
+                upp = (ControlActionUPP)-1;
+        else {
+                settrackfunc(callback);
+                upp = mytracker_upp;
+        }
 }
 _rv = TrackControl(_self->ob_itself,
                    startPoint,
@@ -558,14 +558,14 @@
                       PyMac_GetPoint, &startPoint,
                       &modifiers,
                       &callback))
-	return NULL;
+        return NULL;
 if (callback && callback != Py_None) {
-	if (PyInt_Check(callback) && PyInt_AS_LONG(callback) == -1)
-		upp = (ControlActionUPP)-1;
-	else {
-		settrackfunc(callback);
-		upp = mytracker_upp;
-	}
+        if (PyInt_Check(callback) && PyInt_AS_LONG(callback) == -1)
+                upp = (ControlActionUPP)-1;
+        else {
+                settrackfunc(callback);
+                upp = mytracker_upp;
+        }
 }
 _rv = HandleControlClick(_self->ob_itself,
                    startPoint,
@@ -593,16 +593,16 @@
                       &inPart,
                       PyMac_GetOSType, &inTagName,
                       &buffer, &bufferSize))
-	return NULL;
+        return NULL;
 
 _err = SetControlData(_self->ob_itself,
-	              inPart,
-	              inTagName,
-	              bufferSize,
+                      inPart,
+                      inTagName,
+                      bufferSize,
                       buffer);
 
 if (_err != noErr)
-	return PyMac_Error(_err);
+        return PyMac_Error(_err);
 _res = Py_None;
 return _res;
 """
@@ -623,29 +623,29 @@
 if (!PyArg_ParseTuple(_args, "hO&",
                       &inPart,
                       PyMac_GetOSType, &inTagName))
-	return NULL;
+        return NULL;
 
 /* allocate a buffer for the data */
 _err = GetControlDataSize(_self->ob_itself,
-	                  inPart,
-	                  inTagName,
+                          inPart,
+                          inTagName,
                           &bufferSize);
 if (_err != noErr)
-	return PyMac_Error(_err);
+        return PyMac_Error(_err);
 buffer = PyMem_NEW(char, bufferSize);
 if (buffer == NULL)
-	return PyErr_NoMemory();
+        return PyErr_NoMemory();
 
 _err = GetControlData(_self->ob_itself,
-	              inPart,
-	              inTagName,
-	              bufferSize,
+                      inPart,
+                      inTagName,
+                      bufferSize,
                       buffer,
                       &outSize);
 
 if (_err != noErr) {
-	PyMem_DEL(buffer);
-	return PyMac_Error(_err);
+        PyMem_DEL(buffer);
+        return PyMac_Error(_err);
 }
 _res = Py_BuildValue("s#", buffer, outSize);
 PyMem_DEL(buffer);
@@ -667,16 +667,16 @@
                       &inPart,
                       PyMac_GetOSType, &inTagName,
                       OptResObj_Convert, &buffer))
-	return NULL;
+        return NULL;
 
 _err = SetControlData(_self->ob_itself,
-	              inPart,
-	              inTagName,
-	              sizeof(buffer),
+                      inPart,
+                      inTagName,
+                      sizeof(buffer),
                       (Ptr)&buffer);
 
 if (_err != noErr)
-	return PyMac_Error(_err);
+        return PyMac_Error(_err);
 _res = Py_None;
 return _res;
 """
@@ -696,29 +696,29 @@
 if (!PyArg_ParseTuple(_args, "hO&",
                       &inPart,
                       PyMac_GetOSType, &inTagName))
-	return NULL;
+        return NULL;
 
 /* Check it is handle-sized */
 _err = GetControlDataSize(_self->ob_itself,
-	                  inPart,
-	                  inTagName,
+                          inPart,
+                          inTagName,
                           &bufferSize);
 if (_err != noErr)
-	return PyMac_Error(_err);
+        return PyMac_Error(_err);
 if (bufferSize != sizeof(Handle)) {
-	PyErr_SetString(Ctl_Error, "GetControlDataSize() != sizeof(Handle)");
-	return NULL;
+        PyErr_SetString(Ctl_Error, "GetControlDataSize() != sizeof(Handle)");
+        return NULL;
 }
 
 _err = GetControlData(_self->ob_itself,
-	              inPart,
-	              inTagName,
-	              sizeof(Handle),
+                      inPart,
+                      inTagName,
+                      sizeof(Handle),
                       (Ptr)&hdl,
                       &bufferSize);
 
 if (_err != noErr) {
-	return PyMac_Error(_err);
+        return PyMac_Error(_err);
 }
 _res = Py_BuildValue("O&", OptResObj_New, hdl);
 return _res;
@@ -740,18 +740,18 @@
                       &inPart,
                       PyMac_GetOSType, &inTagName,
                       &callback))
-	return NULL;
+        return NULL;
 
 if ( setcallback((PyObject *)_self, inTagName, callback, &c_callback) < 0 )
-	return NULL;
+        return NULL;
 _err = SetControlData(_self->ob_itself,
-	              inPart,
-	              inTagName,
-	              sizeof(c_callback),
+                      inPart,
+                      inTagName,
+                      sizeof(c_callback),
                       (Ptr)&c_callback);
 
 if (_err != noErr)
-	return PyMac_Error(_err);
+        return PyMac_Error(_err);
 _res = Py_None;
 return _res;
 """
@@ -783,26 +783,26 @@
                       &size,
                       &direction,
                       &tabArrayObj))
-	return NULL;
+        return NULL;
 
 i = PySequence_Length(tabArrayObj);
 if (i == -1)
-	return NULL;
+        return NULL;
 if (i > MAXTABS) {
-	PyErr_SetString(Ctl_Error, "Too many tabs");
-	return NULL;
+        PyErr_SetString(Ctl_Error, "Too many tabs");
+        return NULL;
 }
 numTabs = i;
 for (i=0; i<numTabs; i++) {
-	tabEntry = PySequence_GetItem(tabArrayObj, i);
-	if (tabEntry == NULL)
-		return NULL;
-	if (!PyArg_Parse(tabEntry, "(O&O&B)",
-	                 ControlButtonContentInfo_Convert, &tabArray[i].icon,
-	                 CFStringRefObj_Convert, &tabArray[i].name,
-	                 &tabArray[i].enabled
-	                 ))
-		return NULL;
+        tabEntry = PySequence_GetItem(tabArrayObj, i);
+        if (tabEntry == NULL)
+                return NULL;
+        if (!PyArg_Parse(tabEntry, "(O&O&B)",
+                         ControlButtonContentInfo_Convert, &tabArray[i].icon,
+                         CFStringRefObj_Convert, &tabArray[i].name,
+                         &tabArray[i].enabled
+                         ))
+                return NULL;
 }
 
 _err = CreateTabsControl(window,
diff --git a/Mac/Modules/dlg/dlgscan.py b/Mac/Modules/dlg/dlgscan.py
index 3710d5d..7fb68f7 100644
--- a/Mac/Modules/dlg/dlgscan.py
+++ b/Mac/Modules/dlg/dlgscan.py
@@ -12,105 +12,105 @@
 OBJECT = "DialogPtr"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in ("DialogPtr", "DialogRef") and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in ("DialogPtr", "DialogRef") and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			'InitDialogs',
-			'ErrorSound',
-			# Dialogs are disposed when the object is deleted
-			'CloseDialog',
-			'DisposDialog',
-			'DisposeDialog',
-			'UpdtDialog',
-			'CouldAlert',
-			'FreeAlert',
-			'CouldDialog',
-			'FreeDialog',
-			'GetStdFilterProc',
-			'GetDialogParent',
-##			# Can't find these in the CW Pro 3 libraries
-			'SetDialogMovableModal',
-			'GetDialogControlNotificationProc',
-			'SetGrafPortOfDialog', # Funny, and probably not useful
-			# Can't find these:
-			'CloseStandardSheet',
-			'RunStandardAlert',
-			]
+    def makeblacklistnames(self):
+        return [
+                'InitDialogs',
+                'ErrorSound',
+                # Dialogs are disposed when the object is deleted
+                'CloseDialog',
+                'DisposDialog',
+                'DisposeDialog',
+                'UpdtDialog',
+                'CouldAlert',
+                'FreeAlert',
+                'CouldDialog',
+                'FreeDialog',
+                'GetStdFilterProc',
+                'GetDialogParent',
+##                      # Can't find these in the CW Pro 3 libraries
+                'SetDialogMovableModal',
+                'GetDialogControlNotificationProc',
+                'SetGrafPortOfDialog', # Funny, and probably not useful
+                # Can't find these:
+                'CloseStandardSheet',
+                'RunStandardAlert',
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"AlertStdAlertParamPtr",	# Too much work, for now
-			"AlertStdAlertParamRec",	# ditto
-			"AlertStdAlertParamRec_ptr",	# ditto
-			"AlertStdCFStringAlertParamPtr",	# ditto
-			"AlertStdCFStringAlertParamRec",
-			"AlertStdCFStringAlertParamRec_ptr",
-			"QTModelessCallbackProcPtr",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "AlertStdAlertParamPtr",        # Too much work, for now
+                "AlertStdAlertParamRec",        # ditto
+                "AlertStdAlertParamRec_ptr",    # ditto
+                "AlertStdCFStringAlertParamPtr",        # ditto
+                "AlertStdCFStringAlertParamRec",
+                "AlertStdCFStringAlertParamRec_ptr",
+                "QTModelessCallbackProcPtr",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("Str255", "*", "InMode")],
-			 [("*", "*", "OutMode")]),
-			
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
-			 
-			# GetDialogItem return handle is optional
-			([("Handle", "item", "OutMode")],
-			 [("OptHandle", "item", "OutMode")]),
-			
-			# NewDialog ETC.
-			([("void", "*", "OutMode")],
-			 [("NullStorage", "*", "InMode")]),
-			
-			([("DialogPtr", "*", "OutMode")],
-			 [("ExistingDialogPtr", "*", "*")]),
-			([("DialogRef", "*", "OutMode")],
-			 [("ExistingDialogPtr", "*", "*")]),
-			([("WindowPtr", "*", "OutMode")],
-			 [("ExistingWindowPtr", "*", "*")]),
-			([("WindowPtr", "*", "ReturnMode")],
-			 [("ExistingWindowPtr", "*", "*")]),
-			 
-			# StdFilterProc
-			([('EventRecord', 'event', 'OutMode'), 
-			  ('DialogItemIndex', 'itemHit', 'OutMode')],
-			 [('EventRecord', 'event', 'InOutMode'), 
-			  ('DialogItemIndex', 'itemHit', 'InOutMode')])
+    def makerepairinstructions(self):
+        return [
+                ([("Str255", "*", "InMode")],
+                 [("*", "*", "OutMode")]),
 
-			]
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
+
+                # GetDialogItem return handle is optional
+                ([("Handle", "item", "OutMode")],
+                 [("OptHandle", "item", "OutMode")]),
+
+                # NewDialog ETC.
+                ([("void", "*", "OutMode")],
+                 [("NullStorage", "*", "InMode")]),
+
+                ([("DialogPtr", "*", "OutMode")],
+                 [("ExistingDialogPtr", "*", "*")]),
+                ([("DialogRef", "*", "OutMode")],
+                 [("ExistingDialogPtr", "*", "*")]),
+                ([("WindowPtr", "*", "OutMode")],
+                 [("ExistingWindowPtr", "*", "*")]),
+                ([("WindowPtr", "*", "ReturnMode")],
+                 [("ExistingWindowPtr", "*", "*")]),
+
+                # StdFilterProc
+                ([('EventRecord', 'event', 'OutMode'),
+                  ('DialogItemIndex', 'itemHit', 'OutMode')],
+                 [('EventRecord', 'event', 'InOutMode'),
+                  ('DialogItemIndex', 'itemHit', 'InOutMode')])
+
+                ]
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/dlg/dlgsupport.py b/Mac/Modules/dlg/dlgsupport.py
index 85bc607..1c0cc6a 100644
--- a/Mac/Modules/dlg/dlgsupport.py
+++ b/Mac/Modules/dlg/dlgsupport.py
@@ -50,55 +50,55 @@
                                          EventRecord *event,
                                          short *itemHit)
 {
-	Boolean rv;
-	PyObject *args, *res;
-	PyObject *callback = Dlg_FilterProc_callback;
-	if (callback == NULL)
-		return 0; /* Default behavior */
-	Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */
-	args = Py_BuildValue("O&O&", DlgObj_WhichDialog, dialog, PyMac_BuildEventRecord, event);
-	if (args == NULL)
-		res = NULL;
-	else {
-		res = PyEval_CallObject(callback, args);
-		Py_DECREF(args);
-	}
-	if (res == NULL) {
-		PySys_WriteStderr("Exception in Dialog Filter\\n");
-		PyErr_Print();
-		*itemHit = -1; /* Fake return item */
-		return 1; /* We handled it */
-	}
-	else {
-		Dlg_FilterProc_callback = callback;
-		if (PyInt_Check(res)) {
-			*itemHit = PyInt_AsLong(res);
-			rv = 1;
-		}
-		else
-			rv = PyObject_IsTrue(res);
-	}
-	Py_DECREF(res);
-	return rv;
+        Boolean rv;
+        PyObject *args, *res;
+        PyObject *callback = Dlg_FilterProc_callback;
+        if (callback == NULL)
+                return 0; /* Default behavior */
+        Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */
+        args = Py_BuildValue("O&O&", DlgObj_WhichDialog, dialog, PyMac_BuildEventRecord, event);
+        if (args == NULL)
+                res = NULL;
+        else {
+                res = PyEval_CallObject(callback, args);
+                Py_DECREF(args);
+        }
+        if (res == NULL) {
+                PySys_WriteStderr("Exception in Dialog Filter\\n");
+                PyErr_Print();
+                *itemHit = -1; /* Fake return item */
+                return 1; /* We handled it */
+        }
+        else {
+                Dlg_FilterProc_callback = callback;
+                if (PyInt_Check(res)) {
+                        *itemHit = PyInt_AsLong(res);
+                        rv = 1;
+                }
+                else
+                        rv = PyObject_IsTrue(res);
+        }
+        Py_DECREF(res);
+        return rv;
 }
 
 static ModalFilterUPP
 Dlg_PassFilterProc(PyObject *callback)
 {
-	PyObject *tmp = Dlg_FilterProc_callback;
-	static ModalFilterUPP UnivFilterUpp = NULL;
-	
-	Dlg_FilterProc_callback = NULL;
-	if (callback == Py_None) {
-		Py_XDECREF(tmp);
-		return NULL;
-	}
-	Py_INCREF(callback);
-	Dlg_FilterProc_callback = callback;
-	Py_XDECREF(tmp);
-	if ( UnivFilterUpp == NULL )
-		UnivFilterUpp = NewModalFilterUPP(&Dlg_UnivFilterProc);
-	return UnivFilterUpp;
+        PyObject *tmp = Dlg_FilterProc_callback;
+        static ModalFilterUPP UnivFilterUpp = NULL;
+
+        Dlg_FilterProc_callback = NULL;
+        if (callback == Py_None) {
+                Py_XDECREF(tmp);
+                return NULL;
+        }
+        Py_INCREF(callback);
+        Dlg_FilterProc_callback = callback;
+        Py_XDECREF(tmp);
+        if ( UnivFilterUpp == NULL )
+                UnivFilterUpp = NewModalFilterUPP(&Dlg_UnivFilterProc);
+        return UnivFilterUpp;
 }
 
 static PyObject *Dlg_UserItemProc_callback = NULL;
@@ -106,24 +106,24 @@
 static pascal void Dlg_UnivUserItemProc(DialogPtr dialog,
                                          short item)
 {
-	PyObject *args, *res;
+        PyObject *args, *res;
 
-	if (Dlg_UserItemProc_callback == NULL)
-		return; /* Default behavior */
-	Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */
-	args = Py_BuildValue("O&h", DlgObj_WhichDialog, dialog, item);
-	if (args == NULL)
-		res = NULL;
-	else {
-		res = PyEval_CallObject(Dlg_UserItemProc_callback, args);
-		Py_DECREF(args);
-	}
-	if (res == NULL) {
-		PySys_WriteStderr("Exception in Dialog UserItem proc\\n");
-		PyErr_Print();
-	}
-	Py_XDECREF(res);
-	return;
+        if (Dlg_UserItemProc_callback == NULL)
+                return; /* Default behavior */
+        Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */
+        args = Py_BuildValue("O&h", DlgObj_WhichDialog, dialog, item);
+        if (args == NULL)
+                res = NULL;
+        else {
+                res = PyEval_CallObject(Dlg_UserItemProc_callback, args);
+                Py_DECREF(args);
+        }
+        if (res == NULL) {
+                PySys_WriteStderr("Exception in Dialog UserItem proc\\n");
+                PyErr_Print();
+        }
+        Py_XDECREF(res);
+        return;
 }
 
 #if 0
@@ -146,9 +146,9 @@
 WindowPtr
 DlgObj_ConvertToWindow(PyObject *self)
 {
-	if ( DlgObj_Check(self) )
-		return GetDialogWindow(((DialogObject *)self)->ob_itself);
-	return NULL;
+        if ( DlgObj_Check(self) )
+                return GetDialogWindow(((DialogObject *)self)->ob_itself);
+        return NULL;
 }
 #endif
 /* Return the object corresponding to the dialog, or None */
@@ -156,77 +156,77 @@
 PyObject *
 DlgObj_WhichDialog(DialogPtr d)
 {
-	PyObject *it;
-	
-	if (d == NULL) {
-		it = Py_None;
-		Py_INCREF(it);
-	} else {
-		WindowPtr w = GetDialogWindow(d);
-		
-		it = (PyObject *) GetWRefCon(w);
-		if (it == NULL || ((DialogObject *)it)->ob_itself != d || !DlgObj_Check(it)) {
+        PyObject *it;
+
+        if (d == NULL) {
+                it = Py_None;
+                Py_INCREF(it);
+        } else {
+                WindowPtr w = GetDialogWindow(d);
+
+                it = (PyObject *) GetWRefCon(w);
+                if (it == NULL || ((DialogObject *)it)->ob_itself != d || !DlgObj_Check(it)) {
 #if 0
-			/* Should do this, but we don't have an ob_freeit for dialogs yet. */
-			it = WinObj_New(w);
-			((WindowObject *)it)->ob_freeit = NULL;
+                        /* Should do this, but we don't have an ob_freeit for dialogs yet. */
+                        it = WinObj_New(w);
+                        ((WindowObject *)it)->ob_freeit = NULL;
 #else
-			it = Py_None;
-			Py_INCREF(it);
+                        it = Py_None;
+                        Py_INCREF(it);
 #endif
-		} else {
-			Py_INCREF(it);
-		}
-	}
-	return it;
+                } else {
+                        Py_INCREF(it);
+                }
+        }
+        return it;
 }
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(DialogPtr, DlgObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(DialogPtr, DlgObj_WhichDialog);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(DialogPtr, DlgObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(DialogPtr, DlgObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(DialogPtr, DlgObj_WhichDialog);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(DialogPtr, DlgObj_Convert);
 """
 
 
 # Define a class which specializes our object definition
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def __init__(self, name, prefix = None, itselftype = None):
-		GlobalObjectDefinition.__init__(self, name, prefix, itselftype)
+    def __init__(self, name, prefix = None, itselftype = None):
+        GlobalObjectDefinition.__init__(self, name, prefix, itselftype)
 ## This won't work in Carbon, so we disable it for all MacPythons:-(
 ## But see the comment above:-((
-##		self.basechain = "&WinObj_chain"
+##              self.basechain = "&WinObj_chain"
 
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("SetWRefCon(GetDialogWindow(itself), (long)it);")
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("SetWRefCon(GetDialogWindow(itself), (long)it);")
 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return Py_None;")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return Py_None;")
 
-	def outputCheckConvertArg(self):
-		Output("if (v == Py_None) { *p_itself = NULL; return 1; }")
-		Output("if (PyInt_Check(v)) { *p_itself = (DialogPtr)PyInt_AsLong(v);")
-		Output("                      return 1; }")
+    def outputCheckConvertArg(self):
+        Output("if (v == Py_None) { *p_itself = NULL; return 1; }")
+        Output("if (PyInt_Check(v)) { *p_itself = (DialogPtr)PyInt_AsLong(v);")
+        Output("                      return 1; }")
 
-	def outputCompare(self):
-		Output()
-		Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype, self.objecttype)
-		OutLbrace()
-		Output("if ( self->ob_itself > other->ob_itself ) return 1;")
-		Output("if ( self->ob_itself < other->ob_itself ) return -1;")
-		Output("return 0;")
-		OutRbrace()
-		
-	def outputHash(self):
-		Output()
-		Output("static int %s_hash(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("return (int)self->ob_itself;")
-		OutRbrace()
-		
-	def outputFreeIt(self, itselfname):
-		Output("DisposeDialog(%s);", itselfname)
+    def outputCompare(self):
+        Output()
+        Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype, self.objecttype)
+        OutLbrace()
+        Output("if ( self->ob_itself > other->ob_itself ) return 1;")
+        Output("if ( self->ob_itself < other->ob_itself ) return -1;")
+        Output("return 0;")
+        OutRbrace()
+
+    def outputHash(self):
+        Output()
+        Output("static int %s_hash(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("return (int)self->ob_itself;")
+        OutRbrace()
+
+    def outputFreeIt(self, itselfname):
+        Output("DisposeDialog(%s);", itselfname)
 
 # Create the generator groups and link them
 module = MacModule('_Dlg', 'Dlg', includestuff, finalstuff, initstuff)
@@ -247,28 +247,28 @@
 for f in methods: object.add(f)
 
 setuseritembody = """
-	PyObject *new = NULL;
-	
-	
-	if (!PyArg_ParseTuple(_args, "|O", &new))
-		return NULL;
+        PyObject *new = NULL;
 
-	if (Dlg_UserItemProc_callback && new && new != Py_None) {
-		PyErr_SetString(Dlg_Error, "Another UserItemProc is already installed");
-		return NULL;
-	}
-	
-	if (new == NULL || new == Py_None) {
-		new = NULL;
-		_res = Py_None;
-		Py_INCREF(Py_None);
-	} else {
-		Py_INCREF(new);
-		_res = Py_BuildValue("O&", ResObj_New, (Handle)NewUserItemUPP(Dlg_UnivUserItemProc));
-	}
-	
-	Dlg_UserItemProc_callback = new;
-	return _res;
+
+        if (!PyArg_ParseTuple(_args, "|O", &new))
+                return NULL;
+
+        if (Dlg_UserItemProc_callback && new && new != Py_None) {
+                PyErr_SetString(Dlg_Error, "Another UserItemProc is already installed");
+                return NULL;
+        }
+
+        if (new == NULL || new == Py_None) {
+                new = NULL;
+                _res = Py_None;
+                Py_INCREF(Py_None);
+        } else {
+                Py_INCREF(new);
+                _res = Py_BuildValue("O&", ResObj_New, (Handle)NewUserItemUPP(Dlg_UnivUserItemProc));
+        }
+
+        Dlg_UserItemProc_callback = new;
+        return _res;
 """
 f = ManualGenerator("SetUserItemHandler", setuseritembody)
 module.add(f)
diff --git a/Mac/Modules/drag/dragscan.py b/Mac/Modules/drag/dragscan.py
index 282728e..923a56b 100644
--- a/Mac/Modules/drag/dragscan.py
+++ b/Mac/Modules/drag/dragscan.py
@@ -7,74 +7,74 @@
 from scantools import Scanner
 
 MISSING_DEFINES="""
-kDragHasLeftSenderWindow	= (1 << 0)
+kDragHasLeftSenderWindow        = (1 << 0)
 kDragInsideSenderApplication = (1 << 1)
-kDragInsideSenderWindow		= (1 << 2)
-kDragRegionAndImage			= (1 << 4)
-flavorSenderOnly			= (1 << 0)
-flavorSenderTranslated		= (1 << 1)
-flavorNotSaved				= (1 << 2)
-flavorSystemTranslated		= (1 << 8)
+kDragInsideSenderWindow         = (1 << 2)
+kDragRegionAndImage                     = (1 << 4)
+flavorSenderOnly                        = (1 << 0)
+flavorSenderTranslated          = (1 << 1)
+flavorNotSaved                          = (1 << 2)
+flavorSystemTranslated          = (1 << 8)
 """
 
 
 def main():
-	input = INCLUDEDIR + "Drag.h"
-	output = "draggen.py"
-	defsoutput = TOOLBOXDIR + "Dragconst.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now doing 'import dragsupport' ==="
-	import dragsupport
-	print "=== Done.  It's up to you to compile Dragmodule.c ==="
+    input = INCLUDEDIR + "Drag.h"
+    output = "draggen.py"
+    defsoutput = TOOLBOXDIR + "Dragconst.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now doing 'import dragsupport' ==="
+    import dragsupport
+    print "=== Done.  It's up to you to compile Dragmodule.c ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in ('DragReference', 'DragRef') and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in ('DragReference', 'DragRef') and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("from Carbon.TextEdit import *\n")
-		self.defsfile.write("from Carbon.QuickDraw import *\n")
-		self.defsfile.write("fkDragActionAll = -1\n")
-		self.defsfile.write("\n")
-		# Defines unparseable in Drag.h
-		self.defsfile.write(MISSING_DEFINES)
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("from Carbon.TextEdit import *\n")
+        self.defsfile.write("from Carbon.QuickDraw import *\n")
+        self.defsfile.write("fkDragActionAll = -1\n")
+        self.defsfile.write("\n")
+        # Defines unparseable in Drag.h
+        self.defsfile.write(MISSING_DEFINES)
 
-	def makeblacklistnames(self):
-		return [
-			"kDragActionAll",
-			]
+    def makeblacklistnames(self):
+        return [
+                "kDragActionAll",
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"DragTrackingHandlerUPP",
-			"DragReceiveHandlerUPP",
-			"DragSendDataUPP",
-			"DragInputUPP",
-			"DragDrawingUPP",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "DragTrackingHandlerUPP",
+                "DragReceiveHandlerUPP",
+                "DragSendDataUPP",
+                "DragInputUPP",
+                "DragDrawingUPP",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("void_ptr", "*", "InMode"), ("Size", "*", "InMode")],
-			 [("OptionalInBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("Size", "*", "OutMode")],
-			 [("VarOutBuffer", "*", "InOutMode")]),
-			
-			]
+    def makerepairinstructions(self):
+        return [
+                ([("void_ptr", "*", "InMode"), ("Size", "*", "InMode")],
+                 [("OptionalInBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("Size", "*", "OutMode")],
+                 [("VarOutBuffer", "*", "InOutMode")]),
+
+                ]
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/drag/dragsupport.py b/Mac/Modules/drag/dragsupport.py
index c200950..45838ef 100644
--- a/Mac/Modules/drag/dragsupport.py
+++ b/Mac/Modules/drag/dragsupport.py
@@ -6,16 +6,16 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Drag.h'		# The Apple header file
-MODNAME = '_Drag'				# The name of the module
-OBJECTNAME = 'DragObj'			# The basic name of the objects used here
+MACHEADERFILE = 'Drag.h'                # The Apple header file
+MODNAME = '_Drag'                               # The name of the module
+OBJECTNAME = 'DragObj'                  # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Drag'			# The prefix for module-wide routines
-OBJECTTYPE = 'DragRef'	# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Drag'                      # The prefix for module-wide routines
+OBJECTTYPE = 'DragRef'  # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -69,81 +69,81 @@
 dragglue_TrackingHandler(DragTrackingMessage theMessage, WindowPtr theWindow,
                          void *handlerRefCon, DragReference theDrag)
 {
-	PyObject *args, *rv;
-	int i;
-	
-	args = Py_BuildValue("hO&O&", theMessage, DragObj_New, theDrag, WinObj_WhichWindow, theWindow);
-	if ( args == NULL )
-		return -1;
-	rv = PyEval_CallObject((PyObject *)handlerRefCon, args);
-	Py_DECREF(args);
-	if ( rv == NULL ) {
-		PySys_WriteStderr("Drag: Exception in TrackingHandler\\n");
-		PyErr_Print();
-		return -1;
-	}
-	i = -1;
-	if ( rv == Py_None )
-		i = 0;
-	else
-		PyArg_Parse(rv, "l", &i);
-	Py_DECREF(rv);
-	return i;
+        PyObject *args, *rv;
+        int i;
+
+        args = Py_BuildValue("hO&O&", theMessage, DragObj_New, theDrag, WinObj_WhichWindow, theWindow);
+        if ( args == NULL )
+                return -1;
+        rv = PyEval_CallObject((PyObject *)handlerRefCon, args);
+        Py_DECREF(args);
+        if ( rv == NULL ) {
+                PySys_WriteStderr("Drag: Exception in TrackingHandler\\n");
+                PyErr_Print();
+                return -1;
+        }
+        i = -1;
+        if ( rv == Py_None )
+                i = 0;
+        else
+                PyArg_Parse(rv, "l", &i);
+        Py_DECREF(rv);
+        return i;
 }
 
 static pascal OSErr
 dragglue_ReceiveHandler(WindowPtr theWindow, void *handlerRefCon,
                         DragReference theDrag)
 {
-	PyObject *args, *rv;
-	int i;
-	
-	args = Py_BuildValue("O&O&", DragObj_New, theDrag, WinObj_WhichWindow, theWindow);
-	if ( args == NULL )
-		return -1;
-	rv = PyEval_CallObject((PyObject *)handlerRefCon, args);
-	Py_DECREF(args);
-	if ( rv == NULL ) {
-		PySys_WriteStderr("Drag: Exception in ReceiveHandler\\n");
-		PyErr_Print();
-		return -1;
-	}
-	i = -1;
-	if ( rv == Py_None )
-		i = 0;
-	else
-		PyArg_Parse(rv, "l", &i);
-	Py_DECREF(rv);
-	return i;
+        PyObject *args, *rv;
+        int i;
+
+        args = Py_BuildValue("O&O&", DragObj_New, theDrag, WinObj_WhichWindow, theWindow);
+        if ( args == NULL )
+                return -1;
+        rv = PyEval_CallObject((PyObject *)handlerRefCon, args);
+        Py_DECREF(args);
+        if ( rv == NULL ) {
+                PySys_WriteStderr("Drag: Exception in ReceiveHandler\\n");
+                PyErr_Print();
+                return -1;
+        }
+        i = -1;
+        if ( rv == Py_None )
+                i = 0;
+        else
+                PyArg_Parse(rv, "l", &i);
+        Py_DECREF(rv);
+        return i;
 }
 
 static pascal OSErr
 dragglue_SendData(FlavorType theType, void *dragSendRefCon,
                       ItemReference theItem, DragReference theDrag)
 {
-	DragObjObject *self = (DragObjObject *)dragSendRefCon;
-	PyObject *args, *rv;
-	int i;
-	
-	if ( self->sendproc == NULL )
-		return -1;
-	args = Py_BuildValue("O&l", PyMac_BuildOSType, theType, theItem);
-	if ( args == NULL )
-		return -1;
-	rv = PyEval_CallObject(self->sendproc, args);
-	Py_DECREF(args);
-	if ( rv == NULL ) {
-		PySys_WriteStderr("Drag: Exception in SendDataHandler\\n");
-		PyErr_Print();
-		return -1;
-	}
-	i = -1;
-	if ( rv == Py_None )
-		i = 0;
-	else
-		PyArg_Parse(rv, "l", &i);
-	Py_DECREF(rv);
-	return i;
+        DragObjObject *self = (DragObjObject *)dragSendRefCon;
+        PyObject *args, *rv;
+        int i;
+
+        if ( self->sendproc == NULL )
+                return -1;
+        args = Py_BuildValue("O&l", PyMac_BuildOSType, theType, theItem);
+        if ( args == NULL )
+                return -1;
+        rv = PyEval_CallObject(self->sendproc, args);
+        Py_DECREF(args);
+        if ( rv == NULL ) {
+                PySys_WriteStderr("Drag: Exception in SendDataHandler\\n");
+                PyErr_Print();
+                return -1;
+        }
+        i = -1;
+        if ( rv == Py_None )
+                i = 0;
+        else
+                PyArg_Parse(rv, "l", &i);
+        Py_DECREF(rv);
+        return i;
 }
 
 #if 0
@@ -165,8 +165,8 @@
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(DragRef, DragObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(DragRef, DragObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(DragRef, DragObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(DragRef, DragObj_Convert);
 """
 
 variablestuff = """
@@ -177,33 +177,33 @@
 dragglue_InputUPP = NewDragInputUPP(dragglue_Input);
 dragglue_DrawingUPP = NewDragDrawingUPP(dragglue_Drawing);
 #endif
-"""    
+"""
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					PyErr_SetString(Drag_Error,"Cannot create null Drag");
-					return NULL;
-				}""")
-	def outputFreeIt(self, itselfname):
-		## Output("DisposeDrag(%s);", itselfname)
-		Output("Py_XDECREF(self->sendproc);")
-		## Output("Py_XDECREF(self->inputproc);")
-		## Output("Py_XDECREF(self->drawingproc);")
-		
-	def outputStructMembers(self):
-		GlobalObjectDefinition.outputStructMembers(self)
-		Output("PyObject *sendproc;")
-		## Output("PyObject *inputproc;")
-		## Output("PyObject *drawingproc;")
-		
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("it->sendproc = NULL;")
-		## Output("it->inputproc = NULL;")
-		## Output("it->drawingproc = NULL;")
-		
-		
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(Drag_Error,"Cannot create null Drag");
+                                return NULL;
+                        }""")
+    def outputFreeIt(self, itselfname):
+        ## Output("DisposeDrag(%s);", itselfname)
+        Output("Py_XDECREF(self->sendproc);")
+        ## Output("Py_XDECREF(self->inputproc);")
+        ## Output("Py_XDECREF(self->drawingproc);")
+
+    def outputStructMembers(self):
+        GlobalObjectDefinition.outputStructMembers(self)
+        Output("PyObject *sendproc;")
+        ## Output("PyObject *inputproc;")
+        ## Output("PyObject *drawingproc;")
+
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("it->sendproc = NULL;")
+        ## Output("it->inputproc = NULL;")
+        ## Output("it->drawingproc = NULL;")
+
+
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff, variablestuff)
 object = MyObjectDefinition(OBJECTNAME, OBJECTPREFIX, OBJECTTYPE)
@@ -228,15 +228,15 @@
     PyObject *callback;
     WindowPtr theWindow = NULL;
     OSErr _err;
-    
+
     if ( !PyArg_ParseTuple(_args, "O|O&", &callback, WinObj_Convert, &theWindow) )
-    	return NULL;
-    Py_INCREF(callback);	/* Cannot decref later, too bad */
+        return NULL;
+    Py_INCREF(callback);        /* Cannot decref later, too bad */
     _err = InstallTrackingHandler(dragglue_TrackingHandlerUPP, theWindow, (void *)callback);
-	if (_err != noErr) return PyMac_Error(_err);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
+        if (_err != noErr) return PyMac_Error(_err);
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
 """
 installtracking = ManualGenerator("InstallTrackingHandler", installtracking_body)
 module.add(installtracking)
@@ -245,15 +245,15 @@
     PyObject *callback;
     WindowPtr theWindow = NULL;
     OSErr _err;
-    
+
     if ( !PyArg_ParseTuple(_args, "O|O&", &callback, WinObj_Convert, &theWindow) )
-    	return NULL;
-    Py_INCREF(callback);	/* Cannot decref later, too bad */
+        return NULL;
+    Py_INCREF(callback);        /* Cannot decref later, too bad */
     _err = InstallReceiveHandler(dragglue_ReceiveHandlerUPP, theWindow, (void *)callback);
-	if (_err != noErr) return PyMac_Error(_err);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
+        if (_err != noErr) return PyMac_Error(_err);
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
 """
 installreceive = ManualGenerator("InstallReceiveHandler", installreceive_body)
 module.add(installreceive)
@@ -261,14 +261,14 @@
 removetracking_body = """
     WindowPtr theWindow = NULL;
     OSErr _err;
-    
+
     if ( !PyArg_ParseTuple(_args, "|O&", WinObj_Convert, &theWindow) )
-    	return NULL;
+        return NULL;
     _err = RemoveTrackingHandler(dragglue_TrackingHandlerUPP, theWindow);
-	if (_err != noErr) return PyMac_Error(_err);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
+        if (_err != noErr) return PyMac_Error(_err);
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
 """
 removetracking = ManualGenerator("RemoveTrackingHandler", removetracking_body)
 module.add(removetracking)
@@ -276,14 +276,14 @@
 removereceive_body = """
     WindowPtr theWindow = NULL;
     OSErr _err;
-    
+
     if ( !PyArg_ParseTuple(_args, "|O&", WinObj_Convert, &theWindow) )
-    	return NULL;
+        return NULL;
     _err = RemoveReceiveHandler(dragglue_ReceiveHandlerUPP, theWindow);
-	if (_err != noErr) return PyMac_Error(_err);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
+        if (_err != noErr) return PyMac_Error(_err);
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
 """
 removereceive = ManualGenerator("RemoveReceiveHandler", removereceive_body)
 module.add(removereceive)
diff --git a/Mac/Modules/evt/evtedit.py b/Mac/Modules/evt/evtedit.py
index 3426b70..02087e1 100644
--- a/Mac/Modules/evt/evtedit.py
+++ b/Mac/Modules/evt/evtedit.py
@@ -7,4 +7,3 @@
 f = Function(UInt32, 'TickCount',
 )
 functions.append(f)
-
diff --git a/Mac/Modules/evt/evtscan.py b/Mac/Modules/evt/evtscan.py
index e5762d9..0d0c9ec 100644
--- a/Mac/Modules/evt/evtscan.py
+++ b/Mac/Modules/evt/evtscan.py
@@ -11,71 +11,71 @@
 OBJECT = "NOTUSED"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"KeyTranslate",
-			"GetEventMask",		# I cannot seem to find this routine...
-			"WaitNextEvent",	# Manually generated because of optional region
-			# Constants with funny definitions
-			"osEvtMessageMask",
-			# OS8 calls
-			'SystemEvent',
-			'SystemTask',
-			'SystemClick',
-			'GetOSEvent',
-			'OSEventAvail',
-			]
+    def makeblacklistnames(self):
+        return [
+                "KeyTranslate",
+                "GetEventMask",         # I cannot seem to find this routine...
+                "WaitNextEvent",        # Manually generated because of optional region
+                # Constants with funny definitions
+                "osEvtMessageMask",
+                # OS8 calls
+                'SystemEvent',
+                'SystemTask',
+                'SystemClick',
+                'GetOSEvent',
+                'OSEventAvail',
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"EvQElPtr", "QHdrPtr"
-			]
+    def makeblacklisttypes(self):
+        return [
+                "EvQElPtr", "QHdrPtr"
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
-			
-			([("void", "wStorage", "OutMode")],
-			 [("NullStorage", "*", "InMode")]),
-			
-			# GetKeys
-			([('KeyMap', 'theKeys', 'InMode')],
-			 [('*', '*', 'OutMode')]),
-			 
-			# GetTicker
-			([('unsigned long', '*', '*')],
-			 [('unsigned_long', '*', '*')]),
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
+
+                ([("void", "wStorage", "OutMode")],
+                 [("NullStorage", "*", "InMode")]),
+
+                # GetKeys
+                ([('KeyMap', 'theKeys', 'InMode')],
+                 [('*', '*', 'OutMode')]),
+
+                # GetTicker
+                ([('unsigned long', '*', '*')],
+                 [('unsigned_long', '*', '*')]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/evt/evtsupport.py b/Mac/Modules/evt/evtsupport.py
index ccdc1c5..f58da14 100644
--- a/Mac/Modules/evt/evtsupport.py
+++ b/Mac/Modules/evt/evtsupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Events.h'		# The Apple header file
-MODNAME = '_Evt'				# The name of the module
-OBJECTNAME = 'Event'			# The basic name of the objects used here
-KIND = 'Record'				# Usually 'Ptr' or 'Handle'
+MACHEADERFILE = 'Events.h'              # The Apple header file
+MODNAME = '_Evt'                                # The name of the module
+OBJECTNAME = 'Event'                    # The basic name of the objects used here
+KIND = 'Record'                         # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Evt'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + KIND		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Evt'                       # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + KIND          # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -72,7 +72,7 @@
                       &eventMask,
                       &sleep,
                       OptResObj_Convert, &mouseregion))
-	return NULL;
+        return NULL;
 _rv = WaitNextEvent(eventMask,
                     &theEvent,
                     sleep,
@@ -90,4 +90,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/file/filescan.py b/Mac/Modules/file/filescan.py
index f8b5ba2..8ebc69f 100644
--- a/Mac/Modules/file/filescan.py
+++ b/Mac/Modules/file/filescan.py
@@ -10,190 +10,190 @@
 SHORT = "file"
 
 def main():
-	input = ["Files.h", "Aliases.h", "Finder.h"]
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	scanner.gentypetest(SHORT+"typetest.py")
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = ["Files.h", "Aliases.h", "Finder.h"]
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    scanner.gentypetest(SHORT+"typetest.py")
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			# Funny special case
-			if len(arglist) > 2:
-				t, n, m = arglist[1]
-				if t == "AliasHandle" and m == "InMode":
-					classname = "Arg2MethodGenerator"
-					listname = "alias_methods"
-					return classname, listname
-			# Normal cases
-			t, n, m = arglist[0]
-			if t == "AliasHandle" and m == "InMode":
-				classname = "Method"
-				listname = "alias_methods"
-			if t == "FSSpec_ptr" and m == "InMode":
-				classname = "Method"
-				listname = "fsspec_methods"
-			if t == "FSRef_ptr" and m == "InMode":
-				classname = "Method"
-				listname = "fsref_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            # Funny special case
+            if len(arglist) > 2:
+                t, n, m = arglist[1]
+                if t == "AliasHandle" and m == "InMode":
+                    classname = "Arg2MethodGenerator"
+                    listname = "alias_methods"
+                    return classname, listname
+            # Normal cases
+            t, n, m = arglist[0]
+            if t == "AliasHandle" and m == "InMode":
+                classname = "Method"
+                listname = "alias_methods"
+            if t == "FSSpec_ptr" and m == "InMode":
+                classname = "Method"
+                listname = "fsspec_methods"
+            if t == "FSRef_ptr" and m == "InMode":
+                classname = "Method"
+                listname = "fsref_methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			# Constants with incompatible definitions
-			"kioACAccessOwnerMask",
-			"kFSCatInfoReserved",
-			"kFSIterateReserved",
-			"kSystemFolderType",
-			
-			"FSRefMakePath", # Do this manually
-#			"ResolveAlias", # Do this manually
-#			"ResolveAliasWithMountFlags", # Do this manually
-#			"FollowFinderAlias", # Do this manually
-			
-			"FSRead", # Couldn't be bothered
-			"FSWrite", # ditto
-			"FSReadFork", # ditto
-			"FSWriteFork", # ditto
-			
-			# Old routines:
-			"GetWDInfo",
-			"OpenWD",
-			"CloseWD",
-			"FInitQueue",
-			"rstflock",
-			"setflock",
-			"setfinfo",
-			"fsrename",
-			"fsdelete",
-			"create",
-			"flushvol",
-			"eject",
-			"umountvol",
-			"setvol",
-			"getvol",
-			"getfinfo",
-			"getvinfo",
-			"fsopen",
-			"RstFLock",
-			"SetFLock",
-			"SetFInfo",
-			"Rename",
-			"OpenRF",
-			"FSDelete",
-			"Create",
-			"GetVol",
-			"GetFInfo",
-			"GetVInfo",
-			"FSOpen",
-			"Eject",
-			"SetVol",
-			"openrf",
-			"unmountvol",
-			"OpenDF",
-			
-			]
+    def makeblacklistnames(self):
+        return [
+                # Constants with incompatible definitions
+                "kioACAccessOwnerMask",
+                "kFSCatInfoReserved",
+                "kFSIterateReserved",
+                "kSystemFolderType",
 
-	def makeblacklisttypes(self):
-		return [
-			"CInfoPBPtr", # Old stuff
-			"CMovePBPtr", # Old stuff
-			"ParmBlkPtr", # Old stuff
-			"HParmBlkPtr", # Old stuff
-			"DTPBPtr", # Old stuff
-			"FCBPBPtr", # Old stuff
-			"QHdrPtr", # Old stuff
-			"CSParamPtr", # Old stuff
-			"FSCatalogBulkParam", # old stuff
-			"FSForkCBInfoParam", # old stuff
-			"FSForkIOParam", # old stuff
-			"FSRefParam",  # old stuff
-			"FSVolumeInfoParam", # old stuff
-			"WDPBPtr", # old stuff
-			"XCInfoPBPtr", # old stuff
-			"XVolumeParamPtr", # old stuff
+                "FSRefMakePath", # Do this manually
+#                       "ResolveAlias", # Do this manually
+#                       "ResolveAliasWithMountFlags", # Do this manually
+#                       "FollowFinderAlias", # Do this manually
 
-			
-			"CatPositionRec", # State variable, not too difficult
-			"FSIterator", # Should become an object
-			"FSForkInfo", # Lots of fields, difficult struct
-			"FSSearchParams", # Also catsearch stuff
-			"FSVolumeInfo", # big struct
-			"FSVolumeInfo_ptr", # big struct
-			
-			"IOCompletionProcPtr", # proc pointer
-			"IOCompletionUPP", # Proc pointer
-			"AliasFilterProcPtr",
-			"AliasFilterUPP",
-			"FNSubscriptionUPP",
-			
-			"FNSubscriptionRef", # Lazy, for now.
-			]
+                "FSRead", # Couldn't be bothered
+                "FSWrite", # ditto
+                "FSReadFork", # ditto
+                "FSWriteFork", # ditto
 
-	def makerepairinstructions(self):
-		return [
-			# Various ways to give pathnames
-			([('char_ptr', '*', 'InMode')],
-			 [('stringptr', '*', 'InMode')]
-			),
-			 
-			# Unicode filenames passed as length, buffer
-			([('UniCharCount', '*', 'InMode'),
-			  ('UniChar_ptr', '*', 'InMode')],
-			 [('UnicodeReverseInBuffer', '*', 'InMode')]
-			),
-			# Wrong guess
-			([('Str63', 'theString', 'InMode')],
-			 [('Str63', 'theString', 'OutMode')]),
-			 
-			# Yet another way to give a pathname:-)
-			([('short', 'fullPathLength', 'InMode'),
-			  ('void_ptr', 'fullPath', 'InMode')],
-			 [('FullPathName', 'fullPath', 'InMode')]),
-	
-			# Various ResolveAliasFileXXXX functions
-			([('FSSpec', 'theSpec', 'OutMode')],
-			 [('FSSpec_ptr', 'theSpec', 'InOutMode')]),
-			 
-			([('FSRef', 'theRef', 'OutMode')],
-			 [('FSRef_ptr', 'theRef', 'InOutMode')]),
-			 
-			# The optional FSSpec to all ResolveAlias and NewAlias methods
-			([('FSSpec_ptr', 'fromFile', 'InMode')],
-    		 [('OptFSSpecPtr', 'fromFile', 'InMode')]),
+                # Old routines:
+                "GetWDInfo",
+                "OpenWD",
+                "CloseWD",
+                "FInitQueue",
+                "rstflock",
+                "setflock",
+                "setfinfo",
+                "fsrename",
+                "fsdelete",
+                "create",
+                "flushvol",
+                "eject",
+                "umountvol",
+                "setvol",
+                "getvol",
+                "getfinfo",
+                "getvinfo",
+                "fsopen",
+                "RstFLock",
+                "SetFLock",
+                "SetFInfo",
+                "Rename",
+                "OpenRF",
+                "FSDelete",
+                "Create",
+                "GetVol",
+                "GetFInfo",
+                "GetVInfo",
+                "FSOpen",
+                "Eject",
+                "SetVol",
+                "openrf",
+                "unmountvol",
+                "OpenDF",
 
-			([('FSRef_ptr', 'fromFile', 'InMode')],
-    		 [('OptFSRefPtr', 'fromFile', 'InMode')]),
-    		 
-##    		# FSCatalogInfo input handling
-##			([('FSCatalogInfoBitmap', 'whichInfo', 'InMode'),
-##    		  ('FSCatalogInfo_ptr', 'catalogInfo', 'InMode')],
-##    		 [('FSCatalogInfoAndBitmap_in', 'catalogInfo', 'InMode')]),
-##    		
-##    		# FSCatalogInfo output handling
-##			([('FSCatalogInfoBitmap', 'whichInfo', 'InMode'),
-##    		  ('FSCatalogInfo', 'catalogInfo', 'OutMode')],
-##    		 [('FSCatalogInfoAndBitmap_out', 'catalogInfo', 'InOutMode')]),
-##    		
+                ]
 
-		]
-		
-   
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("true = True\n")
-		self.defsfile.write("false = False\n")
-			
+    def makeblacklisttypes(self):
+        return [
+                "CInfoPBPtr", # Old stuff
+                "CMovePBPtr", # Old stuff
+                "ParmBlkPtr", # Old stuff
+                "HParmBlkPtr", # Old stuff
+                "DTPBPtr", # Old stuff
+                "FCBPBPtr", # Old stuff
+                "QHdrPtr", # Old stuff
+                "CSParamPtr", # Old stuff
+                "FSCatalogBulkParam", # old stuff
+                "FSForkCBInfoParam", # old stuff
+                "FSForkIOParam", # old stuff
+                "FSRefParam",  # old stuff
+                "FSVolumeInfoParam", # old stuff
+                "WDPBPtr", # old stuff
+                "XCInfoPBPtr", # old stuff
+                "XVolumeParamPtr", # old stuff
+
+
+                "CatPositionRec", # State variable, not too difficult
+                "FSIterator", # Should become an object
+                "FSForkInfo", # Lots of fields, difficult struct
+                "FSSearchParams", # Also catsearch stuff
+                "FSVolumeInfo", # big struct
+                "FSVolumeInfo_ptr", # big struct
+
+                "IOCompletionProcPtr", # proc pointer
+                "IOCompletionUPP", # Proc pointer
+                "AliasFilterProcPtr",
+                "AliasFilterUPP",
+                "FNSubscriptionUPP",
+
+                "FNSubscriptionRef", # Lazy, for now.
+                ]
+
+    def makerepairinstructions(self):
+        return [
+                # Various ways to give pathnames
+                ([('char_ptr', '*', 'InMode')],
+                 [('stringptr', '*', 'InMode')]
+                ),
+
+                # Unicode filenames passed as length, buffer
+                ([('UniCharCount', '*', 'InMode'),
+                  ('UniChar_ptr', '*', 'InMode')],
+                 [('UnicodeReverseInBuffer', '*', 'InMode')]
+                ),
+                # Wrong guess
+                ([('Str63', 'theString', 'InMode')],
+                 [('Str63', 'theString', 'OutMode')]),
+
+                # Yet another way to give a pathname:-)
+                ([('short', 'fullPathLength', 'InMode'),
+                  ('void_ptr', 'fullPath', 'InMode')],
+                 [('FullPathName', 'fullPath', 'InMode')]),
+
+                # Various ResolveAliasFileXXXX functions
+                ([('FSSpec', 'theSpec', 'OutMode')],
+                 [('FSSpec_ptr', 'theSpec', 'InOutMode')]),
+
+                ([('FSRef', 'theRef', 'OutMode')],
+                 [('FSRef_ptr', 'theRef', 'InOutMode')]),
+
+                # The optional FSSpec to all ResolveAlias and NewAlias methods
+                ([('FSSpec_ptr', 'fromFile', 'InMode')],
+         [('OptFSSpecPtr', 'fromFile', 'InMode')]),
+
+                ([('FSRef_ptr', 'fromFile', 'InMode')],
+         [('OptFSRefPtr', 'fromFile', 'InMode')]),
+
+##              # FSCatalogInfo input handling
+##                      ([('FSCatalogInfoBitmap', 'whichInfo', 'InMode'),
+##                ('FSCatalogInfo_ptr', 'catalogInfo', 'InMode')],
+##               [('FSCatalogInfoAndBitmap_in', 'catalogInfo', 'InMode')]),
+##
+##              # FSCatalogInfo output handling
+##                      ([('FSCatalogInfoBitmap', 'whichInfo', 'InMode'),
+##                ('FSCatalogInfo', 'catalogInfo', 'OutMode')],
+##               [('FSCatalogInfoAndBitmap_out', 'catalogInfo', 'InOutMode')]),
+##
+
+        ]
+
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("true = True\n")
+        self.defsfile.write("false = False\n")
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/file/filesupport.py b/Mac/Modules/file/filesupport.py
index f06bbb8..dac706d 100644
--- a/Mac/Modules/file/filesupport.py
+++ b/Mac/Modules/file/filesupport.py
@@ -10,14 +10,14 @@
 import string
 
 # Declarations that change for each manager
-#MACHEADERFILE = 'Files.h'		# The Apple header file
-MODNAME = '_File'				# The name of the module
-LONGMODNAME = 'Carbon.File'		# The "normal" external name of the module
+#MACHEADERFILE = 'Files.h'              # The Apple header file
+MODNAME = '_File'                               # The name of the module
+LONGMODNAME = 'Carbon.File'             # The "normal" external name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'File'			# The prefix for module-wide routines
+MODPREFIX = 'File'                      # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -33,9 +33,9 @@
 
 # Various types of strings:
 #class UniCharCountBuffer(InputOnlyType):
-#	pass
+#       pass
 class VarReverseInputBufferType(ReverseInputBufferMixin, VarInputBufferType):
-	pass
+    pass
 FullPathName = VarReverseInputBufferType()
 ConstStr31Param = OpaqueArrayType("Str31", "PyMac_BuildStr255", "PyMac_GetStr255")
 ConstStr32Param = OpaqueArrayType("Str32", "PyMac_BuildStr255", "PyMac_GetStr255")
@@ -47,60 +47,60 @@
 
 # Other types:
 class OptionalFSxxxType(OpaqueByValueType):
-	def declare(self, name):
-		Output("%s %s__buf__;", self.typeName, name)
-		Output("%s *%s = &%s__buf__;", self.typeName, name, name)
+    def declare(self, name):
+        Output("%s %s__buf__;", self.typeName, name)
+        Output("%s *%s = &%s__buf__;", self.typeName, name, name)
 
 class FSCatalogInfoAndBitmapType(InputOnlyType):
-	
-	def __init__(self):
-		InputOnlyType.__init__(self, "BUG", "BUG")
-		
-	def declare(self, name):
-		Output("PyObject *%s__object = NULL;", name)
-		Output("FSCatalogInfoBitmap %s__bitmap = 0;", name)
-		Output("FSCatalogInfo %s;", name)
-		
-	def getargsFormat(self):
-		return "lO"
-		
-	def getargsArgs(self, name):
-		return "%s__bitmap, %s__object"%(name, name)
-		
-	def getargsCheck(self, name):
-		Output("if (!convert_FSCatalogInfo(%s__object, %s__bitmap, &%s)) return NULL;", name, name, name)
-		
-	def passInput(self, name):
-		return "%s__bitmap, &%s"% (name, name)
 
-	def passOutput(self, name):
-		return "%s__bitmap, &%s"% (name, name)
-		
-	def mkvalueFormat(self):
-		return "O"
+    def __init__(self):
+        InputOnlyType.__init__(self, "BUG", "BUG")
 
-	def mkvalueArgs(self, name):
-		return "%s__object" % (name)
-		
-	def xxxxmkvalueCheck(self, name):
-		Output("if ((%s__object = new_FSCatalogInfo(%s__bitmap, &%s)) == NULL) return NULL;", name, name)
-	
+    def declare(self, name):
+        Output("PyObject *%s__object = NULL;", name)
+        Output("FSCatalogInfoBitmap %s__bitmap = 0;", name)
+        Output("FSCatalogInfo %s;", name)
+
+    def getargsFormat(self):
+        return "lO"
+
+    def getargsArgs(self, name):
+        return "%s__bitmap, %s__object"%(name, name)
+
+    def getargsCheck(self, name):
+        Output("if (!convert_FSCatalogInfo(%s__object, %s__bitmap, &%s)) return NULL;", name, name, name)
+
+    def passInput(self, name):
+        return "%s__bitmap, &%s"% (name, name)
+
+    def passOutput(self, name):
+        return "%s__bitmap, &%s"% (name, name)
+
+    def mkvalueFormat(self):
+        return "O"
+
+    def mkvalueArgs(self, name):
+        return "%s__object" % (name)
+
+    def xxxxmkvalueCheck(self, name):
+        Output("if ((%s__object = new_FSCatalogInfo(%s__bitmap, &%s)) == NULL) return NULL;", name, name)
+
 class FSCatalogInfoAndBitmap_inType(FSCatalogInfoAndBitmapType, InputOnlyMixIn):
-	
-	def xxxxmkvalueCheck(self, name):
-		pass
-	
+
+    def xxxxmkvalueCheck(self, name):
+        pass
+
 class FSCatalogInfoAndBitmap_outType(FSCatalogInfoAndBitmapType):
 
-	def getargsFormat(self):
-		return "l"
-		
-	def getargsArgs(self, name):
-		return "%s__bitmap" % name
-		
-	def getargsCheck(self, name):
-		pass
-	
+    def getargsFormat(self):
+        return "l"
+
+    def getargsArgs(self, name):
+        return "%s__bitmap" % name
+
+    def getargsCheck(self, name):
+        pass
+
 FInfo = OpaqueType("FInfo", "FInfo")
 FInfo_ptr = OpaqueType("FInfo", "FInfo")
 AliasHandle = OpaqueByValueType("AliasHandle", "Alias")
@@ -157,13 +157,13 @@
 static int
 UTCDateTime_Convert(PyObject *v, UTCDateTime *ptr)
 {
-	return PyArg_Parse(v, "(HlH)", &ptr->highSeconds, &ptr->lowSeconds, &ptr->fraction);
+        return PyArg_Parse(v, "(HlH)", &ptr->highSeconds, &ptr->lowSeconds, &ptr->fraction);
 }
 
 static PyObject *
 UTCDateTime_New(UTCDateTime *ptr)
 {
-	return Py_BuildValue("(HlH)", ptr->highSeconds, ptr->lowSeconds, ptr->fraction);
+        return Py_BuildValue("(HlH)", ptr->highSeconds, ptr->lowSeconds, ptr->fraction);
 }
 
 /*
@@ -172,21 +172,21 @@
 static int
 myPyMac_GetOptFSSpecPtr(PyObject *v, FSSpec **spec)
 {
-	if (v == Py_None) {
-		*spec = NULL;
-		return 1;
-	}
-	return PyMac_GetFSSpec(v, *spec);
+        if (v == Py_None) {
+                *spec = NULL;
+                return 1;
+        }
+        return PyMac_GetFSSpec(v, *spec);
 }
 
 static int
 myPyMac_GetOptFSRefPtr(PyObject *v, FSRef **ref)
 {
-	if (v == Py_None) {
-		*ref = NULL;
-		return 1;
-	}
-	return PyMac_GetFSRef(v, *ref);
+        if (v == Py_None) {
+                *ref = NULL;
+                return 1;
+        }
+        return PyMac_GetFSRef(v, *ref);
 }
 
 /*
@@ -196,7 +196,7 @@
 PyMac_BuildHFSUniStr255(HFSUniStr255 *itself)
 {
 
-	return Py_BuildValue("u#", itself->unicode, itself->length);
+        return Py_BuildValue("u#", itself->unicode, itself->length);
 }
 """
 
@@ -204,86 +204,86 @@
 int
 PyMac_GetFSSpec(PyObject *v, FSSpec *spec)
 {
-	Str255 path;
-	short refnum;
-	long parid;
-	OSErr err;
-	FSRef fsr;
+        Str255 path;
+        short refnum;
+        long parid;
+        OSErr err;
+        FSRef fsr;
 
-	if (FSSpec_Check(v)) {
-		*spec = ((FSSpecObject *)v)->ob_itself;
-		return 1;
-	}
+        if (FSSpec_Check(v)) {
+                *spec = ((FSSpecObject *)v)->ob_itself;
+                return 1;
+        }
 
-	if (PyArg_Parse(v, "(hlO&)",
-						&refnum, &parid, PyMac_GetStr255, &path)) {
-		err = FSMakeFSSpec(refnum, parid, path, spec);
-		if ( err && err != fnfErr ) {
-			PyMac_Error(err);
-			return 0;
-		}
-		return 1;
-	}
-	PyErr_Clear();
-	/* Otherwise we try to go via an FSRef. On OSX we go all the way,
-	** on OS9 we accept only a real FSRef object
-	*/
-	if ( PyMac_GetFSRef(v, &fsr) ) {
-		err = FSGetCatalogInfo(&fsr, kFSCatInfoNone, NULL, NULL, spec, NULL);
-		if (err != noErr) {
-			PyMac_Error(err);
-			return 0;
-		}
-		return 1;
-	}
-	return 0;
+        if (PyArg_Parse(v, "(hlO&)",
+                                                &refnum, &parid, PyMac_GetStr255, &path)) {
+                err = FSMakeFSSpec(refnum, parid, path, spec);
+                if ( err && err != fnfErr ) {
+                        PyMac_Error(err);
+                        return 0;
+                }
+                return 1;
+        }
+        PyErr_Clear();
+        /* Otherwise we try to go via an FSRef. On OSX we go all the way,
+        ** on OS9 we accept only a real FSRef object
+        */
+        if ( PyMac_GetFSRef(v, &fsr) ) {
+                err = FSGetCatalogInfo(&fsr, kFSCatInfoNone, NULL, NULL, spec, NULL);
+                if (err != noErr) {
+                        PyMac_Error(err);
+                        return 0;
+                }
+                return 1;
+        }
+        return 0;
 }
 
 int
 PyMac_GetFSRef(PyObject *v, FSRef *fsr)
 {
-	OSStatus err;
-	FSSpec fss;
-	
-	if (FSRef_Check(v)) {
-		*fsr = ((FSRefObject *)v)->ob_itself;
-		return 1;
-	}
+        OSStatus err;
+        FSSpec fss;
 
-	/* On OSX we now try a pathname */
-	if ( PyString_Check(v) || PyUnicode_Check(v)) {
-		char *path = NULL;
-		if (!PyArg_Parse(v, "et", Py_FileSystemDefaultEncoding, &path))
-			return NULL;
-		if ( (err=FSPathMakeRef(path, fsr, NULL)) ) {
-			PyMac_Error(err);
-			return 0;
-		}
-		return 1;
-	}
-	/* XXXX Should try unicode here too */
-	/* Otherwise we try to go via an FSSpec */
-	if (FSSpec_Check(v)) {
-		fss = ((FSSpecObject *)v)->ob_itself;
-		if ((err=FSpMakeFSRef(&fss, fsr)) == 0)
-			return 1;
-		PyMac_Error(err);
-		return 0;
-	}
-	PyErr_SetString(PyExc_TypeError, "FSRef, FSSpec or pathname required");
-	return 0;
+        if (FSRef_Check(v)) {
+                *fsr = ((FSRefObject *)v)->ob_itself;
+                return 1;
+        }
+
+        /* On OSX we now try a pathname */
+        if ( PyString_Check(v) || PyUnicode_Check(v)) {
+                char *path = NULL;
+                if (!PyArg_Parse(v, "et", Py_FileSystemDefaultEncoding, &path))
+                        return NULL;
+                if ( (err=FSPathMakeRef(path, fsr, NULL)) ) {
+                        PyMac_Error(err);
+                        return 0;
+                }
+                return 1;
+        }
+        /* XXXX Should try unicode here too */
+        /* Otherwise we try to go via an FSSpec */
+        if (FSSpec_Check(v)) {
+                fss = ((FSSpecObject *)v)->ob_itself;
+                if ((err=FSpMakeFSRef(&fss, fsr)) == 0)
+                        return 1;
+                PyMac_Error(err);
+                return 0;
+        }
+        PyErr_SetString(PyExc_TypeError, "FSRef, FSSpec or pathname required");
+        return 0;
 }
 
 extern PyObject *
 PyMac_BuildFSSpec(FSSpec *spec)
 {
-	return FSSpec_New(spec);
+        return FSSpec_New(spec);
 }
 
 extern PyObject *
 PyMac_BuildFSRef(FSRef *spec)
 {
-	return FSRef_New(spec);
+        return FSRef_New(spec);
 }
 """
 
@@ -298,446 +298,446 @@
 
 # Our object types:
 class FSCatalogInfoDefinition(PEP253Mixin, ObjectDefinition):
-	getsetlist = [
-		("nodeFlags",
-		 "return Py_BuildValue(\"H\", self->ob_itself.nodeFlags);",
-		 "return PyArg_Parse(v, \"H\", &self->ob_itself.nodeFlags)-1;",
-		 None
-		),
-		("volume",
-		 "return Py_BuildValue(\"h\", self->ob_itself.volume);",
-		 "return PyArg_Parse(v, \"h\", &self->ob_itself.volume)-1;",
-		 None
-		),
-		("parentDirID",
-		 "return Py_BuildValue(\"l\", self->ob_itself.parentDirID);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.parentDirID)-1;",
-		 None
-		),
-		("nodeID",
-		 "return Py_BuildValue(\"l\", self->ob_itself.nodeID);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.nodeID)-1;",
-		 None
-		),
-		("createDate",
-		 "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.createDate);",
-		 "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.createDate)-1;",
-		 None
-		),
-		("contentModDate",
-		 "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.contentModDate);",
-		 "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.contentModDate)-1;",
-		 None
-		),
-		("attributeModDate",
-		 "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.attributeModDate);",
-		 "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.attributeModDate)-1;",
-		 None
-		),
-		("accessDate",
-		 "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.accessDate);",
-		 "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.accessDate)-1;",
-		 None
-		),
-		("backupDate",
-		 "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.backupDate);",
-		 "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.backupDate)-1;",
-		 None
-		),
-		("permissions",
-		 "return Py_BuildValue(\"(llll)\", self->ob_itself.permissions[0], self->ob_itself.permissions[1], self->ob_itself.permissions[2], self->ob_itself.permissions[3]);",
-		 "return PyArg_Parse(v, \"(llll)\", &self->ob_itself.permissions[0], &self->ob_itself.permissions[1], &self->ob_itself.permissions[2], &self->ob_itself.permissions[3])-1;",
-		 None
-		),
-		# XXXX FinderInfo TBD
-		# XXXX FinderXInfo TBD
-		("valence",
-		 "return Py_BuildValue(\"l\", self->ob_itself.valence);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.valence)-1;",
-		 None
-		),
-		("dataLogicalSize",
-		 "return Py_BuildValue(\"l\", self->ob_itself.dataLogicalSize);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.dataLogicalSize)-1;",
-		 None
-		),
-		("dataPhysicalSize",
-		 "return Py_BuildValue(\"l\", self->ob_itself.dataPhysicalSize);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.dataPhysicalSize)-1;",
-		 None
-		),
-		("rsrcLogicalSize",
-		 "return Py_BuildValue(\"l\", self->ob_itself.rsrcLogicalSize);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.rsrcLogicalSize)-1;",
-		 None
-		),
-		("rsrcPhysicalSize",
-		 "return Py_BuildValue(\"l\", self->ob_itself.rsrcPhysicalSize);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.rsrcPhysicalSize)-1;",
-		 None
-		),
-		("sharingFlags",
-		 "return Py_BuildValue(\"l\", self->ob_itself.sharingFlags);",
-		 "return PyArg_Parse(v, \"l\", &self->ob_itself.sharingFlags)-1;",
-		 None
-		),
-		("userPrivileges",
-		 "return Py_BuildValue(\"b\", self->ob_itself.userPrivileges);",
-		 "return PyArg_Parse(v, \"b\", &self->ob_itself.userPrivileges)-1;",
-		 None
-		),
-	]
-	# The same info, but in a different form
-	INITFORMAT = "HhllO&O&O&O&O&llllllb"
-	INITARGS = """&((FSCatalogInfoObject *)self)->ob_itself.nodeFlags,
-		&((FSCatalogInfoObject *)self)->ob_itself.volume,
-		&((FSCatalogInfoObject *)self)->ob_itself.parentDirID,
-		&((FSCatalogInfoObject *)self)->ob_itself.nodeID,
-		UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.createDate,
-		UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.contentModDate,
-		UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.attributeModDate,
-		UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.accessDate,
-		UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.backupDate,
-		&((FSCatalogInfoObject *)self)->ob_itself.valence,
-		&((FSCatalogInfoObject *)self)->ob_itself.dataLogicalSize,
-		&((FSCatalogInfoObject *)self)->ob_itself.dataPhysicalSize,
-		&((FSCatalogInfoObject *)self)->ob_itself.rsrcLogicalSize,
-		&((FSCatalogInfoObject *)self)->ob_itself.rsrcPhysicalSize,
-		&((FSCatalogInfoObject *)self)->ob_itself.sharingFlags,
-		&((FSCatalogInfoObject *)self)->ob_itself.userPrivileges"""
-	INITNAMES = """
-		"nodeFlags",
-		"volume",
-		"parentDirID",
-		"nodeID",
-		"createDate",
-		"contentModDate",
-		"atributeModDate",
-		"accessDate",
-		"backupDate",
-		"valence",
-		"dataLogicalSize",
-		"dataPhysicalSize",
-		"rsrcLogicalSize",
-		"rsrcPhysicalSize",
-		"sharingFlags",
-		"userPrivileges"
-		"""
-		
-	def __init__(self, name, prefix, itselftype):
-		ObjectDefinition.__init__(self, name, prefix, itselftype)
-		self.argref = "*"	# Store FSSpecs, but pass them by address
+    getsetlist = [
+            ("nodeFlags",
+             "return Py_BuildValue(\"H\", self->ob_itself.nodeFlags);",
+             "return PyArg_Parse(v, \"H\", &self->ob_itself.nodeFlags)-1;",
+             None
+            ),
+            ("volume",
+             "return Py_BuildValue(\"h\", self->ob_itself.volume);",
+             "return PyArg_Parse(v, \"h\", &self->ob_itself.volume)-1;",
+             None
+            ),
+            ("parentDirID",
+             "return Py_BuildValue(\"l\", self->ob_itself.parentDirID);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.parentDirID)-1;",
+             None
+            ),
+            ("nodeID",
+             "return Py_BuildValue(\"l\", self->ob_itself.nodeID);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.nodeID)-1;",
+             None
+            ),
+            ("createDate",
+             "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.createDate);",
+             "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.createDate)-1;",
+             None
+            ),
+            ("contentModDate",
+             "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.contentModDate);",
+             "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.contentModDate)-1;",
+             None
+            ),
+            ("attributeModDate",
+             "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.attributeModDate);",
+             "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.attributeModDate)-1;",
+             None
+            ),
+            ("accessDate",
+             "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.accessDate);",
+             "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.accessDate)-1;",
+             None
+            ),
+            ("backupDate",
+             "return Py_BuildValue(\"O&\", UTCDateTime_New, &self->ob_itself.backupDate);",
+             "return PyArg_Parse(v, \"O&\", UTCDateTime_Convert, &self->ob_itself.backupDate)-1;",
+             None
+            ),
+            ("permissions",
+             "return Py_BuildValue(\"(llll)\", self->ob_itself.permissions[0], self->ob_itself.permissions[1], self->ob_itself.permissions[2], self->ob_itself.permissions[3]);",
+             "return PyArg_Parse(v, \"(llll)\", &self->ob_itself.permissions[0], &self->ob_itself.permissions[1], &self->ob_itself.permissions[2], &self->ob_itself.permissions[3])-1;",
+             None
+            ),
+            # XXXX FinderInfo TBD
+            # XXXX FinderXInfo TBD
+            ("valence",
+             "return Py_BuildValue(\"l\", self->ob_itself.valence);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.valence)-1;",
+             None
+            ),
+            ("dataLogicalSize",
+             "return Py_BuildValue(\"l\", self->ob_itself.dataLogicalSize);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.dataLogicalSize)-1;",
+             None
+            ),
+            ("dataPhysicalSize",
+             "return Py_BuildValue(\"l\", self->ob_itself.dataPhysicalSize);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.dataPhysicalSize)-1;",
+             None
+            ),
+            ("rsrcLogicalSize",
+             "return Py_BuildValue(\"l\", self->ob_itself.rsrcLogicalSize);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.rsrcLogicalSize)-1;",
+             None
+            ),
+            ("rsrcPhysicalSize",
+             "return Py_BuildValue(\"l\", self->ob_itself.rsrcPhysicalSize);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.rsrcPhysicalSize)-1;",
+             None
+            ),
+            ("sharingFlags",
+             "return Py_BuildValue(\"l\", self->ob_itself.sharingFlags);",
+             "return PyArg_Parse(v, \"l\", &self->ob_itself.sharingFlags)-1;",
+             None
+            ),
+            ("userPrivileges",
+             "return Py_BuildValue(\"b\", self->ob_itself.userPrivileges);",
+             "return PyArg_Parse(v, \"b\", &self->ob_itself.userPrivileges)-1;",
+             None
+            ),
+    ]
+    # The same info, but in a different form
+    INITFORMAT = "HhllO&O&O&O&O&llllllb"
+    INITARGS = """&((FSCatalogInfoObject *)self)->ob_itself.nodeFlags,
+            &((FSCatalogInfoObject *)self)->ob_itself.volume,
+            &((FSCatalogInfoObject *)self)->ob_itself.parentDirID,
+            &((FSCatalogInfoObject *)self)->ob_itself.nodeID,
+            UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.createDate,
+            UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.contentModDate,
+            UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.attributeModDate,
+            UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.accessDate,
+            UTCDateTime_Convert, &((FSCatalogInfoObject *)self)->ob_itself.backupDate,
+            &((FSCatalogInfoObject *)self)->ob_itself.valence,
+            &((FSCatalogInfoObject *)self)->ob_itself.dataLogicalSize,
+            &((FSCatalogInfoObject *)self)->ob_itself.dataPhysicalSize,
+            &((FSCatalogInfoObject *)self)->ob_itself.rsrcLogicalSize,
+            &((FSCatalogInfoObject *)self)->ob_itself.rsrcPhysicalSize,
+            &((FSCatalogInfoObject *)self)->ob_itself.sharingFlags,
+            &((FSCatalogInfoObject *)self)->ob_itself.userPrivileges"""
+    INITNAMES = """
+            "nodeFlags",
+            "volume",
+            "parentDirID",
+            "nodeID",
+            "createDate",
+            "contentModDate",
+            "atributeModDate",
+            "accessDate",
+            "backupDate",
+            "valence",
+            "dataLogicalSize",
+            "dataPhysicalSize",
+            "rsrcLogicalSize",
+            "rsrcPhysicalSize",
+            "sharingFlags",
+            "userPrivileges"
+            """
 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return Py_None;")
+    def __init__(self, name, prefix, itselftype):
+        ObjectDefinition.__init__(self, name, prefix, itselftype)
+        self.argref = "*"       # Store FSSpecs, but pass them by address
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;");
-		Output()
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));", 
-			self.objecttype, self.itselftype)
-		Output("return self;")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return Py_None;")
 
-	def output_tp_initBody(self):
-		Output("static char *kw[] = {%s, 0};", self.INITNAMES)
-		Output()
-		Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|%s\", kw, %s))", 
-			self.INITFORMAT, self.INITARGS)
-		OutLbrace()
-		Output("return -1;")
-		OutRbrace()
-		Output("return 0;")
-	
+    def output_tp_newBody(self):
+        Output("PyObject *self;");
+        Output()
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));",
+                self.objecttype, self.itselftype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("static char *kw[] = {%s, 0};", self.INITNAMES)
+        Output()
+        Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|%s\", kw, %s))",
+                self.INITFORMAT, self.INITARGS)
+        OutLbrace()
+        Output("return -1;")
+        OutRbrace()
+        Output("return 0;")
+
 class FInfoDefinition(PEP253Mixin, ObjectDefinition):
-	getsetlist = [
-		("Type",
-		 "return Py_BuildValue(\"O&\", PyMac_BuildOSType, self->ob_itself.fdType);",
-		 "return PyArg_Parse(v, \"O&\", PyMac_GetOSType, &self->ob_itself.fdType)-1;",
-		 "4-char file type"
-		),
-		("Creator",
-		 "return Py_BuildValue(\"O&\", PyMac_BuildOSType, self->ob_itself.fdCreator);",
-		 "return PyArg_Parse(v, \"O&\", PyMac_GetOSType, &self->ob_itself.fdCreator)-1;",
-		 "4-char file creator"
-		),
-		("Flags",
-		 "return Py_BuildValue(\"H\", self->ob_itself.fdFlags);",
-		 "return PyArg_Parse(v, \"H\", &self->ob_itself.fdFlags)-1;",
-		 "Finder flag bits"
-		),
-		("Location",
-		 "return Py_BuildValue(\"O&\", PyMac_BuildPoint, self->ob_itself.fdLocation);",
-		 "return PyArg_Parse(v, \"O&\", PyMac_GetPoint, &self->ob_itself.fdLocation)-1;",
-		 "(x, y) location of the file's icon in its parent finder window"
-		),
-		("Fldr",
-		 "return Py_BuildValue(\"h\", self->ob_itself.fdFldr);",
-		 "return PyArg_Parse(v, \"h\", &self->ob_itself.fdFldr)-1;",
-		 "Original folder, for 'put away'"
-		),
-		
-	]
-		 
-	def __init__(self, name, prefix, itselftype):
-		ObjectDefinition.__init__(self, name, prefix, itselftype)
-		self.argref = "*"	# Store FSSpecs, but pass them by address
+    getsetlist = [
+            ("Type",
+             "return Py_BuildValue(\"O&\", PyMac_BuildOSType, self->ob_itself.fdType);",
+             "return PyArg_Parse(v, \"O&\", PyMac_GetOSType, &self->ob_itself.fdType)-1;",
+             "4-char file type"
+            ),
+            ("Creator",
+             "return Py_BuildValue(\"O&\", PyMac_BuildOSType, self->ob_itself.fdCreator);",
+             "return PyArg_Parse(v, \"O&\", PyMac_GetOSType, &self->ob_itself.fdCreator)-1;",
+             "4-char file creator"
+            ),
+            ("Flags",
+             "return Py_BuildValue(\"H\", self->ob_itself.fdFlags);",
+             "return PyArg_Parse(v, \"H\", &self->ob_itself.fdFlags)-1;",
+             "Finder flag bits"
+            ),
+            ("Location",
+             "return Py_BuildValue(\"O&\", PyMac_BuildPoint, self->ob_itself.fdLocation);",
+             "return PyArg_Parse(v, \"O&\", PyMac_GetPoint, &self->ob_itself.fdLocation)-1;",
+             "(x, y) location of the file's icon in its parent finder window"
+            ),
+            ("Fldr",
+             "return Py_BuildValue(\"h\", self->ob_itself.fdFldr);",
+             "return PyArg_Parse(v, \"h\", &self->ob_itself.fdFldr)-1;",
+             "Original folder, for 'put away'"
+            ),
 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    ]
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;");
-		Output()
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));", 
-			self.objecttype, self.itselftype)
-		Output("return self;")
+    def __init__(self, name, prefix, itselftype):
+        ObjectDefinition.__init__(self, name, prefix, itselftype)
+        self.argref = "*"       # Store FSSpecs, but pass them by address
 
-	def output_tp_initBody(self):
-		Output("%s *itself = NULL;", self.itselftype)
-		Output("static char *kw[] = {\"itself\", 0};")
-		Output()
-		Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"|O&\", kw, FInfo_Convert, &itself))")
-		OutLbrace()
-		Output("if (itself) memcpy(&((%s *)self)->ob_itself, itself, sizeof(%s));", 
-			self.objecttype, self.itselftype)
-		Output("return 0;")
-		OutRbrace()
-		Output("return -1;")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+
+    def output_tp_newBody(self):
+        Output("PyObject *self;");
+        Output()
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));",
+                self.objecttype, self.itselftype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("%s *itself = NULL;", self.itselftype)
+        Output("static char *kw[] = {\"itself\", 0};")
+        Output()
+        Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"|O&\", kw, FInfo_Convert, &itself))")
+        OutLbrace()
+        Output("if (itself) memcpy(&((%s *)self)->ob_itself, itself, sizeof(%s));",
+                self.objecttype, self.itselftype)
+        Output("return 0;")
+        OutRbrace()
+        Output("return -1;")
 
 class FSSpecDefinition(PEP253Mixin, ObjectDefinition):
-	getsetlist = [
-		("data",
-		 "return PyString_FromStringAndSize((char *)&self->ob_itself, sizeof(self->ob_itself));",
-		 None,
-		 "Raw data of the FSSpec object"
-		)
-	]
-		 
-	def __init__(self, name, prefix, itselftype):
-		ObjectDefinition.__init__(self, name, prefix, itselftype)
-		self.argref = "*"	# Store FSSpecs, but pass them by address
+    getsetlist = [
+            ("data",
+             "return PyString_FromStringAndSize((char *)&self->ob_itself, sizeof(self->ob_itself));",
+             None,
+             "Raw data of the FSSpec object"
+            )
+    ]
 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-		
-	# We do Convert ourselves (with PyMac_GetFSxxx)
-	def outputConvert(self):
-		pass
+    def __init__(self, name, prefix, itselftype):
+        ObjectDefinition.__init__(self, name, prefix, itselftype)
+        self.argref = "*"       # Store FSSpecs, but pass them by address
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;");
-		Output()
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));", 
-			self.objecttype, self.itselftype)
-		Output("return self;")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
 
-	def output_tp_initBody(self):
-		Output("PyObject *v = NULL;")
-		Output("char *rawdata = NULL;")
-		Output("int rawdatalen = 0;")
-		Output("static char *kw[] = {\"itself\", \"rawdata\", 0};")
-		Output()
-		Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|Os#\", kw, &v, &rawdata, &rawdatalen))")
-		Output("return -1;")
-		Output("if (v && rawdata)")
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"Only one of itself or rawdata may be specified\");")
-		Output("return -1;")
-		OutRbrace()
-		Output("if (!v && !rawdata)")
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"One of itself or rawdata must be specified\");")
-		Output("return -1;")
-		OutRbrace()
-		Output("if (rawdata)")
-		OutLbrace()
-		Output("if (rawdatalen != sizeof(%s))", self.itselftype)
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"%s rawdata incorrect size\");",
-			self.itselftype)
-		Output("return -1;")
-		OutRbrace()
-		Output("memcpy(&((%s *)self)->ob_itself, rawdata, rawdatalen);", self.objecttype)
-		Output("return 0;")
-		OutRbrace()
-		Output("if (PyMac_GetFSSpec(v, &((%s *)self)->ob_itself)) return 0;", self.objecttype)
-		Output("return -1;")
-	
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[512];")
-		Output("""PyOS_snprintf(buf, sizeof(buf), \"%%s((%%d, %%ld, '%%.*s'))\",
-		self->ob_type->tp_name,
-		self->ob_itself.vRefNum, 
-		self->ob_itself.parID,
-		self->ob_itself.name[0], self->ob_itself.name+1);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-		
+    # We do Convert ourselves (with PyMac_GetFSxxx)
+    def outputConvert(self):
+        pass
+
+    def output_tp_newBody(self):
+        Output("PyObject *self;");
+        Output()
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));",
+                self.objecttype, self.itselftype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("PyObject *v = NULL;")
+        Output("char *rawdata = NULL;")
+        Output("int rawdatalen = 0;")
+        Output("static char *kw[] = {\"itself\", \"rawdata\", 0};")
+        Output()
+        Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|Os#\", kw, &v, &rawdata, &rawdatalen))")
+        Output("return -1;")
+        Output("if (v && rawdata)")
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"Only one of itself or rawdata may be specified\");")
+        Output("return -1;")
+        OutRbrace()
+        Output("if (!v && !rawdata)")
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"One of itself or rawdata must be specified\");")
+        Output("return -1;")
+        OutRbrace()
+        Output("if (rawdata)")
+        OutLbrace()
+        Output("if (rawdatalen != sizeof(%s))", self.itselftype)
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"%s rawdata incorrect size\");",
+                self.itselftype)
+        Output("return -1;")
+        OutRbrace()
+        Output("memcpy(&((%s *)self)->ob_itself, rawdata, rawdatalen);", self.objecttype)
+        Output("return 0;")
+        OutRbrace()
+        Output("if (PyMac_GetFSSpec(v, &((%s *)self)->ob_itself)) return 0;", self.objecttype)
+        Output("return -1;")
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[512];")
+        Output("""PyOS_snprintf(buf, sizeof(buf), \"%%s((%%d, %%ld, '%%.*s'))\",
+        self->ob_type->tp_name,
+        self->ob_itself.vRefNum,
+        self->ob_itself.parID,
+        self->ob_itself.name[0], self->ob_itself.name+1);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
 class FSRefDefinition(PEP253Mixin, ObjectDefinition):
-	getsetlist = [
-		("data",
-		 "return PyString_FromStringAndSize((char *)&self->ob_itself, sizeof(self->ob_itself));",
-		 None,
-		 "Raw data of the FSRef object"
-		)
-	]
-		 
-	def __init__(self, name, prefix, itselftype):
-		ObjectDefinition.__init__(self, name, prefix, itselftype)
-		self.argref = "*"	# Store FSRefs, but pass them by address
+    getsetlist = [
+            ("data",
+             "return PyString_FromStringAndSize((char *)&self->ob_itself, sizeof(self->ob_itself));",
+             None,
+             "Raw data of the FSRef object"
+            )
+    ]
 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-		
-	# We do Convert ourselves (with PyMac_GetFSxxx)
-	def outputConvert(self):
-		pass
+    def __init__(self, name, prefix, itselftype):
+        ObjectDefinition.__init__(self, name, prefix, itselftype)
+        self.argref = "*"       # Store FSRefs, but pass them by address
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;");
-		Output()
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));", 
-			self.objecttype, self.itselftype)
-		Output("return self;")
-	
-	def output_tp_initBody(self):
-		Output("PyObject *v = NULL;")
-		Output("char *rawdata = NULL;")
-		Output("int rawdatalen = 0;")
-		Output("static char *kw[] = {\"itself\", \"rawdata\", 0};")
-		Output()
-		Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|Os#\", kw, &v, &rawdata, &rawdatalen))")
-		Output("return -1;")
-		Output("if (v && rawdata)")
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"Only one of itself or rawdata may be specified\");")
-		Output("return -1;")
-		OutRbrace()
-		Output("if (!v && !rawdata)")
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"One of itself or rawdata must be specified\");")
-		Output("return -1;")
-		OutRbrace()
-		Output("if (rawdata)")
-		OutLbrace()
-		Output("if (rawdatalen != sizeof(%s))", self.itselftype)
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"%s rawdata incorrect size\");",
-			self.itselftype)
-		Output("return -1;")
-		OutRbrace()
-		Output("memcpy(&((%s *)self)->ob_itself, rawdata, rawdatalen);", self.objecttype)
-		Output("return 0;")
-		OutRbrace()
-		Output("if (PyMac_GetFSRef(v, &((%s *)self)->ob_itself)) return 0;", self.objecttype)
-		Output("return -1;")
-	
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+
+    # We do Convert ourselves (with PyMac_GetFSxxx)
+    def outputConvert(self):
+        pass
+
+    def output_tp_newBody(self):
+        Output("PyObject *self;");
+        Output()
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("memset(&((%s *)self)->ob_itself, 0, sizeof(%s));",
+                self.objecttype, self.itselftype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("PyObject *v = NULL;")
+        Output("char *rawdata = NULL;")
+        Output("int rawdatalen = 0;")
+        Output("static char *kw[] = {\"itself\", \"rawdata\", 0};")
+        Output()
+        Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|Os#\", kw, &v, &rawdata, &rawdatalen))")
+        Output("return -1;")
+        Output("if (v && rawdata)")
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"Only one of itself or rawdata may be specified\");")
+        Output("return -1;")
+        OutRbrace()
+        Output("if (!v && !rawdata)")
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"One of itself or rawdata must be specified\");")
+        Output("return -1;")
+        OutRbrace()
+        Output("if (rawdata)")
+        OutLbrace()
+        Output("if (rawdatalen != sizeof(%s))", self.itselftype)
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"%s rawdata incorrect size\");",
+                self.itselftype)
+        Output("return -1;")
+        OutRbrace()
+        Output("memcpy(&((%s *)self)->ob_itself, rawdata, rawdatalen);", self.objecttype)
+        Output("return 0;")
+        OutRbrace()
+        Output("if (PyMac_GetFSRef(v, &((%s *)self)->ob_itself)) return 0;", self.objecttype)
+        Output("return -1;")
+
 class AliasDefinition(PEP253Mixin, ObjectDefinition):
-	# XXXX Should inherit from resource?
-	getsetlist = [
-		("data",
-		 """int size;
-			PyObject *rv;
-			
-			size = GetHandleSize((Handle)self->ob_itself);
-			HLock((Handle)self->ob_itself);
-			rv = PyString_FromStringAndSize(*(Handle)self->ob_itself, size);
-			HUnlock((Handle)self->ob_itself);
-			return rv;
-		""",
-		 None,
-		 "Raw data of the alias object"
-		)
-	]
-		 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-		
-	def outputStructMembers(self):
-		ObjectDefinition.outputStructMembers(self)
-		Output("void (*ob_freeit)(%s ptr);", self.itselftype)
-		
-	def outputInitStructMembers(self):
-		ObjectDefinition.outputInitStructMembers(self)
-		Output("it->ob_freeit = NULL;")
-		
-	def outputCleanupStructMembers(self):
-		Output("if (self->ob_freeit && self->ob_itself)")
-		OutLbrace()
-		Output("self->ob_freeit(self->ob_itself);")
-		OutRbrace()
-		Output("self->ob_itself = NULL;")
+    # XXXX Should inherit from resource?
+    getsetlist = [
+            ("data",
+             """int size;
+                    PyObject *rv;
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;");
-		Output()
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("((%s *)self)->ob_itself = NULL;", self.objecttype)
-		Output("return self;")
-	
-	def output_tp_initBody(self):
-		Output("%s itself = NULL;", self.itselftype)
-		Output("char *rawdata = NULL;")
-		Output("int rawdatalen = 0;")
-		Output("Handle h;")
-		Output("static char *kw[] = {\"itself\", \"rawdata\", 0};")
-		Output()
-		Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|O&s#\", kw, %s_Convert, &itself, &rawdata, &rawdatalen))",
-			self.prefix)
-		Output("return -1;")
-		Output("if (itself && rawdata)")
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"Only one of itself or rawdata may be specified\");")
-		Output("return -1;")
-		OutRbrace()
-		Output("if (!itself && !rawdata)")
-		OutLbrace()
-		Output("PyErr_SetString(PyExc_TypeError, \"One of itself or rawdata must be specified\");")
-		Output("return -1;")
-		OutRbrace()
-		Output("if (rawdata)")
-		OutLbrace()
-		Output("if ((h = NewHandle(rawdatalen)) == NULL)")
-		OutLbrace()
-		Output("PyErr_NoMemory();")
-		Output("return -1;")
-		OutRbrace()
-		Output("HLock(h);")
-		Output("memcpy((char *)*h, rawdata, rawdatalen);")
-		Output("HUnlock(h);")
-		Output("((%s *)self)->ob_itself = (%s)h;", self.objecttype, self.itselftype)
-		Output("return 0;")
-		OutRbrace()
-		Output("((%s *)self)->ob_itself = itself;", self.objecttype)
-		Output("return 0;")
-	
+                    size = GetHandleSize((Handle)self->ob_itself);
+                    HLock((Handle)self->ob_itself);
+                    rv = PyString_FromStringAndSize(*(Handle)self->ob_itself, size);
+                    HUnlock((Handle)self->ob_itself);
+                    return rv;
+            """,
+             None,
+             "Raw data of the alias object"
+            )
+    ]
+
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+
+    def outputStructMembers(self):
+        ObjectDefinition.outputStructMembers(self)
+        Output("void (*ob_freeit)(%s ptr);", self.itselftype)
+
+    def outputInitStructMembers(self):
+        ObjectDefinition.outputInitStructMembers(self)
+        Output("it->ob_freeit = NULL;")
+
+    def outputCleanupStructMembers(self):
+        Output("if (self->ob_freeit && self->ob_itself)")
+        OutLbrace()
+        Output("self->ob_freeit(self->ob_itself);")
+        OutRbrace()
+        Output("self->ob_itself = NULL;")
+
+    def output_tp_newBody(self):
+        Output("PyObject *self;");
+        Output()
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("((%s *)self)->ob_itself = NULL;", self.objecttype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("%s itself = NULL;", self.itselftype)
+        Output("char *rawdata = NULL;")
+        Output("int rawdatalen = 0;")
+        Output("Handle h;")
+        Output("static char *kw[] = {\"itself\", \"rawdata\", 0};")
+        Output()
+        Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|O&s#\", kw, %s_Convert, &itself, &rawdata, &rawdatalen))",
+                self.prefix)
+        Output("return -1;")
+        Output("if (itself && rawdata)")
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"Only one of itself or rawdata may be specified\");")
+        Output("return -1;")
+        OutRbrace()
+        Output("if (!itself && !rawdata)")
+        OutLbrace()
+        Output("PyErr_SetString(PyExc_TypeError, \"One of itself or rawdata must be specified\");")
+        Output("return -1;")
+        OutRbrace()
+        Output("if (rawdata)")
+        OutLbrace()
+        Output("if ((h = NewHandle(rawdatalen)) == NULL)")
+        OutLbrace()
+        Output("PyErr_NoMemory();")
+        Output("return -1;")
+        OutRbrace()
+        Output("HLock(h);")
+        Output("memcpy((char *)*h, rawdata, rawdatalen);")
+        Output("HUnlock(h);")
+        Output("((%s *)self)->ob_itself = (%s)h;", self.objecttype, self.itselftype)
+        Output("return 0;")
+        OutRbrace()
+        Output("((%s *)self)->ob_itself = itself;", self.objecttype)
+        Output("return 0;")
+
 # Alias methods come in two flavors: those with the alias as arg1 and
 # those with the alias as arg 2.
 class Arg2MethodGenerator(OSErrMethodGenerator):
-	"""Similar to MethodGenerator, but has self as second argument"""
+    """Similar to MethodGenerator, but has self as second argument"""
 
-	def parseArgumentList(self, args):
-		args0, arg1, argsrest = args[:1], args[1], args[2:]
-		t0, n0, m0 = arg1
-		args = args0 + argsrest
-		if m0 != InMode:
-			raise ValueError, "method's 'self' must be 'InMode'"
-		self.itself = Variable(t0, "_self->ob_itself", SelfMode)
-		FunctionGenerator.parseArgumentList(self, args)
-		self.argumentList.insert(2, self.itself)
+    def parseArgumentList(self, args):
+        args0, arg1, argsrest = args[:1], args[1], args[2:]
+        t0, n0, m0 = arg1
+        args = args0 + argsrest
+        if m0 != InMode:
+            raise ValueError, "method's 'self' must be 'InMode'"
+        self.itself = Variable(t0, "_self->ob_itself", SelfMode)
+        FunctionGenerator.parseArgumentList(self, args)
+        self.argumentList.insert(2, self.itself)
 
 # From here on it's basically all boiler plate...
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff,
-	longname=LONGMODNAME)
+        longname=LONGMODNAME)
 
 fscataloginfoobject = FSCatalogInfoDefinition('FSCatalogInfo', 'FSCatalogInfo', 'FSCatalogInfo')
 finfoobject = FInfoDefinition('FInfo', 'FInfo', 'FInfo')
@@ -770,10 +770,10 @@
 UInt32 maxPathSize = MAXPATHNAME;
 
 if (!PyArg_ParseTuple(_args, ""))
-	return NULL;
+        return NULL;
 _err = FSRefMakePath(&_self->ob_itself,
-					 path,
-					 maxPathSize);
+                                         path,
+                                         maxPathSize);
 if (_err != noErr) return PyMac_Error(_err);
 _res = Py_BuildValue("s", path);
 return _res;
@@ -784,7 +784,7 @@
 
 FSRef_as_pathname_body = """
 if (!PyArg_ParseTuple(_args, ""))
-	return NULL;
+        return NULL;
 _res = FSRef_FSRefMakePath(_self, _args);
 return _res;
 """
@@ -797,11 +797,11 @@
 OSErr err;
 
 if (!PyArg_ParseTuple(_args, ""))
-	return NULL;
+        return NULL;
 err = PyMac_GetFullPathname(&_self->ob_itself, strbuf, sizeof(strbuf));
 if ( err ) {
-	PyMac_Error(err);
-	return NULL;
+        PyMac_Error(err);
+        return NULL;
 }
 _res = PyString_FromString(strbuf);
 return _res;
@@ -812,9 +812,9 @@
 
 FSSpec_as_tuple_body = """
 if (!PyArg_ParseTuple(_args, ""))
-	return NULL;
-_res = Py_BuildValue("(iis#)", _self->ob_itself.vRefNum, _self->ob_itself.parID, 
-					&_self->ob_itself.name[1], _self->ob_itself.name[0]);
+        return NULL;
+_res = Py_BuildValue("(iis#)", _self->ob_itself.vRefNum, _self->ob_itself.parID,
+                                        &_self->ob_itself.name[1], _self->ob_itself.name[0]);
 return _res;
 """
 f = ManualGenerator("as_tuple", FSSpec_as_tuple_body)
@@ -825,13 +825,13 @@
 PyObject *obj;
 
 if (!PyArg_ParseTuple(_args, "O", &obj))
-	return NULL;
+        return NULL;
 if (PyString_Check(obj)) {
-	Py_INCREF(obj);
-	return obj;
+        Py_INCREF(obj);
+        return obj;
 }
 if (PyUnicode_Check(obj))
-	return PyUnicode_AsEncodedString(obj, "utf8", "strict");
+        return PyUnicode_AsEncodedString(obj, "utf8", "strict");
 _res = PyObject_CallMethod(obj, "as_pathname", NULL);
 return _res;
 """
@@ -849,4 +849,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/fm/fmscan.py b/Mac/Modules/fm/fmscan.py
index 73aad3e..334d5ec 100644
--- a/Mac/Modules/fm/fmscan.py
+++ b/Mac/Modules/fm/fmscan.py
@@ -10,63 +10,63 @@
 SHORT = "fm"
 
 def main():
-	input = "Fonts.h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "Fonts.h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"OutlineMetrics",	# Too complicated
-			"AntiTextIsAntiAliased",	# XXXX Missing from library...
-			"AntiTextGetEnabled",
-			"AntiTextSetEnabled",
-			"AntiTextGetApplicationAware",
-			"AntiTextSetApplicationAware",
-			# These are tricky: they're not Carbon dependent or anything, but they
-			# exist only on 8.6 or later (both in Carbon and Classic).
-			# Disabling them is the easiest path.
-			'SetAntiAliasedTextEnabled',
-			'IsAntiAliasedTextEnabled',
-			# OS8-only
-			'InitFonts',
-			'SetFontLock',
-			'FlushFonts',
-			]
+    def makeblacklistnames(self):
+        return [
+                "OutlineMetrics",       # Too complicated
+                "AntiTextIsAntiAliased",        # XXXX Missing from library...
+                "AntiTextGetEnabled",
+                "AntiTextSetEnabled",
+                "AntiTextGetApplicationAware",
+                "AntiTextSetApplicationAware",
+                # These are tricky: they're not Carbon dependent or anything, but they
+                # exist only on 8.6 or later (both in Carbon and Classic).
+                # Disabling them is the easiest path.
+                'SetAntiAliasedTextEnabled',
+                'IsAntiAliasedTextEnabled',
+                # OS8-only
+                'InitFonts',
+                'SetFontLock',
+                'FlushFonts',
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"FMInput_ptr",	# Not needed for now
-			"FMOutPtr",		# Ditto
-##			"void_ptr",		# Don't know how to do this right now
-			"FontInfo",		# Ditto
-			]
+    def makeblacklisttypes(self):
+        return [
+                "FMInput_ptr",  # Not needed for now
+                "FMOutPtr",             # Ditto
+##                      "void_ptr",             # Don't know how to do this right now
+                "FontInfo",             # Ditto
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([('Str255', '*', 'InMode')], [('Str255', '*', 'OutMode')]),
-			([('FMetricRecPtr', 'theMetrics', 'InMode')], [('FMetricRecPtr', 'theMetrics', 'OutMode')]),
-			([('short', 'byteCount', 'InMode'), ('void_ptr', 'textAddr', 'InMode'),],
-			 [('TextBuffer', 'inText', 'InMode')]),
-			]
-			
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("kNilOptions = 0\n")
+    def makerepairinstructions(self):
+        return [
+                ([('Str255', '*', 'InMode')], [('Str255', '*', 'OutMode')]),
+                ([('FMetricRecPtr', 'theMetrics', 'InMode')], [('FMetricRecPtr', 'theMetrics', 'OutMode')]),
+                ([('short', 'byteCount', 'InMode'), ('void_ptr', 'textAddr', 'InMode'),],
+                 [('TextBuffer', 'inText', 'InMode')]),
+                ]
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("kNilOptions = 0\n")
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/fm/fmsupport.py b/Mac/Modules/fm/fmsupport.py
index 07b944e..e692053 100644
--- a/Mac/Modules/fm/fmsupport.py
+++ b/Mac/Modules/fm/fmsupport.py
@@ -6,21 +6,21 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Fonts.h'		# The Apple header file
-MODNAME = '_Fm'				# The name of the module
+MACHEADERFILE = 'Fonts.h'               # The Apple header file
+MODNAME = '_Fm'                         # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Fm'			# The prefix for module-wide routines
+MODPREFIX = 'Fm'                        # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
 # Create the type objects
 
 class RevVarInputBufferType(VarInputBufferType):
-	def passInput(self, name):
-		return "%s__len__, %s__in__" % (name, name)
+    def passInput(self, name):
+        return "%s__len__, %s__in__" % (name, name)
 
 TextBuffer = RevVarInputBufferType()
 
@@ -36,12 +36,12 @@
 FMRec_New(FMetricRec *itself)
 {
 
-	return Py_BuildValue("O&O&O&O&O&", 
-		PyMac_BuildFixed, itself->ascent,
-		PyMac_BuildFixed, itself->descent,
-		PyMac_BuildFixed, itself->leading,
-		PyMac_BuildFixed, itself->widMax,
-		ResObj_New, itself->wTabHandle);
+        return Py_BuildValue("O&O&O&O&O&",
+                PyMac_BuildFixed, itself->ascent,
+                PyMac_BuildFixed, itself->descent,
+                PyMac_BuildFixed, itself->leading,
+                PyMac_BuildFixed, itself->widMax,
+                ResObj_New, itself->wTabHandle);
 }
 
 #if 0
@@ -49,12 +49,12 @@
 static int
 FMRec_Convert(PyObject *v, FMetricRec *p_itself)
 {
-	return PyArg_ParseTuple(v, "O&O&O&O&O&",
-		PyMac_GetFixed, &itself->ascent,
-		PyMac_GetFixed, &itself->descent,
-		PyMac_GetFixed, &itself->leading,
-		PyMac_GetFixed, &itself->widMax,
-		ResObj_Convert, &itself->wTabHandle);
+        return PyArg_ParseTuple(v, "O&O&O&O&O&",
+                PyMac_GetFixed, &itself->ascent,
+                PyMac_GetFixed, &itself->descent,
+                PyMac_GetFixed, &itself->leading,
+                PyMac_GetFixed, &itself->widMax,
+                ResObj_Convert, &itself->wTabHandle);
 }
 #endif
 
@@ -79,4 +79,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/folder/folderscan.py b/Mac/Modules/folder/folderscan.py
index 39b5a05..8c94893 100644
--- a/Mac/Modules/folder/folderscan.py
+++ b/Mac/Modules/folder/folderscan.py
@@ -11,58 +11,58 @@
 OBJECT = "NOTUSED"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	scanner.gentypetest(SHORT+"typetest.py")
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    scanner.gentypetest(SHORT+"typetest.py")
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"FindFolderExtended", # Has funny void* argument
-			"FSFindFolderExtended", # ditto
-			"FolderManagerRegisterCallNotificationProcs", # ditto
-			
-			"FindFolderEx", # Non-MacOS routine
-			]
+    def makeblacklistnames(self):
+        return [
+                "FindFolderExtended", # Has funny void* argument
+                "FSFindFolderExtended", # ditto
+                "FolderManagerRegisterCallNotificationProcs", # ditto
 
-	def makeblacklisttypes(self):
-		return [
-			"FolderManagerNotificationProcPtr",
-			"FolderManagerNotificationUPP",
-			"FolderRouting", # To be done, not difficult
-			"FolderDesc", # To be done, not difficult
-			
-			]
+                "FindFolderEx", # Non-MacOS routine
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			]
-   
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("true = True\n")
-		self.defsfile.write("false = False\n")
-			
+    def makeblacklisttypes(self):
+        return [
+                "FolderManagerNotificationProcPtr",
+                "FolderManagerNotificationUPP",
+                "FolderRouting", # To be done, not difficult
+                "FolderDesc", # To be done, not difficult
+
+                ]
+
+    def makerepairinstructions(self):
+        return [
+                ]
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("true = True\n")
+        self.defsfile.write("false = False\n")
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/folder/foldersupport.py b/Mac/Modules/folder/foldersupport.py
index b924615..b9b64bf 100644
--- a/Mac/Modules/folder/foldersupport.py
+++ b/Mac/Modules/folder/foldersupport.py
@@ -6,13 +6,13 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Folders.h'		# The Apple header file
-MODNAME = '_Folder'				# The name of the module
+MACHEADERFILE = 'Folders.h'             # The Apple header file
+MODNAME = '_Folder'                             # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Folder'			# The prefix for module-wide routines
+MODPREFIX = 'Folder'                    # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -54,4 +54,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/help/helpscan.py b/Mac/Modules/help/helpscan.py
index 32a759a..50e0919 100644
--- a/Mac/Modules/help/helpscan.py
+++ b/Mac/Modules/help/helpscan.py
@@ -11,57 +11,57 @@
 OBJECT = "NOTUSED"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			]
+    def makeblacklistnames(self):
+        return [
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-##			"TipFunctionUPP",
-##			"HMMessageRecord",
-##			"HMMessageRecord_ptr",
-			"HMWindowContentUPP",
-			"HMMenuTitleContentUPP",
-			"HMControlContentUPP",
-			"HMMenuItemContentUPP",
-			# For the moment
-			"HMHelpContentRec",
-			"HMHelpContentRec_ptr",
-			]
+    def makeblacklisttypes(self):
+        return [
+##                      "TipFunctionUPP",
+##                      "HMMessageRecord",
+##                      "HMMessageRecord_ptr",
+                "HMWindowContentUPP",
+                "HMMenuTitleContentUPP",
+                "HMControlContentUPP",
+                "HMMenuItemContentUPP",
+                # For the moment
+                "HMHelpContentRec",
+                "HMHelpContentRec_ptr",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-##			([("WindowPtr", "*", "OutMode")],
-##			 [("ExistingWindowPtr", "*", "*")]),
-			]
-			
+    def makerepairinstructions(self):
+        return [
+##                      ([("WindowPtr", "*", "OutMode")],
+##                       [("ExistingWindowPtr", "*", "*")]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/help/helpsupport.py b/Mac/Modules/help/helpsupport.py
index a630603..77f5c2e 100644
--- a/Mac/Modules/help/helpsupport.py
+++ b/Mac/Modules/help/helpsupport.py
@@ -6,16 +6,16 @@
 import string
 
 # Declarations that change for each manager
-MODNAME = '_Help'				# The name of the module
-OBJECTNAME = 'UNUSED'			# The basic name of the objects used here
-KIND = 'Record'				# Usually 'Ptr' or 'Handle'
+MODNAME = '_Help'                               # The name of the module
+OBJECTNAME = 'UNUSED'                   # The basic name of the objects used here
+KIND = 'Record'                         # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Help'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + KIND		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Help'                      # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + KIND          # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -40,17 +40,17 @@
 """
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-	def outputCheckConvertArg(self):
-		OutLbrace("if (DlgObj_Check(v))")
-		Output("*p_itself = ((WindowObject *)v)->ob_itself;")
-		Output("return 1;")
-		OutRbrace()
-		Out("""
-		if (v == Py_None) { *p_itself = NULL; return 1; }
-		if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
-		""")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputCheckConvertArg(self):
+        OutLbrace("if (DlgObj_Check(v))")
+        Output("*p_itself = ((WindowObject *)v)->ob_itself;")
+        Output("return 1;")
+        OutRbrace()
+        Out("""
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
+        """)
 
 # From here on it's basically all boiler plate...
 
@@ -76,4 +76,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/ibcarbon/IBCarbonscan.py b/Mac/Modules/ibcarbon/IBCarbonscan.py
index 1f05217..84e4f1e 100644
--- a/Mac/Modules/ibcarbon/IBCarbonscan.py
+++ b/Mac/Modules/ibcarbon/IBCarbonscan.py
@@ -10,40 +10,40 @@
 from scantools import Scanner_OSX
 
 def main():
-	print "---Scanning IBCarbonRuntime.h---"
-	input = ["IBCarbonRuntime.h"]
-	output = "IBCarbongen.py"
-	defsoutput = TOOLBOXDIR + "IBCarbonRuntime.py"
-	scanner = IBCarbon_Scanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "--done scanning, importing--"
-	import IBCarbonsupport
-	print "done"
+    print "---Scanning IBCarbonRuntime.h---"
+    input = ["IBCarbonRuntime.h"]
+    output = "IBCarbongen.py"
+    defsoutput = TOOLBOXDIR + "IBCarbonRuntime.py"
+    scanner = IBCarbon_Scanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "--done scanning, importing--"
+    import IBCarbonsupport
+    print "done"
 
 class IBCarbon_Scanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "IBCarbonFunction"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t == "IBNibRef" and m == "InMode":
-				classname = "IBCarbonMethod"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "IBCarbonFunction"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t == "IBNibRef" and m == "InMode":
+                classname = "IBCarbonMethod"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"DisposeNibReference",				# taken care of by destructor
-			"CreateNibReferenceWithCFBundle",  ## need to wrap CFBundle.h properly first
-			]
-			
-	def makerepairinstructions(self):
-		return []
+    def makeblacklistnames(self):
+        return [
+                "DisposeNibReference",                          # taken care of by destructor
+                "CreateNibReferenceWithCFBundle",  ## need to wrap CFBundle.h properly first
+                ]
+
+    def makerepairinstructions(self):
+        return []
 
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/ibcarbon/IBCarbonsupport.py b/Mac/Modules/ibcarbon/IBCarbonsupport.py
index 5d07be1..5f41328 100644
--- a/Mac/Modules/ibcarbon/IBCarbonsupport.py
+++ b/Mac/Modules/ibcarbon/IBCarbonsupport.py
@@ -25,12 +25,12 @@
 module = MacModule('_IBCarbon', 'IBCarbon', includestuff, finalstuff, initstuff)
 
 class CFReleaserObject(PEP253Mixin, GlobalObjectDefinition):
-	def outputFreeIt(self, name):
-		Output("CFRelease(%s);" % name)
+    def outputFreeIt(self, name):
+        Output("CFRelease(%s);" % name)
 
 class CFNibDesc(PEP253Mixin, GlobalObjectDefinition):
-	def outputFreeIt(self, name):
-		Output("DisposeNibReference(%s);" % name)
+    def outputFreeIt(self, name):
+        Output("DisposeNibReference(%s);" % name)
 
 #cfstringobject = CFReleaserObject("CFStringRef")
 #module.addobject(cfstringobject)
diff --git a/Mac/Modules/icn/icnscan.py b/Mac/Modules/icn/icnscan.py
index c6a39f3..bdc3b84 100644
--- a/Mac/Modules/icn/icnscan.py
+++ b/Mac/Modules/icn/icnscan.py
@@ -11,62 +11,62 @@
 OBJECT = "NOTUSED"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"GetIconCacheData",
-			"SetIconCacheData",
-			# Constants with funny definitions
-			"kSelectorAllHugeData",
-			"kSelectorAllAvailableData",
-			"svAllAvailableData",
-			# Something in a comment accidentally seen as a const definition
-			"err",
-			# OS8 only
-			'IconServicesTerminate',
-			# Lazy, right now.
-			"GetIconRefFromFileInfo"
-			]
+    def makeblacklistnames(self):
+        return [
+                "GetIconCacheData",
+                "SetIconCacheData",
+                # Constants with funny definitions
+                "kSelectorAllHugeData",
+                "kSelectorAllAvailableData",
+                "svAllAvailableData",
+                # Something in a comment accidentally seen as a const definition
+                "err",
+                # OS8 only
+                'IconServicesTerminate',
+                # Lazy, right now.
+                "GetIconRefFromFileInfo"
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"IconActionUPP",
-			"IconGetterUPP",
-			"CFragInitBlockPtr",
-			"CGRect_ptr",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "IconActionUPP",
+                "IconGetterUPP",
+                "CFragInitBlockPtr",
+                "CGRect_ptr",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			]
+    def makerepairinstructions(self):
+        return [
+                ]
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("from Carbon.Files import *\n")
-			
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("from Carbon.Files import *\n")
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/icn/icnsupport.py b/Mac/Modules/icn/icnsupport.py
index ef1dbf3..1b15385 100644
--- a/Mac/Modules/icn/icnsupport.py
+++ b/Mac/Modules/icn/icnsupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Icons.h'		# The Apple header file
-MODNAME = '_Icn'				# The name of the module
-OBJECTNAME = 'Icon'			# The basic name of the objects used here
-KIND = 'Handle'				# Usually 'Ptr' or 'Handle'
+MACHEADERFILE = 'Icons.h'               # The Apple header file
+MODNAME = '_Icn'                                # The name of the module
+OBJECTNAME = 'Icon'                     # The basic name of the objects used here
+KIND = 'Handle'                         # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Icn'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + KIND		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Icn'                       # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + KIND          # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -52,17 +52,17 @@
 """
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-	def outputCheckConvertArg(self):
-		OutLbrace("if (DlgObj_Check(v))")
-		Output("*p_itself = ((WindowObject *)v)->ob_itself;")
-		Output("return 1;")
-		OutRbrace()
-		Out("""
-		if (v == Py_None) { *p_itself = NULL; return 1; }
-		if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
-		""")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputCheckConvertArg(self):
+        OutLbrace("if (DlgObj_Check(v))")
+        Output("*p_itself = ((WindowObject *)v)->ob_itself;")
+        Output("return 1;")
+        OutRbrace()
+        Out("""
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
+        """)
 
 # From here on it's basically all boiler plate...
 
@@ -88,4 +88,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/launch/launchscan.py b/Mac/Modules/launch/launchscan.py
index bdda1de..621033b 100644
--- a/Mac/Modules/launch/launchscan.py
+++ b/Mac/Modules/launch/launchscan.py
@@ -11,76 +11,76 @@
 OBJECT = "NOTUSED"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	scanner.gentypetest(SHORT+"typetest.py")
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    scanner.gentypetest(SHORT+"typetest.py")
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("from Carbon.Files import *\n")
-		self.defsfile.write("kLSRequestAllInfo = -1\n")
-		self.defsfile.write("kLSRolesAll = -1\n")
-		self.defsfile.write("kLSUnknownType = FOUR_CHAR_CODE('\\0\\0\\0\\0')\n")
-		self.defsfile.write("kLSUnknownCreator = FOUR_CHAR_CODE('\\0\\0\\0\\0')\n")
-		self.defsfile.write("kLSInvalidExtensionIndex = -1\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("from Carbon.Files import *\n")
+        self.defsfile.write("kLSRequestAllInfo = -1\n")
+        self.defsfile.write("kLSRolesAll = -1\n")
+        self.defsfile.write("kLSUnknownType = FOUR_CHAR_CODE('\\0\\0\\0\\0')\n")
+        self.defsfile.write("kLSUnknownCreator = FOUR_CHAR_CODE('\\0\\0\\0\\0')\n")
+        self.defsfile.write("kLSInvalidExtensionIndex = -1\n")
 
-	def makeblacklistnames(self):
-		return [
-			"LSInit",
-			"LSTerm",
-			"kLSRequestAllInfo",
-			"kLSRolesAll",
-			"kLSInvalidExtensionIndex",
-			"kLSUnknownType",
-			"kLSUnknownCreator"
-			]
+    def makeblacklistnames(self):
+        return [
+                "LSInit",
+                "LSTerm",
+                "kLSRequestAllInfo",
+                "kLSRolesAll",
+                "kLSInvalidExtensionIndex",
+                "kLSUnknownType",
+                "kLSUnknownCreator"
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"LSLaunchFSRefSpec_ptr",
-			"LSLaunchURLSpec_ptr",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "LSLaunchFSRefSpec_ptr",
+                "LSLaunchURLSpec_ptr",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			# LSGetApplicationForInfo
-			([('CFStringRef', 'inExtension', 'InMode')],
-    		 [('OptCFStringRef', 'inExtension', 'InMode')]),
-    		 
-			# LSFindApplicationForInfo
-			([('CFStringRef', 'inBundleID', 'InMode')],
-    		 [('OptCFStringRef', 'inBundleID', 'InMode')]),
-			([('CFStringRef', 'inName', 'InMode')],
-    		 [('OptCFStringRef', 'inName', 'InMode')]),
+    def makerepairinstructions(self):
+        return [
+                # LSGetApplicationForInfo
+                ([('CFStringRef', 'inExtension', 'InMode')],
+         [('OptCFStringRef', 'inExtension', 'InMode')]),
 
-			# Unicode filenames passed as length, buffer. LSGetExtensionInfo
-			([('UniCharCount', '*', 'InMode'),
-			  ('UniChar_ptr', '*', 'InMode')],
-			 [('UnicodeReverseInBuffer', '*', 'InMode')]
-			),
-			]
-			
+                # LSFindApplicationForInfo
+                ([('CFStringRef', 'inBundleID', 'InMode')],
+         [('OptCFStringRef', 'inBundleID', 'InMode')]),
+                ([('CFStringRef', 'inName', 'InMode')],
+         [('OptCFStringRef', 'inName', 'InMode')]),
+
+                # Unicode filenames passed as length, buffer. LSGetExtensionInfo
+                ([('UniCharCount', '*', 'InMode'),
+                  ('UniChar_ptr', '*', 'InMode')],
+                 [('UnicodeReverseInBuffer', '*', 'InMode')]
+                ),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/launch/launchsupport.py b/Mac/Modules/launch/launchsupport.py
index 122278c..34c2efb 100644
--- a/Mac/Modules/launch/launchsupport.py
+++ b/Mac/Modules/launch/launchsupport.py
@@ -6,16 +6,16 @@
 import string
 
 # Declarations that change for each manager
-MODNAME = '_Launch'				# The name of the module
-OBJECTNAME = 'UNUSED'			# The basic name of the objects used here
-KIND = 'Record'				# Usually 'Ptr' or 'Handle'
+MODNAME = '_Launch'                             # The name of the module
+OBJECTNAME = 'UNUSED'                   # The basic name of the objects used here
+KIND = 'Record'                         # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Launch'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + KIND		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Launch'                    # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + KIND          # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -41,21 +41,21 @@
 static int
 OptCFStringRefObj_Convert(PyObject *v, CFStringRef *spec)
 {
-	if (v == Py_None) {
-		*spec = NULL;
-		return 1;
-	}
-	return CFStringRefObj_Convert(v, spec);
+        if (v == Py_None) {
+                *spec = NULL;
+                return 1;
+        }
+        return CFStringRefObj_Convert(v, spec);
 }
 
 PyObject *
 OptCFStringRefObj_New(CFStringRef it)
 {
-	if (it == NULL) {
-		Py_INCREF(Py_None);
-		return Py_None;
-	}
-	return CFStringRefObj_New(it);
+        if (it == NULL) {
+                Py_INCREF(Py_None);
+                return Py_None;
+        }
+        return CFStringRefObj_New(it);
 }
 
 /*
@@ -64,13 +64,13 @@
 PyObject *
 LSItemInfoRecord_New(LSItemInfoRecord *it)
 {
-	return Py_BuildValue("{s:is:O&s:O&s:O&s:O&s:i}", 
-		"flags", it->flags,
-		"filetype", PyMac_BuildOSType, it->filetype,
-		"creator", PyMac_BuildOSType, it->creator,
-		"extension", OptCFStringRefObj_New, it->extension,
-		"iconFileName", OptCFStringRefObj_New, it->iconFileName,
-		"kindID", it->kindID);
+        return Py_BuildValue("{s:is:O&s:O&s:O&s:O&s:i}",
+                "flags", it->flags,
+                "filetype", PyMac_BuildOSType, it->filetype,
+                "creator", PyMac_BuildOSType, it->creator,
+                "extension", OptCFStringRefObj_New, it->extension,
+                "iconFileName", OptCFStringRefObj_New, it->iconFileName,
+                "kindID", it->kindID);
 }
 """
 
@@ -99,4 +99,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/launch/setup.py b/Mac/Modules/launch/setup.py
index ccf8ee7..2054195 100644
--- a/Mac/Modules/launch/setup.py
+++ b/Mac/Modules/launch/setup.py
@@ -4,10 +4,10 @@
 from distutils.core import Extension, setup
 
 setup(name="LaunchServices", version="0.2",
-	ext_modules=[
-		Extension('_Launch', ['_Launchmodule.c'],
-		extra_link_args=['-framework', 'ApplicationServices'])
-	],
-	py_modules=['LaunchServices.Launch', 'LaunchServices.LaunchServices'],
-	package_dir={'LaunchServices':'../../../Lib/plat-mac/Carbon'}
-	)
+        ext_modules=[
+                Extension('_Launch', ['_Launchmodule.c'],
+                extra_link_args=['-framework', 'ApplicationServices'])
+        ],
+        py_modules=['LaunchServices.Launch', 'LaunchServices.LaunchServices'],
+        package_dir={'LaunchServices':'../../../Lib/plat-mac/Carbon'}
+        )
diff --git a/Mac/Modules/list/listscan.py b/Mac/Modules/list/listscan.py
index 66cb2ad..877f6cb 100644
--- a/Mac/Modules/list/listscan.py
+++ b/Mac/Modules/list/listscan.py
@@ -11,78 +11,78 @@
 OBJECT = "ListHandle"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[-1]
-			# This is non-functional today
-			if t in ('ListHandle', 'ListRef') and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[-1]
+            # This is non-functional today
+            if t in ('ListHandle', 'ListRef') and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"LDispose",		# Done by removing the object
-			"LSearch",		# We don't want to handle procs just yet
-			"CreateCustomList",  # done manually
-			"SetListDefinitionProc",
-			
-			# These have funny argument/return values
-			"GetListViewBounds",
-			"GetListCellIndent",
-			"GetListCellSize",
-			"GetListVisibleCells",
-			"GetListClickLocation",
-			"GetListMouseLocation",
-			"GetListDataBounds",
-			"SetListLastClick",
-			]
+    def makeblacklistnames(self):
+        return [
+                "LDispose",             # Done by removing the object
+                "LSearch",              # We don't want to handle procs just yet
+                "CreateCustomList",  # done manually
+                "SetListDefinitionProc",
 
-	def makeblacklisttypes(self):
-		return [
-			"ListClickLoopUPP",  # Too difficult for now
-			"ListDefSpecPtr", # later
-			]
+                # These have funny argument/return values
+                "GetListViewBounds",
+                "GetListCellIndent",
+                "GetListCellSize",
+                "GetListVisibleCells",
+                "GetListClickLocation",
+                "GetListMouseLocation",
+                "GetListDataBounds",
+                "SetListLastClick",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([('ListBounds_ptr', '*', 'InMode')],
-			 [('Rect_ptr', '*', 'InMode')]),
+    def makeblacklisttypes(self):
+        return [
+                "ListClickLoopUPP",  # Too difficult for now
+                "ListDefSpecPtr", # later
+                ]
 
-			([("Cell", "theCell", "OutMode")],
-			 [("Cell", "theCell", "InOutMode")]),
-			 
-			([("void_ptr", "*", "InMode"), ("short", "*", "InMode")],
-			 [("InBufferShortsize", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("short", "*", "OutMode")],
-			 [("VarOutBufferShortsize", "*", "InOutMode")]),
-			
-			# SetListCellIndent doesn't have const
-			([("Point", "indent", "OutMode")],
-			 [("Point_ptr", "indent", "InMode")]),
-			
-			]
+    def makerepairinstructions(self):
+        return [
+                ([('ListBounds_ptr', '*', 'InMode')],
+                 [('Rect_ptr', '*', 'InMode')]),
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+                ([("Cell", "theCell", "OutMode")],
+                 [("Cell", "theCell", "InOutMode")]),
 
-			
+                ([("void_ptr", "*", "InMode"), ("short", "*", "InMode")],
+                 [("InBufferShortsize", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("short", "*", "OutMode")],
+                 [("VarOutBufferShortsize", "*", "InOutMode")]),
+
+                # SetListCellIndent doesn't have const
+                ([("Point", "indent", "OutMode")],
+                 [("Point_ptr", "indent", "InMode")]),
+
+                ]
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/list/listsupport.py b/Mac/Modules/list/listsupport.py
index e44317a..93baede 100644
--- a/Mac/Modules/list/listsupport.py
+++ b/Mac/Modules/list/listsupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Lists.h'		# The Apple header file
-MODNAME = '_List'				# The name of the module
-OBJECTNAME = 'List'			# The basic name of the objects used here
-KIND = 'Handle'				# Usually 'Ptr' or 'Handle'
+MACHEADERFILE = 'Lists.h'               # The Apple header file
+MODNAME = '_List'                               # The name of the module
+OBJECTNAME = 'List'                     # The basic name of the objects used here
+KIND = 'Handle'                         # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'List'			# The prefix for module-wide routines
-OBJECTTYPE = "ListHandle"		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'List'                      # The prefix for module-wide routines
+OBJECTTYPE = "ListHandle"               # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -29,8 +29,8 @@
 
 ListDefSpec = ListDefSpec_ptr = OpaqueType("ListDefSpec", "PyMac_BuildListDefSpec", "PyMac_GetListDefSpec")
 
-VarOutBufferShortsize = VarHeapOutputBufferType('char', 'short', 's')	# (buf, &len)
-InBufferShortsize = VarInputBufferType('char', 'short', 's')		# (buf, len)
+VarOutBufferShortsize = VarHeapOutputBufferType('char', 'short', 's')   # (buf, &len)
+InBufferShortsize = VarInputBufferType('char', 'short', 's')            # (buf, len)
 
 RgnHandle = OpaqueByValueType("RgnHandle", "ResObj")
 DataHandle = OpaqueByValueType("DataHandle", "ResObj")
@@ -64,59 +64,59 @@
 """
 
 class ListMethodGenerator(MethodGenerator):
-	"""Similar to MethodGenerator, but has self as last argument"""
+    """Similar to MethodGenerator, but has self as last argument"""
 
-	def parseArgumentList(self, args):
-		args, a0 = args[:-1], args[-1]
-		t0, n0, m0 = a0
-		if m0 != InMode:
-			raise ValueError, "method's 'self' must be 'InMode'"
-		self.itself = Variable(t0, "_self->ob_itself", SelfMode)
-		FunctionGenerator.parseArgumentList(self, args)
-		self.argumentList.append(self.itself)
+    def parseArgumentList(self, args):
+        args, a0 = args[:-1], args[-1]
+        t0, n0, m0 = a0
+        if m0 != InMode:
+            raise ValueError, "method's 'self' must be 'InMode'"
+        self.itself = Variable(t0, "_self->ob_itself", SelfMode)
+        FunctionGenerator.parseArgumentList(self, args)
+        self.argumentList.append(self.itself)
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	# XXXX Should inherit from Resource
-	getsetlist = [(
-		'listFlags',
-		'return Py_BuildValue("l", (long)GetListFlags(self->ob_itself) & 0xff);',
-		'if (!PyArg_Parse(v, "B", &(*self->ob_itself)->listFlags)) return -1;',
-		None,
-		), (
-		'selFlags',
-		'return Py_BuildValue("l", (long)GetListSelectionFlags(self->ob_itself) & 0xff);',
-		'if (!PyArg_Parse(v, "B", &(*self->ob_itself)->selFlags)) return -1;',
-		None,
-		), (
-		'cellSize',
-		'return Py_BuildValue("O&", PyMac_BuildPoint, (*self->ob_itself)->cellSize);',
-		'if (!PyArg_Parse(v, "O&", PyMac_GetPoint, &(*self->ob_itself)->cellSize)) return -1;',
-		None
-		)]
+    # XXXX Should inherit from Resource
+    getsetlist = [(
+            'listFlags',
+            'return Py_BuildValue("l", (long)GetListFlags(self->ob_itself) & 0xff);',
+            'if (!PyArg_Parse(v, "B", &(*self->ob_itself)->listFlags)) return -1;',
+            None,
+            ), (
+            'selFlags',
+            'return Py_BuildValue("l", (long)GetListSelectionFlags(self->ob_itself) & 0xff);',
+            'if (!PyArg_Parse(v, "B", &(*self->ob_itself)->selFlags)) return -1;',
+            None,
+            ), (
+            'cellSize',
+            'return Py_BuildValue("O&", PyMac_BuildPoint, (*self->ob_itself)->cellSize);',
+            'if (!PyArg_Parse(v, "O&", PyMac_GetPoint, &(*self->ob_itself)->cellSize)) return -1;',
+            None
+            )]
 
-	def outputStructMembers(self):
-		ObjectDefinition.outputStructMembers(self)
-		Output("PyObject *ob_ldef_func;")
-		Output("int ob_must_be_disposed;")
+    def outputStructMembers(self):
+        ObjectDefinition.outputStructMembers(self)
+        Output("PyObject *ob_ldef_func;")
+        Output("int ob_must_be_disposed;")
 
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					PyErr_SetString(List_Error,"Cannot create null List");
-					return NULL;
-				}""")
-				
-	def outputInitStructMembers(self):
-		ObjectDefinition.outputInitStructMembers(self)
-		Output("it->ob_ldef_func = NULL;")
-		Output("it->ob_must_be_disposed = 1;")
-		Output("SetListRefCon(itself, (long)it);")
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(List_Error,"Cannot create null List");
+                                return NULL;
+                        }""")
 
-	def outputFreeIt(self, itselfname):
-		Output("Py_XDECREF(self->ob_ldef_func);")
-		Output("self->ob_ldef_func = NULL;")
-		Output("SetListRefCon(self->ob_itself, (long)0);")
-		Output("if (self->ob_must_be_disposed && %s) LDispose(%s);", itselfname, itselfname)
-		
+    def outputInitStructMembers(self):
+        ObjectDefinition.outputInitStructMembers(self)
+        Output("it->ob_ldef_func = NULL;")
+        Output("it->ob_must_be_disposed = 1;")
+        Output("SetListRefCon(itself, (long)it);")
+
+    def outputFreeIt(self, itselfname):
+        Output("Py_XDECREF(self->ob_ldef_func);")
+        Output("self->ob_ldef_func = NULL;")
+        Output("SetListRefCon(self->ob_itself, (long)0);")
+        Output("if (self->ob_must_be_disposed && %s) LDispose(%s);", itselfname, itselfname)
+
 # From here on it's basically all boiler plate...
 
 finalstuff = finalstuff + """
@@ -126,34 +126,34 @@
                        Cell theCell,
                        SInt16 dataOffset,
                        SInt16 dataLen,
-                       ListHandle theList)  
+                       ListHandle theList)
 {
-	PyObject *listDefFunc, *args, *rv=NULL;
-	ListObject *self;
-	
-	self = (ListObject*)GetListRefCon(theList);
-	if (self == NULL || self->ob_itself != theList)
-		return;  /* nothing we can do */
-	listDefFunc = self->ob_ldef_func;
-	if (listDefFunc == NULL)
-		return;  /* nothing we can do */
-	args = Py_BuildValue("hbO&O&hhO", message,
-	                                  selected,
-	                                  PyMac_BuildRect, cellRect,
-	                                  PyMac_BuildPoint, theCell,
-	                                  dataOffset,
-	                                  dataLen,
-	                                  self);
-	if (args != NULL) {
-		rv = PyEval_CallObject(listDefFunc, args);
-		Py_DECREF(args);
-	}
-	if (rv == NULL) {
-		PySys_WriteStderr("error in list definition callback:\\n");
-		PyErr_Print();
-	} else {
-		Py_DECREF(rv);
-	}
+        PyObject *listDefFunc, *args, *rv=NULL;
+        ListObject *self;
+
+        self = (ListObject*)GetListRefCon(theList);
+        if (self == NULL || self->ob_itself != theList)
+                return;  /* nothing we can do */
+        listDefFunc = self->ob_ldef_func;
+        if (listDefFunc == NULL)
+                return;  /* nothing we can do */
+        args = Py_BuildValue("hbO&O&hhO", message,
+                                          selected,
+                                          PyMac_BuildRect, cellRect,
+                                          PyMac_BuildPoint, theCell,
+                                          dataOffset,
+                                          dataLen,
+                                          self);
+        if (args != NULL) {
+                rv = PyEval_CallObject(listDefFunc, args);
+                Py_DECREF(args);
+        }
+        if (rv == NULL) {
+                PySys_WriteStderr("error in list definition callback:\\n");
+                PyErr_Print();
+        } else {
+                Py_DECREF(rv);
+        }
 }
 """
 
@@ -177,7 +177,7 @@
 Handle h;
 ListObject *l;
 if (!PyArg_ParseTuple(_args, "O&", ResObj_Convert, &h))
-	return NULL;
+        return NULL;
 l = (ListObject *)ListObj_New(as_List(h));
 l->ob_must_be_disposed = 0;
 _res = Py_BuildValue("O", l);
@@ -215,10 +215,10 @@
                       &hasGrow,
                       &scrollHoriz,
                       &scrollVert))
-	return NULL;
+        return NULL;
 
 
-/* Carbon applications use the CreateCustomList API */ 
+/* Carbon applications use the CreateCustomList API */
 theSpec.u.userProc = myListDefFunctionUPP;
 CreateCustomList(&rView,
                  &dataBounds,
@@ -234,7 +234,7 @@
 
 _res = ListObj_New(outList);
 if (_res == NULL)
-	return NULL;
+        return NULL;
 Py_INCREF(listDefFunc);
 ((ListObject*)_res)->ob_ldef_func = listDefFunc;
 return _res;\
@@ -253,4 +253,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/menu/menuedit.py b/Mac/Modules/menu/menuedit.py
index f613d8b..b74301d 100644
--- a/Mac/Modules/menu/menuedit.py
+++ b/Mac/Modules/menu/menuedit.py
@@ -121,4 +121,3 @@
     (OSType, 'inPropertyTag', InMode),
 )
 functions.append(f)
-
diff --git a/Mac/Modules/menu/menuscan.py b/Mac/Modules/menu/menuscan.py
index 281cc86..ae9465e 100644
--- a/Mac/Modules/menu/menuscan.py
+++ b/Mac/Modules/menu/menuscan.py
@@ -7,91 +7,91 @@
 from scantools import Scanner
 
 def main():
-	input = "Menus.h"
-	output = "menugen.py"
-	defsoutput = TOOLBOXDIR + "Menus.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now doing 'import menusupport' ==="
-	import menusupport
-	print "=== Done.  It's up to you to compile Menumodule.c ==="
+    input = "Menus.h"
+    output = "menugen.py"
+    defsoutput = TOOLBOXDIR + "Menus.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now doing 'import menusupport' ==="
+    import menusupport
+    print "=== Done.  It's up to you to compile Menumodule.c ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in ("MenuHandle", "MenuRef") and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in ("MenuHandle", "MenuRef") and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-##			"IsShowContextualMenuClick", # Can't find it in the library
-##			"InitContextualMenus", # ditto
-			"GetMenuItemProperty",	# difficult for the moment
-			"GetMenuItemPropertySize",
-			"SetMenuItemProperty",
-			"RemoveMenuItemProperty",
-			"SetMenuCommandProperty",
-			"GetMenuCommandProperty",
-			"GetMenuTitle", # Funny arg/returnvalue
-			"SetMenuTitle",
-			"SetMenuTitleIcon", # void*
-			# OS8 calls:
-			'GetMenuItemRefCon2',
-			'SetMenuItemRefCon2',
-			'EnableItem',
-			'DisableItem',
-			'CheckItem',
-			'CountMItems',
-			'OpenDeskAcc',
-			'SystemEdit',
-			'SystemMenu',
-			'SetMenuFlash',
-			'InitMenus',
-			'InitProcMenu',
-			]
+    def makeblacklistnames(self):
+        return [
+##                      "IsShowContextualMenuClick", # Can't find it in the library
+##                      "InitContextualMenus", # ditto
+                "GetMenuItemProperty",  # difficult for the moment
+                "GetMenuItemPropertySize",
+                "SetMenuItemProperty",
+                "RemoveMenuItemProperty",
+                "SetMenuCommandProperty",
+                "GetMenuCommandProperty",
+                "GetMenuTitle", # Funny arg/returnvalue
+                "SetMenuTitle",
+                "SetMenuTitleIcon", # void*
+                # OS8 calls:
+                'GetMenuItemRefCon2',
+                'SetMenuItemRefCon2',
+                'EnableItem',
+                'DisableItem',
+                'CheckItem',
+                'CountMItems',
+                'OpenDeskAcc',
+                'SystemEdit',
+                'SystemMenu',
+                'SetMenuFlash',
+                'InitMenus',
+                'InitProcMenu',
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			'MCTableHandle',
-			'MCEntryPtr',
-			'MCTablePtr',
-			'AEDesc_ptr', # For now: doable, but not easy
-			'ProcessSerialNumber', # ditto
-			"MenuDefSpecPtr", # Too difficult for now
-			"MenuDefSpec_ptr", # ditto
-			"MenuTrackingData",
-			"void_ptr", 	# Don't know yet.
-			"EventRef",	# For now, not exported yet.
-			"MenuItemDataPtr", # Not yet.
-			"MenuItemDataRec_ptr",
-			]
+    def makeblacklisttypes(self):
+        return [
+                'MCTableHandle',
+                'MCEntryPtr',
+                'MCTablePtr',
+                'AEDesc_ptr', # For now: doable, but not easy
+                'ProcessSerialNumber', # ditto
+                "MenuDefSpecPtr", # Too difficult for now
+                "MenuDefSpec_ptr", # ditto
+                "MenuTrackingData",
+                "void_ptr",     # Don't know yet.
+                "EventRef",     # For now, not exported yet.
+                "MenuItemDataPtr", # Not yet.
+                "MenuItemDataRec_ptr",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("Str255", "itemString", "InMode")],
-			 [("*", "*", "OutMode")]),
-			
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
-			([("MenuRef", 'outHierMenu', "OutMode")],
-			 [("OptMenuRef", 'outHierMenu', "OutMode")]),
-			]
+    def makerepairinstructions(self):
+        return [
+                ([("Str255", "itemString", "InMode")],
+                 [("*", "*", "OutMode")]),
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
+                ([("MenuRef", 'outHierMenu', "OutMode")],
+                 [("OptMenuRef", 'outHierMenu', "OutMode")]),
+                ]
+
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/menu/menusupport.py b/Mac/Modules/menu/menusupport.py
index 7c4ae0d..a04b755 100644
--- a/Mac/Modules/menu/menusupport.py
+++ b/Mac/Modules/menu/menusupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Menus.h'		# The Apple header file
-MODNAME = '_Menu'			# The name of the module
-OBJECTNAME = 'Menu'			# The basic name of the objects used here
+MACHEADERFILE = 'Menus.h'               # The Apple header file
+MODNAME = '_Menu'                       # The name of the module
+OBJECTNAME = 'Menu'                     # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Menu'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + 'Handle'	# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Menu'                      # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + 'Handle'      # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
 EXTRAFILE = string.lower(MODPREFIX) + 'edit.py' # A similar file but hand-made
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -48,7 +48,7 @@
 extern int _MenuObj_Convert(PyObject *, MenuHandle *);
 
 #define MenuObj_New _MenuObj_New
-#define MenuObj_Convert _MenuObj_Convert 
+#define MenuObj_Convert _MenuObj_Convert
 #endif
 
 #define as_Menu(h) ((MenuHandle)h)
@@ -58,31 +58,31 @@
 /* Alternative version of MenuObj_New, which returns None for NULL argument */
 PyObject *OptMenuObj_New(MenuRef itself)
 {
-	if (itself == NULL) {
-		Py_INCREF(Py_None);
-		return Py_None;
-	}
-	return MenuObj_New(itself);
+        if (itself == NULL) {
+                Py_INCREF(Py_None);
+                return Py_None;
+        }
+        return MenuObj_New(itself);
 }
 
 /* Alternative version of MenuObj_Convert, which returns NULL for a None argument */
 int OptMenuObj_Convert(PyObject *v, MenuRef *p_itself)
 {
-	if ( v == Py_None ) {
-		*p_itself = NULL;
-		return 1;
-	}
-	return MenuObj_Convert(v, p_itself);
+        if ( v == Py_None ) {
+                *p_itself = NULL;
+                return 1;
+        }
+        return MenuObj_Convert(v, p_itself);
 }
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(MenuHandle, MenuObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(MenuHandle, MenuObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(MenuHandle, MenuObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(MenuHandle, MenuObj_Convert);
 """
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	pass
+    pass
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff)
diff --git a/Mac/Modules/mlte/mltescan.py b/Mac/Modules/mlte/mltescan.py
index 134bffa..adecb4f 100644
--- a/Mac/Modules/mlte/mltescan.py
+++ b/Mac/Modules/mlte/mltescan.py
@@ -12,33 +12,33 @@
 # ADD object typenames here
 
 def main():
-	input = "MacTextEditor.h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.gentypetest(SHORT+"typetest.py")
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "MacTextEditor.h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.gentypetest(SHORT+"typetest.py")
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner_OSX):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in OBJECTS and m == "InMode":
-				classname = "Method"
-				listname = t + "_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in OBJECTS and m == "InMode":
+                classname = "Method"
+                listname = t + "_methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("""
+    def writeinitialdefs(self):
+        self.defsfile.write("""
 def FOUR_CHAR_CODE(x): return x
 false = 0
 true = 1
@@ -55,89 +55,89 @@
 normal = 0
 """)
 
-	def makeblacklistnames(self):
-		return [
-			"TXNGetFontDefaults", # Arg is too difficult
-			"TXNSetFontDefaults", # Arg is too difficult
-			"TXNInitTextension", # done manually
-			
-			# Constants with funny definitions
-			"kTXNClearThisControl", 
-			"kTXNClearTheseFontFeatures",
-			"kTXNDontCareTypeSize",
-			"kTXNDecrementTypeSize",
-			"kTXNUseCurrentSelection",
-			"kTXNStartOffset",
-			"kTXNEndOffset",
-			"kTXNQDFontNameAttributeSize",
-			"kTXNQDFontFamilyIDAttributeSize",
-			"kTXNQDFontSizeAttributeSize",
-			"kTXNQDFontStyleAttributeSize",
-			"kTXNQDFontColorAttributeSize",
-			"kTXNTextEncodingAttributeSize",
-			"kTXNUseEncodingWordRulesMask",
-			"kTXNFontSizeAttributeSize",
-			"status",
-			"justification",
-			'TXNTSMCheck', # OS8
-			]
+    def makeblacklistnames(self):
+        return [
+                "TXNGetFontDefaults", # Arg is too difficult
+                "TXNSetFontDefaults", # Arg is too difficult
+                "TXNInitTextension", # done manually
 
-	def makeblacklisttypes(self):
-		return [
-			"TXNTab", # TBD
-			"TXNMargins", # TBD
-			"TXNControlData", #TBD
-			"TXNATSUIFeatures", #TBD
-			"TXNATSUIVariations", #TBD
-			"TXNAttributeData", #TBD
-			"TXNTypeAttributes", #TBD
-			"TXNMatchTextRecord", #TBD
-			"TXNBackground", #TBD
-			"TXNFindUPP", 
-			"ATSUStyle", #TBD
-			"TXNBackground_ptr", #TBD
-			"TXNControlData_ptr", #TBD
-			"TXNControlTag_ptr", #TBD
-			"TXNLongRect", #TBD
-			"TXNLongRect_ptr", #TBD
-			"TXNTypeAttributes_ptr", #TBD
+                # Constants with funny definitions
+                "kTXNClearThisControl",
+                "kTXNClearTheseFontFeatures",
+                "kTXNDontCareTypeSize",
+                "kTXNDecrementTypeSize",
+                "kTXNUseCurrentSelection",
+                "kTXNStartOffset",
+                "kTXNEndOffset",
+                "kTXNQDFontNameAttributeSize",
+                "kTXNQDFontFamilyIDAttributeSize",
+                "kTXNQDFontSizeAttributeSize",
+                "kTXNQDFontStyleAttributeSize",
+                "kTXNQDFontColorAttributeSize",
+                "kTXNTextEncodingAttributeSize",
+                "kTXNUseEncodingWordRulesMask",
+                "kTXNFontSizeAttributeSize",
+                "status",
+                "justification",
+                'TXNTSMCheck', # OS8
+                ]
 
-			"TXNActionKeyMapperProcPtr",
-			"TXNActionKeyMapperUPP",
-			"TXNTextBoxOptionsData",
-			"TXNCountOptions",
-			"void_ptr",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "TXNTab", # TBD
+                "TXNMargins", # TBD
+                "TXNControlData", #TBD
+                "TXNATSUIFeatures", #TBD
+                "TXNATSUIVariations", #TBD
+                "TXNAttributeData", #TBD
+                "TXNTypeAttributes", #TBD
+                "TXNMatchTextRecord", #TBD
+                "TXNBackground", #TBD
+                "TXNFindUPP",
+                "ATSUStyle", #TBD
+                "TXNBackground_ptr", #TBD
+                "TXNControlData_ptr", #TBD
+                "TXNControlTag_ptr", #TBD
+                "TXNLongRect", #TBD
+                "TXNLongRect_ptr", #TBD
+                "TXNTypeAttributes_ptr", #TBD
 
-	def makerepairinstructions(self):
-		return [
-			# TXNNewObject has a lot of optional parameters
-			([("FSSpec_ptr", "iFileSpec", "InMode")],
-			 [("OptFSSpecPtr", "*", "*")]),
-			([("Rect", "iFrame", "OutMode")],
-			 [("OptRectPtr", "*", "InMode")]),
-			 
-			# In UH 332 some of the "const" are missing for input parameters passed
-			# by reference. We fix that up here.
-			([("EventRecord", "iEvent", "OutMode")],
-			 [("EventRecord_ptr", "*", "InMode")]),
-			([("FSSpec", "iFileSpecification", "OutMode")],
-			 [("FSSpec_ptr", "*", "InMode")]),
-			([("TXNMacOSPreferredFontDescription", "iFontDefaults", "OutMode")],
-			 [("TXNMacOSPreferredFontDescription_ptr", "*", "InMode")]),
-			 
-			# In buffers are passed as void *
-			([("void", "*", "OutMode"), ("ByteCount", "*", "InMode")],
-			 [("MlteInBuffer", "*", "InMode")]),
-			 
-			# The AdjustCursor region handle is optional
-			([("RgnHandle", "ioCursorRgn", "InMode")],
-			 [("OptRgnHandle", "*", "*")]),
-			 
-			# The GWorld for TXNDraw is optional
-			([('GWorldPtr', 'iDrawPort', 'InMode')],
-			 [('OptGWorldPtr', '*', '*')]),
-			]
-			
+                "TXNActionKeyMapperProcPtr",
+                "TXNActionKeyMapperUPP",
+                "TXNTextBoxOptionsData",
+                "TXNCountOptions",
+                "void_ptr",
+                ]
+
+    def makerepairinstructions(self):
+        return [
+                # TXNNewObject has a lot of optional parameters
+                ([("FSSpec_ptr", "iFileSpec", "InMode")],
+                 [("OptFSSpecPtr", "*", "*")]),
+                ([("Rect", "iFrame", "OutMode")],
+                 [("OptRectPtr", "*", "InMode")]),
+
+                # In UH 332 some of the "const" are missing for input parameters passed
+                # by reference. We fix that up here.
+                ([("EventRecord", "iEvent", "OutMode")],
+                 [("EventRecord_ptr", "*", "InMode")]),
+                ([("FSSpec", "iFileSpecification", "OutMode")],
+                 [("FSSpec_ptr", "*", "InMode")]),
+                ([("TXNMacOSPreferredFontDescription", "iFontDefaults", "OutMode")],
+                 [("TXNMacOSPreferredFontDescription_ptr", "*", "InMode")]),
+
+                # In buffers are passed as void *
+                ([("void", "*", "OutMode"), ("ByteCount", "*", "InMode")],
+                 [("MlteInBuffer", "*", "InMode")]),
+
+                # The AdjustCursor region handle is optional
+                ([("RgnHandle", "ioCursorRgn", "InMode")],
+                 [("OptRgnHandle", "*", "*")]),
+
+                # The GWorld for TXNDraw is optional
+                ([('GWorldPtr', 'iDrawPort', 'InMode')],
+                 [('OptGWorldPtr', '*', '*')]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/mlte/mltesupport.py b/Mac/Modules/mlte/mltesupport.py
index 862d0bc..8dcbed5 100644
--- a/Mac/Modules/mlte/mltesupport.py
+++ b/Mac/Modules/mlte/mltesupport.py
@@ -8,12 +8,12 @@
 import string
 
 # Declarations that change for each manager
-MODNAME = '_Mlte'				# The name of the module
+MODNAME = '_Mlte'                               # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Mlte'			# The prefix for module-wide routines
+MODPREFIX = 'Mlte'                      # The prefix for module-wide routines
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -43,14 +43,14 @@
 static int
 OptFSSpecPtr_Convert(PyObject *v, FSSpec **p_itself)
 {
-	static FSSpec fss;
-	if (v == Py_None)
-	{
-		*p_itself = NULL;
-		return 1;
-	}
-	*p_itself = &fss;
-	return PyMac_GetFSSpec(v, *p_itself);
+        static FSSpec fss;
+        if (v == Py_None)
+        {
+                *p_itself = NULL;
+                return 1;
+        }
+        *p_itself = &fss;
+        return PyMac_GetFSSpec(v, *p_itself);
 }
 
 /*
@@ -59,15 +59,15 @@
 static int
 OptRectPtr_Convert(PyObject *v, Rect **p_itself)
 {
-	static Rect r;
-	
-	if (v == Py_None)
-	{
-		*p_itself = NULL;
-		return 1;
-	}
-	*p_itself = &r;
-	return PyMac_GetRect(v, *p_itself);
+        static Rect r;
+
+        if (v == Py_None)
+        {
+                *p_itself = NULL;
+                return 1;
+        }
+        *p_itself = &r;
+        return PyMac_GetRect(v, *p_itself);
 }
 
 /*
@@ -75,19 +75,19 @@
 */
 static int
 OptGWorldObj_Convert(PyObject *v, GWorldPtr *p_itself)
-{	
-	if (v == Py_None)
-	{
-		*p_itself = NULL;
-		return 1;
-	}
-	return GWorldObj_Convert(v, p_itself);
+{
+        if (v == Py_None)
+        {
+                *p_itself = NULL;
+                return 1;
+        }
+        return GWorldObj_Convert(v, p_itself);
 }
 
 """
 
 initstuff = initstuff + """
-//	PyMac_INIT_TOOLBOX_OBJECT_NEW(xxxx);
+//      PyMac_INIT_TOOLBOX_OBJECT_NEW(xxxx);
 """
 TXNObject = OpaqueByValueType("TXNObject", "TXNObj")
 TXNFontMenuObject = OpaqueByValueType("TXNFontMenuObject", "TXNFontMenuObj")
@@ -133,12 +133,12 @@
 # Our (opaque) objects
 
 class TXNObjDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
 
 class TXNFontMenuObjDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
 
 
 # ADD object class here
@@ -183,7 +183,7 @@
 TXNInitOptions iUsageFlags;
 PyMac_PRECHECK(TXNInitTextension);
 if (!PyArg_ParseTuple(_args, "l", &iUsageFlags))
-	return NULL;
+        return NULL;
 _err = TXNInitTextension(iDefaultFonts,
                          iCountDefaultFonts,
                          iUsageFlags);
@@ -200,4 +200,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/osa/osascan.py b/Mac/Modules/osa/osascan.py
index 75e1a08..fb8196f 100644
--- a/Mac/Modules/osa/osascan.py
+++ b/Mac/Modules/osa/osascan.py
@@ -10,53 +10,53 @@
 SHORT = "osa"
 
 def main():
-	input = "OSA.h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	scanner.gentypetest(SHORT+"typetest.py")
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "OSA.h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    scanner.gentypetest(SHORT+"typetest.py")
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t == "ComponentInstance" and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t == "ComponentInstance" and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("from Carbon.AppleEvents import *\n")
-		self.defsfile.write("kAEUseStandardDispatch = -1\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("from Carbon.AppleEvents import *\n")
+        self.defsfile.write("kAEUseStandardDispatch = -1\n")
 
-	def makeblacklistnames(self):
-		return [
-			"OSACopyScript",
-			]
+    def makeblacklistnames(self):
+        return [
+                "OSACopyScript",
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"OSALocalOrGlobal",
-			"OSACreateAppleEventUPP",
-			"OSAActiveUPP",
-			"AEEventHandlerUPP",
-			"OSASendUPP",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "OSALocalOrGlobal",
+                "OSACreateAppleEventUPP",
+                "OSAActiveUPP",
+                "AEEventHandlerUPP",
+                "OSASendUPP",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/osa/osasupport.py b/Mac/Modules/osa/osasupport.py
index b0e7f4c..8369932 100644
--- a/Mac/Modules/osa/osasupport.py
+++ b/Mac/Modules/osa/osasupport.py
@@ -6,14 +6,14 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'OSA.h'		# The Apple header file
-MODNAME = '_OSA'				# The name of the module
+MACHEADERFILE = 'OSA.h'         # The Apple header file
+MODNAME = '_OSA'                                # The name of the module
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'OSA'			# The prefix for module-wide routines
-OBJECTPREFIX = 'OSAObj'	# The prefix for object methods
+MODPREFIX = 'OSA'                       # The prefix for module-wide routines
+OBJECTPREFIX = 'OSAObj' # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -36,8 +36,8 @@
 
 initstuff = initstuff + """
 /*
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(ComponentInstance, OSAObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(ComponentInstance, OSAObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(ComponentInstance, OSAObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(ComponentInstance, OSAObj_Convert);
 */
 """
 
@@ -63,24 +63,24 @@
 # NOTE: at the moment OSA.ComponentInstance is not a subclass
 # of Cm.ComponentInstance. If this is a problem it can be fixed.
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					PyErr_SetString(OSA_Error,"NULL ComponentInstance");
-					return NULL;
-				}""")
-				
-	def outputCheckConvertArg(self):
-		Output("""
-			if (CmpInstObj_Convert(v, p_itself))
-				return 1;
-			PyErr_Clear();
-			""")
-					
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(OSA_Error,"NULL ComponentInstance");
+                                return NULL;
+                        }""")
+
+    def outputCheckConvertArg(self):
+        Output("""
+                if (CmpInstObj_Convert(v, p_itself))
+                        return 1;
+                PyErr_Clear();
+                """)
+
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff)
 object = MyObjectDefinition('OSAComponentInstance', OBJECTPREFIX,
-		'ComponentInstance')
+                'ComponentInstance')
 module.addobject(object)
 
 # Create the generator classes used to populate the lists
@@ -103,4 +103,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/osa/setup.py b/Mac/Modules/osa/setup.py
index 82e7742..635114e 100644
--- a/Mac/Modules/osa/setup.py
+++ b/Mac/Modules/osa/setup.py
@@ -4,10 +4,10 @@
 from distutils.core import Extension, setup
 
 setup(name="OSA", version="0.1",
-	ext_modules=[
-		Extension('_OSA', ['_OSAmodule.c'],
-		extra_link_args=['-framework', 'Carbon'])
-	],
-	py_modules=['OSA.OSA', 'OSA.OSAconst'],
-	package_dir={'OSA':'../../../Lib/plat-mac/Carbon'}
-	)
+        ext_modules=[
+                Extension('_OSA', ['_OSAmodule.c'],
+                extra_link_args=['-framework', 'Carbon'])
+        ],
+        py_modules=['OSA.OSA', 'OSA.OSAconst'],
+        package_dir={'OSA':'../../../Lib/plat-mac/Carbon'}
+        )
diff --git a/Mac/Modules/qd/qdedit.py b/Mac/Modules/qd/qdedit.py
index d9e4a15..83d81ed 100644
--- a/Mac/Modules/qd/qdedit.py
+++ b/Mac/Modules/qd/qdedit.py
@@ -1,5 +1,5 @@
 f = Function(void, 'SetPort',
-	(GrafPtr, 'thePort', InMode),
+        (GrafPtr, 'thePort', InMode),
 )
 functions.append(f)
 
@@ -156,4 +156,3 @@
     (short, 'byteCount', InMode),
 )
 functions.append(f)
-
diff --git a/Mac/Modules/qd/qdscan.py b/Mac/Modules/qd/qdscan.py
index f58bb22..85a8cdc 100644
--- a/Mac/Modules/qd/qdscan.py
+++ b/Mac/Modules/qd/qdscan.py
@@ -8,228 +8,228 @@
 from scantools import Scanner
 
 def main():
-	input = "QuickDraw.h"
-	output = "qdgen.py"
-	defsoutput = TOOLBOXDIR + "QuickDraw.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	
-	# Grmpf. Universal Headers have Text-stuff in a different include file...
-	input = "QuickDrawText.h"
-	output = "@qdgentext.py"
-	defsoutput = "@QuickDrawText.py"
-	have_extra = 0
-	try:
-		scanner = MyScanner(input, output, defsoutput)
-		scanner.scan()
-		scanner.close()
-		have_extra = 1
-	except IOError:
-		pass
-	if have_extra:
-		print "=== Copying QuickDrawText stuff into main files... ==="
-		ifp = open("@qdgentext.py")
-		ofp = open("qdgen.py", "a")
-		ofp.write(ifp.read())
-		ifp.close()
-		ofp.close()
-		ifp = open("@QuickDrawText.py")
-		ofp = open(TOOLBOXDIR + "QuickDraw.py", "a")
-		ofp.write(ifp.read())
-		ifp.close()
-		ofp.close()
-		
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	import qdsupport
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "QuickDraw.h"
+    output = "qdgen.py"
+    defsoutput = TOOLBOXDIR + "QuickDraw.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+
+    # Grmpf. Universal Headers have Text-stuff in a different include file...
+    input = "QuickDrawText.h"
+    output = "@qdgentext.py"
+    defsoutput = "@QuickDrawText.py"
+    have_extra = 0
+    try:
+        scanner = MyScanner(input, output, defsoutput)
+        scanner.scan()
+        scanner.close()
+        have_extra = 1
+    except IOError:
+        pass
+    if have_extra:
+        print "=== Copying QuickDrawText stuff into main files... ==="
+        ifp = open("@qdgentext.py")
+        ofp = open("qdgen.py", "a")
+        ofp.write(ifp.read())
+        ifp.close()
+        ofp.close()
+        ifp = open("@QuickDrawText.py")
+        ofp = open(TOOLBOXDIR + "QuickDraw.py", "a")
+        ofp.write(ifp.read())
+        ifp.close()
+        ofp.close()
+
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    import qdsupport
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in ('GrafPtr', 'CGrafPtr') and m == 'InMode':
-				classname = "Method"
-				listname = "gr_methods"
-			elif t == 'BitMapPtr' and m == 'InMode':
-				classname = "Method"
-				listname = "bm_methods"
-##			elif t == "PolyHandle" and m == "InMode":
-##				classname = "Method"
-##				listname = "p_methods"
-##			elif t == "RgnHandle" and m == "InMode":
-##				classname = "Method"
-##				listname = "r_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in ('GrafPtr', 'CGrafPtr') and m == 'InMode':
+                classname = "Method"
+                listname = "gr_methods"
+            elif t == 'BitMapPtr' and m == 'InMode':
+                classname = "Method"
+                listname = "bm_methods"
+##                      elif t == "PolyHandle" and m == "InMode":
+##                              classname = "Method"
+##                              listname = "p_methods"
+##                      elif t == "RgnHandle" and m == "InMode":
+##                              classname = "Method"
+##                              listname = "r_methods"
+        return classname, listname
 
 
-	def writeinitialdefs(self):
-		self.defsfile.write("""
+    def writeinitialdefs(self):
+        self.defsfile.write("""
 def FOUR_CHAR_CODE(x): return x
-normal						= 0
-bold						= 1
-italic						= 2
-underline					= 4
-outline						= 8
-shadow						= 0x10
-condense					= 0x20
-extend						= 0x40
+normal                                          = 0
+bold                                            = 1
+italic                                          = 2
+underline                                       = 4
+outline                                         = 8
+shadow                                          = 0x10
+condense                                        = 0x20
+extend                                          = 0x40
 """)
 
-	def makeblacklistnames(self):
-		return [
-			'InitGraf',
-			'StuffHex',
-			'StdLine',
-			'StdComment',
-			'StdGetPic',
-			'OpenPort',
-			'InitPort',
-			'ClosePort',
-			'OpenCPort',
-			'InitCPort',
-			'CloseCPort',
-			'BitMapToRegionGlue',
-			'StdOpcode', 	# XXXX Missing from library...
-			# The following are for non-macos use:
-			'LockPortBits',
-			'UnlockPortBits',
-			'UpdatePort',
-			'GetPortNativeWindow',
-			'GetNativeWindowPort',
-			'NativeRegionToMacRegion',
-			'MacRegionToNativeRegion',
-			'GetPortHWND',
-			'GetHWNDPort',
-			'GetPICTFromDIB',
-			
-			'HandleToRgn', # Funny signature
+    def makeblacklistnames(self):
+        return [
+                'InitGraf',
+                'StuffHex',
+                'StdLine',
+                'StdComment',
+                'StdGetPic',
+                'OpenPort',
+                'InitPort',
+                'ClosePort',
+                'OpenCPort',
+                'InitCPort',
+                'CloseCPort',
+                'BitMapToRegionGlue',
+                'StdOpcode',    # XXXX Missing from library...
+                # The following are for non-macos use:
+                'LockPortBits',
+                'UnlockPortBits',
+                'UpdatePort',
+                'GetPortNativeWindow',
+                'GetNativeWindowPort',
+                'NativeRegionToMacRegion',
+                'MacRegionToNativeRegion',
+                'GetPortHWND',
+                'GetHWNDPort',
+                'GetPICTFromDIB',
 
-			# Need Cm, which we don't want to drag in just yet
-			'OpenCursorComponent',
-			'CloseCursorComponent',
-			'SetCursorComponent',
-			'CursorComponentChanged',
-			'CursorComponentSetData',
-			]
+                'HandleToRgn', # Funny signature
 
-	def makeblacklisttypes(self):
-		return [
-			"QDRegionBitsRef", # Should do this, but too lazy now.
-			'CIconHandle', # Obsolete
-			'CQDProcs',
-			'CQDProcsPtr',
-			'CSpecArray',
-			'ColorComplementProcPtr',
-			'ColorComplementUPP',
-			'ColorSearchProcPtr',
-			'ColorSearchUPP',
-			'ConstPatternParam',
-			'DeviceLoopDrawingProcPtr',
-			'DeviceLoopFlags',
-			'GrafVerb',
-			'OpenCPicParams_ptr',
-			'Ptr',
-			'QDProcs',
-			'ReqListRec',
-			'void_ptr',
-			'CustomXFerProcPtr',
-			]
+                # Need Cm, which we don't want to drag in just yet
+                'OpenCursorComponent',
+                'CloseCursorComponent',
+                'SetCursorComponent',
+                'CursorComponentChanged',
+                'CursorComponentSetData',
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([('void_ptr', 'textBuf', 'InMode'),
-			  ('short', 'firstByte', 'InMode'),
-			  ('short', 'byteCount', 'InMode')],
-			 [('TextThingie', '*', '*'), ('*', '*', '*'), ('*', '*', '*')]),
-			
-			# GetPen and SetPt use a point-pointer as output-only:
-			('GetPen', [('Point', '*', 'OutMode')], [('*', '*', 'OutMode')]),
-			('SetPt', [('Point', '*', 'OutMode')], [('*', '*', 'OutMode')]),
-			
-			# All others use it as input/output:
-			([('Point', '*', 'OutMode')],
-			 [('*', '*', 'InOutMode')]),
-			 
-			 # InsetRect, OffsetRect
-			 ([('Rect', 'r', 'OutMode'),
-			 	('short', 'dh', 'InMode'),
-			 	('short', 'dv', 'InMode')],
-			  [('Rect', 'r', 'InOutMode'),
-			 	('short', 'dh', 'InMode'),
-			 	('short', 'dv', 'InMode')]),
+    def makeblacklisttypes(self):
+        return [
+                "QDRegionBitsRef", # Should do this, but too lazy now.
+                'CIconHandle', # Obsolete
+                'CQDProcs',
+                'CQDProcsPtr',
+                'CSpecArray',
+                'ColorComplementProcPtr',
+                'ColorComplementUPP',
+                'ColorSearchProcPtr',
+                'ColorSearchUPP',
+                'ConstPatternParam',
+                'DeviceLoopDrawingProcPtr',
+                'DeviceLoopFlags',
+                'GrafVerb',
+                'OpenCPicParams_ptr',
+                'Ptr',
+                'QDProcs',
+                'ReqListRec',
+                'void_ptr',
+                'CustomXFerProcPtr',
+                ]
 
-			 # MapRect
-			 ([('Rect', 'r', 'OutMode'),
-			 	('Rect_ptr', 'srcRect', 'InMode'),
-			 	('Rect_ptr', 'dstRect', 'InMode')],
-			  [('Rect', 'r', 'InOutMode'),
-			 	('Rect_ptr', 'srcRect', 'InMode'),
-			 	('Rect_ptr', 'dstRect', 'InMode')]),
-			 	
-			 # CopyBits and friends
-			 ([('RgnHandle', 'maskRgn', 'InMode')],
-			  [('OptRgnHandle', 'maskRgn', 'InMode')]),
-			  
-			 ('QDFlushPortBuffer',
-			  [('RgnHandle', '*', 'InMode')],
-			  [('OptRgnHandle', '*', 'InMode')]),
-			  
-			 # Accessors with reference argument also returned.
-			 ([('Rect_ptr', 'GetPortBounds', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('RGBColor_ptr', 'GetPortForeColor', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('RGBColor_ptr', 'GetPortBackColor', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('RGBColor_ptr', 'GetPortOpColor', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('RGBColor_ptr', 'GetPortHiliteColor', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Point_ptr', 'GetPortPenSize', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Point_ptr', 'GetPortPenLocation', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Rect_ptr', 'GetPixBounds', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('BitMap_ptr', 'GetQDGlobalsScreenBits', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Cursor_ptr', 'GetQDGlobalsArrow', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Rect_ptr', 'GetRegionBounds', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Pattern_ptr', '*', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Point_ptr', 'QDLocalToGlobalPoint', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Rect_ptr', 'QDLocalToGlobalRect', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Point_ptr', 'QDGlobalToLocalPoint', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			 ([('Rect_ptr', 'QDGlobalToLocalRect', 'ReturnMode')],
-			  [('void', '*', 'ReturnMode')]),
-			
-			]
+    def makerepairinstructions(self):
+        return [
+                ([('void_ptr', 'textBuf', 'InMode'),
+                  ('short', 'firstByte', 'InMode'),
+                  ('short', 'byteCount', 'InMode')],
+                 [('TextThingie', '*', '*'), ('*', '*', '*'), ('*', '*', '*')]),
+
+                # GetPen and SetPt use a point-pointer as output-only:
+                ('GetPen', [('Point', '*', 'OutMode')], [('*', '*', 'OutMode')]),
+                ('SetPt', [('Point', '*', 'OutMode')], [('*', '*', 'OutMode')]),
+
+                # All others use it as input/output:
+                ([('Point', '*', 'OutMode')],
+                 [('*', '*', 'InOutMode')]),
+
+                 # InsetRect, OffsetRect
+                 ([('Rect', 'r', 'OutMode'),
+                        ('short', 'dh', 'InMode'),
+                        ('short', 'dv', 'InMode')],
+                  [('Rect', 'r', 'InOutMode'),
+                        ('short', 'dh', 'InMode'),
+                        ('short', 'dv', 'InMode')]),
+
+                 # MapRect
+                 ([('Rect', 'r', 'OutMode'),
+                        ('Rect_ptr', 'srcRect', 'InMode'),
+                        ('Rect_ptr', 'dstRect', 'InMode')],
+                  [('Rect', 'r', 'InOutMode'),
+                        ('Rect_ptr', 'srcRect', 'InMode'),
+                        ('Rect_ptr', 'dstRect', 'InMode')]),
+
+                 # CopyBits and friends
+                 ([('RgnHandle', 'maskRgn', 'InMode')],
+                  [('OptRgnHandle', 'maskRgn', 'InMode')]),
+
+                 ('QDFlushPortBuffer',
+                  [('RgnHandle', '*', 'InMode')],
+                  [('OptRgnHandle', '*', 'InMode')]),
+
+                 # Accessors with reference argument also returned.
+                 ([('Rect_ptr', 'GetPortBounds', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('RGBColor_ptr', 'GetPortForeColor', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('RGBColor_ptr', 'GetPortBackColor', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('RGBColor_ptr', 'GetPortOpColor', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('RGBColor_ptr', 'GetPortHiliteColor', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Point_ptr', 'GetPortPenSize', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Point_ptr', 'GetPortPenLocation', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Rect_ptr', 'GetPixBounds', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('BitMap_ptr', 'GetQDGlobalsScreenBits', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Cursor_ptr', 'GetQDGlobalsArrow', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Rect_ptr', 'GetRegionBounds', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Pattern_ptr', '*', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Point_ptr', 'QDLocalToGlobalPoint', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Rect_ptr', 'QDLocalToGlobalRect', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Point_ptr', 'QDGlobalToLocalPoint', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                 ([('Rect_ptr', 'QDGlobalToLocalRect', 'ReturnMode')],
+                  [('void', '*', 'ReturnMode')]),
+
+                ]
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/qd/qdsupport.py b/Mac/Modules/qd/qdsupport.py
index e361c01..d078ac6 100644
--- a/Mac/Modules/qd/qdsupport.py
+++ b/Mac/Modules/qd/qdsupport.py
@@ -6,29 +6,29 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'QuickDraw.h'		# The Apple header file
-MODNAME = '_Qd'				# The name of the module
-OBJECTNAME = 'Graf'			# The basic name of the objects used here
+MACHEADERFILE = 'QuickDraw.h'           # The Apple header file
+MODNAME = '_Qd'                         # The name of the module
+OBJECTNAME = 'Graf'                     # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Qd'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + 'Ptr'		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Qd'                        # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + 'Ptr'         # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
 EXTRAFILE = string.lower(MODPREFIX) + 'edit.py' # A similar file but hand-made
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
 # Create the type objects
 
 class TextThingieClass(FixedInputBufferType):
-	def getargsCheck(self, name):
-		Output("/* Fool compiler warnings */")
-		Output("%s__in_len__ = %s__in_len__;", name, name)
+    def getargsCheck(self, name):
+        Output("/* Fool compiler warnings */")
+        Output("%s__in_len__ = %s__in_len__;", name, name)
 
-	def declareSize(self, name):
-		Output("int %s__in_len__;", name)
+    def declareSize(self, name):
+        Output("int %s__in_len__;", name)
 
 TextThingie = TextThingieClass(None)
 
@@ -92,19 +92,19 @@
 PyObject *QdRGB_New(RGBColorPtr itself)
 {
 
-	return Py_BuildValue("lll", (long)itself->red, (long)itself->green, (long)itself->blue);
+        return Py_BuildValue("lll", (long)itself->red, (long)itself->green, (long)itself->blue);
 }
 
 int QdRGB_Convert(PyObject *v, RGBColorPtr p_itself)
 {
-	long red, green, blue;
-	
-	if( !PyArg_ParseTuple(v, "lll", &red, &green, &blue) )
-		return 0;
-	p_itself->red = (unsigned short)red;
-	p_itself->green = (unsigned short)green;
-	p_itself->blue = (unsigned short)blue;
-	return 1;
+        long red, green, blue;
+
+        if( !PyArg_ParseTuple(v, "lll", &red, &green, &blue) )
+                return 0;
+        p_itself->red = (unsigned short)red;
+        p_itself->green = (unsigned short)green;
+        p_itself->blue = (unsigned short)blue;
+        return 1;
 }
 
 /*
@@ -114,8 +114,8 @@
 PyObject *QdFI_New(FontInfo *itself)
 {
 
-	return Py_BuildValue("hhhh", itself->ascent, itself->descent,
-			itself->widMax, itself->leading);
+        return Py_BuildValue("hhhh", itself->ascent, itself->descent,
+                        itself->widMax, itself->leading);
 }
 """
 
@@ -125,15 +125,15 @@
 */
 PyObject *BMObj_NewCopied(BitMapPtr itself)
 {
-	BitMapObject *it;
-	BitMapPtr itself_copy;
-	
-	if ((itself_copy=(BitMapPtr)malloc(sizeof(BitMap))) == NULL)
-		return PyErr_NoMemory();
-	*itself_copy = *itself;
-	it = (BitMapObject *)BMObj_New(itself_copy);
-	it->referred_bitmap = itself_copy;
-	return (PyObject *)it;
+        BitMapObject *it;
+        BitMapPtr itself_copy;
+
+        if ((itself_copy=(BitMapPtr)malloc(sizeof(BitMap))) == NULL)
+                return PyErr_NoMemory();
+        *itself_copy = *itself;
+        it = (BitMapObject *)BMObj_New(itself_copy);
+        it->referred_bitmap = itself_copy;
+        return (PyObject *)it;
 }
 
 """
@@ -141,112 +141,112 @@
 variablestuff = ""
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(BitMapPtr, BMObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(BitMapPtr, BMObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(GrafPtr, GrafObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(GrafPtr, GrafObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(RGBColorPtr, QdRGB_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(RGBColor, QdRGB_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(BitMapPtr, BMObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(BitMapPtr, BMObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(GrafPtr, GrafObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(GrafPtr, GrafObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(RGBColorPtr, QdRGB_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(RGBColor, QdRGB_Convert);
 """
 
 ## not yet...
 ##
 ##class Region_ObjectDefinition(GlobalObjectDefinition):
-##	def outputCheckNewArg(self):
-##		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-##	def outputFreeIt(self, itselfname):
-##		Output("DisposeRegion(%s);", itselfname)
+##      def outputCheckNewArg(self):
+##              Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+##      def outputFreeIt(self, itselfname):
+##              Output("DisposeRegion(%s);", itselfname)
 ##
 ##class Polygon_ObjectDefinition(GlobalObjectDefinition):
-##	def outputCheckNewArg(self):
-##		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-##	def outputFreeIt(self, itselfname):
-##		Output("KillPoly(%s);", itselfname)
+##      def outputCheckNewArg(self):
+##              Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+##      def outputFreeIt(self, itselfname):
+##              Output("KillPoly(%s);", itselfname)
 
 class MyGRObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	getsetlist = [
-		('visRgn',
-		"""RgnHandle h=NewRgn(); /* XXXX wrong dispose routine */
-		return Py_BuildValue("O&", ResObj_New, (Handle)GetPortVisibleRegion(self->ob_itself, h));
-		""",
-		None,
-		"Convenience attribute: return a copy of the visible region"
-		), (
-		'clipRgn',
-		"""RgnHandle h=NewRgn(); /* XXXX wrong dispose routine */
-		return Py_BuildValue("O&", ResObj_New, (Handle)GetPortClipRegion(self->ob_itself, h));
-		""",
-		None,
-		"Convenience attribute: return a copy of the clipping region"
-		)]
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-	def outputCheckConvertArg(self):
-		Output("#if 1")
-		OutLbrace()
-		Output("WindowRef win;")
-		OutLbrace("if (WinObj_Convert(v, &win) && v)")
-		Output("*p_itself = (GrafPtr)GetWindowPort(win);")
-		Output("return 1;")
-		OutRbrace()
-		Output("PyErr_Clear();")
-		OutRbrace()
-		Output("#else")
-		OutLbrace("if (DlgObj_Check(v))")
-		Output("DialogRef dlg = (DialogRef)((GrafPortObject *)v)->ob_itself;")
-		Output("*p_itself = (GrafPtr)GetWindowPort(GetDialogWindow(dlg));")
-		Output("return 1;")
-		OutRbrace()
-		OutLbrace("if (WinObj_Check(v))")
-		Output("WindowRef win = (WindowRef)((GrafPortObject *)v)->ob_itself;")
-		Output("*p_itself = (GrafPtr)GetWindowPort(win);")
-		Output("return 1;")
-		OutRbrace()
-		Output("#endif")
+    getsetlist = [
+            ('visRgn',
+            """RgnHandle h=NewRgn(); /* XXXX wrong dispose routine */
+            return Py_BuildValue("O&", ResObj_New, (Handle)GetPortVisibleRegion(self->ob_itself, h));
+            """,
+            None,
+            "Convenience attribute: return a copy of the visible region"
+            ), (
+            'clipRgn',
+            """RgnHandle h=NewRgn(); /* XXXX wrong dispose routine */
+            return Py_BuildValue("O&", ResObj_New, (Handle)GetPortClipRegion(self->ob_itself, h));
+            """,
+            None,
+            "Convenience attribute: return a copy of the clipping region"
+            )]
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputCheckConvertArg(self):
+        Output("#if 1")
+        OutLbrace()
+        Output("WindowRef win;")
+        OutLbrace("if (WinObj_Convert(v, &win) && v)")
+        Output("*p_itself = (GrafPtr)GetWindowPort(win);")
+        Output("return 1;")
+        OutRbrace()
+        Output("PyErr_Clear();")
+        OutRbrace()
+        Output("#else")
+        OutLbrace("if (DlgObj_Check(v))")
+        Output("DialogRef dlg = (DialogRef)((GrafPortObject *)v)->ob_itself;")
+        Output("*p_itself = (GrafPtr)GetWindowPort(GetDialogWindow(dlg));")
+        Output("return 1;")
+        OutRbrace()
+        OutLbrace("if (WinObj_Check(v))")
+        Output("WindowRef win = (WindowRef)((GrafPortObject *)v)->ob_itself;")
+        Output("*p_itself = (GrafPtr)GetWindowPort(win);")
+        Output("return 1;")
+        OutRbrace()
+        Output("#endif")
 
 class MyBMObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	getsetlist = [
-	(
-	'baseAddr',
-	'return PyInt_FromLong((long)self->ob_itself->baseAddr);',
-	None,
-	None
-	), (
-	'rowBytes',
-	'return PyInt_FromLong((long)self->ob_itself->rowBytes);',
-	None,
-	None
-	), (
-	'bounds',
-	'return Py_BuildValue("O&", PyMac_BuildRect, &self->ob_itself->bounds);',
-	None,
-	None
-	), (
-	'bitmap_data',
-	'return PyString_FromStringAndSize((char *)self->ob_itself, sizeof(BitMap));',
-	None,
-	None
-	), (
-	'pixmap_data',
-	'return PyString_FromStringAndSize((char *)self->ob_itself, sizeof(PixMap));',
-	None,
-	None
-	)]
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-	def outputStructMembers(self):
-		# We need to more items: a pointer to privately allocated data
-		# and a python object we're referring to.
-		Output("%s ob_itself;", self.itselftype)
-		Output("PyObject *referred_object;")
-		Output("BitMap *referred_bitmap;")
-	def outputInitStructMembers(self):
-		Output("it->ob_itself = %sitself;", self.argref)
-		Output("it->referred_object = NULL;")
-		Output("it->referred_bitmap = NULL;")
-	def outputCleanupStructMembers(self):
-		Output("Py_XDECREF(self->referred_object);")
-		Output("if (self->referred_bitmap) free(self->referred_bitmap);")		
+    getsetlist = [
+    (
+    'baseAddr',
+    'return PyInt_FromLong((long)self->ob_itself->baseAddr);',
+    None,
+    None
+    ), (
+    'rowBytes',
+    'return PyInt_FromLong((long)self->ob_itself->rowBytes);',
+    None,
+    None
+    ), (
+    'bounds',
+    'return Py_BuildValue("O&", PyMac_BuildRect, &self->ob_itself->bounds);',
+    None,
+    None
+    ), (
+    'bitmap_data',
+    'return PyString_FromStringAndSize((char *)self->ob_itself, sizeof(BitMap));',
+    None,
+    None
+    ), (
+    'pixmap_data',
+    'return PyString_FromStringAndSize((char *)self->ob_itself, sizeof(PixMap));',
+    None,
+    None
+    )]
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+    def outputStructMembers(self):
+        # We need to more items: a pointer to privately allocated data
+        # and a python object we're referring to.
+        Output("%s ob_itself;", self.itselftype)
+        Output("PyObject *referred_object;")
+        Output("BitMap *referred_bitmap;")
+    def outputInitStructMembers(self):
+        Output("it->ob_itself = %sitself;", self.argref)
+        Output("it->referred_object = NULL;")
+        Output("it->referred_bitmap = NULL;")
+    def outputCleanupStructMembers(self):
+        Output("Py_XDECREF(self->referred_object);")
+        Output("if (self->referred_bitmap) free(self->referred_bitmap);")
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff, variablestuff)
@@ -284,7 +284,7 @@
 char *cp;
 
 if ( !PyArg_ParseTuple(_args, "ii", &from, &length) )
-	return NULL;
+        return NULL;
 cp = _self->ob_itself->baseAddr+from;
 _res = PyString_FromStringAndSize(cp, length);
 return _res;
@@ -299,7 +299,7 @@
 char *cp, *icp;
 
 if ( !PyArg_ParseTuple(_args, "is#", &from, &icp, &length) )
-	return NULL;
+        return NULL;
 cp = _self->ob_itself->baseAddr+from;
 memcpy(cp, icp, length);
 Py_INCREF(Py_None);
@@ -321,24 +321,24 @@
 char *data;
 
 if ( !PyArg_ParseTuple(_args, "O!iO&", &PyString_Type, &source, &rowbytes, PyMac_GetRect,
-		&bounds) )
-	return NULL;
+                &bounds) )
+        return NULL;
 data = PyString_AsString(source);
 if ((ptr=(BitMap *)malloc(sizeof(BitMap))) == NULL )
-	return PyErr_NoMemory();
+        return PyErr_NoMemory();
 ptr->baseAddr = (Ptr)data;
 ptr->rowBytes = rowbytes;
 ptr->bounds = bounds;
 if ( (_res = BMObj_New(ptr)) == NULL ) {
-	free(ptr);
-	return NULL;
+        free(ptr);
+        return NULL;
 }
 ((BitMapObject *)_res)->referred_object = source;
 Py_INCREF(source);
 ((BitMapObject *)_res)->referred_bitmap = ptr;
 return _res;
 """
-	
+
 f = ManualGenerator("BitMap", BitMap_body)
 f.docstring = lambda: """Take (string, int, Rect) argument and create BitMap"""
 module.add(f)
@@ -351,22 +351,22 @@
 PyObject *source;
 
 if ( !PyArg_ParseTuple(_args, "O!", &PyString_Type, &source) )
-	return NULL;
+        return NULL;
 if ( PyString_Size(source) != sizeof(BitMap) && PyString_Size(source) != sizeof(PixMap) ) {
-	PyErr_Format(PyExc_TypeError, 
-		"Argument size was %d, should be %d (sizeof BitMap) or %d (sizeof PixMap)", 
-		PyString_Size(source), sizeof(BitMap), sizeof(PixMap));
-	return NULL;
+        PyErr_Format(PyExc_TypeError,
+                "Argument size was %d, should be %d (sizeof BitMap) or %d (sizeof PixMap)",
+                PyString_Size(source), sizeof(BitMap), sizeof(PixMap));
+        return NULL;
 }
 ptr = (BitMapPtr)PyString_AsString(source);
 if ( (_res = BMObj_New(ptr)) == NULL ) {
-	return NULL;
+        return NULL;
 }
 ((BitMapObject *)_res)->referred_object = source;
 Py_INCREF(source);
 return _res;
 """
-	
+
 f = ManualGenerator("RawBitMap", RawBitMap_body)
 f.docstring = lambda: """Take string BitMap and turn into BitMap object"""
 module.add(f)
diff --git a/Mac/Modules/qdoffs/qdoffsscan.py b/Mac/Modules/qdoffs/qdoffsscan.py
index ae70707..d456e00 100644
--- a/Mac/Modules/qdoffs/qdoffsscan.py
+++ b/Mac/Modules/qdoffs/qdoffsscan.py
@@ -7,61 +7,60 @@
 from scantools import Scanner
 
 def main():
-	input = "QDOffscreen.h"
-	output = "qdoffsgen.py"
-	defsoutput = TOOLBOXDIR + "QDOffscreen.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	import qdoffssupport
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "QDOffscreen.h"
+    output = "qdoffsgen.py"
+    defsoutput = TOOLBOXDIR + "QDOffscreen.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    import qdoffssupport
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t == "GWorldPtr" and m in ("InMode", "InOutMode"):
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t == "GWorldPtr" and m in ("InMode", "InOutMode"):
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			'DisposeGWorld', # Implied when the object is deleted
-			'NewGWorldFromHBITMAP', # Don't know what the args do
-			'GetGDeviceAttributes', # Windows-only
-			]
+    def makeblacklistnames(self):
+        return [
+                'DisposeGWorld', # Implied when the object is deleted
+                'NewGWorldFromHBITMAP', # Don't know what the args do
+                'GetGDeviceAttributes', # Windows-only
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"void_ptr",		# GetGDeviceSurface, blacklisted for now
-			"Ptr",			# Again, for now (array is probably ok here)
-			]
+    def makeblacklisttypes(self):
+        return [
+                "void_ptr",             # GetGDeviceSurface, blacklisted for now
+                "Ptr",                  # Again, for now (array is probably ok here)
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			
-## 			("UpdateGWorld",
-## 			 [("GWorldPtr", "*", "OutMode")],
-## 			 [("*", "*", "InOutMode")]),
-			 
-			# This one is incorrect: we say that all input gdevices are
-			# optional, but some are not. Most are, however, so users passing
-			# None for non-optional gdevices will get a qd error, I guess, in
-			# stead of a python argument error.
-			([("GDHandle", "*", "InMode")],
-			 [("OptGDHandle", "*", "InMode")]),
-			]
+    def makerepairinstructions(self):
+        return [
+
+##                      ("UpdateGWorld",
+##                       [("GWorldPtr", "*", "OutMode")],
+##                       [("*", "*", "InOutMode")]),
+
+                # This one is incorrect: we say that all input gdevices are
+                # optional, but some are not. Most are, however, so users passing
+                # None for non-optional gdevices will get a qd error, I guess, in
+                # stead of a python argument error.
+                ([("GDHandle", "*", "InMode")],
+                 [("OptGDHandle", "*", "InMode")]),
+                ]
 
 if __name__ == "__main__":
-	main()
-
+    main()
diff --git a/Mac/Modules/qdoffs/qdoffssupport.py b/Mac/Modules/qdoffs/qdoffssupport.py
index 1bd8f5a..1617773 100644
--- a/Mac/Modules/qdoffs/qdoffssupport.py
+++ b/Mac/Modules/qdoffs/qdoffssupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'QDOffscreen.h'		# The Apple header file
-MODNAME = '_Qdoffs'				# The name of the module
-OBJECTNAME = 'GWorld'			# The basic name of the objects used here
+MACHEADERFILE = 'QDOffscreen.h'         # The Apple header file
+MODNAME = '_Qdoffs'                             # The name of the module
+OBJECTNAME = 'GWorld'                   # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Qdoffs'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + 'Ptr'		# The C type used to represent them
-OBJECTPREFIX = OBJECTNAME + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Qdoffs'                    # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + 'Ptr'         # The C type used to represent them
+OBJECTPREFIX = OBJECTNAME + 'Obj'       # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
 #EDITFILE = string.lower(MODPREFIX) + 'edit.py' # The manual definitions
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -49,28 +49,28 @@
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(GWorldPtr, GWorldObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(GWorldPtr, GWorldObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(GWorldPtr, GWorldObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(GWorldPtr, GWorldObj_Convert);
 """
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	# XXXX Should inherit from GrafPtr?
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-## 	def outputInitStructMembers(self):
-## 		GlobalObjectDefinition.outputInitStructMembers(self)
-## 		Output("SetWRefCon(itself, (long)it);")
-## 	def outputCheckConvertArg(self):
-## 		OutLbrace("if (DlgObj_Check(v))")
-## 		Output("*p_itself = ((WindowObject *)v)->ob_itself;")
-## 		Output("return 1;")
-## 		OutRbrace()
-## 		Out("""
-## 		if (v == Py_None) { *p_itself = NULL; return 1; }
-## 		if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
-## 		""")
-	def outputFreeIt(self, itselfname):
-		Output("DisposeGWorld(%s);", itselfname)
+    # XXXX Should inherit from GrafPtr?
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+##      def outputInitStructMembers(self):
+##              GlobalObjectDefinition.outputInitStructMembers(self)
+##              Output("SetWRefCon(itself, (long)it);")
+##      def outputCheckConvertArg(self):
+##              OutLbrace("if (DlgObj_Check(v))")
+##              Output("*p_itself = ((WindowObject *)v)->ob_itself;")
+##              Output("return 1;")
+##              OutRbrace()
+##              Out("""
+##              if (v == Py_None) { *p_itself = NULL; return 1; }
+##              if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
+##              """)
+    def outputFreeIt(self, itselfname):
+        Output("DisposeGWorld(%s);", itselfname)
 # From here on it's basically all boiler plate...
 
 # Create the generator groups and link them
@@ -100,7 +100,7 @@
 char *cp;
 
 if ( !PyArg_ParseTuple(_args, "O&ii", ResObj_Convert, &pm, &from, &length) )
-	return NULL;
+        return NULL;
 cp = GetPixBaseAddr(pm)+from;
 _res = PyString_FromStringAndSize(cp, length);
 return _res;
@@ -116,7 +116,7 @@
 char *cp, *icp;
 
 if ( !PyArg_ParseTuple(_args, "O&is#", ResObj_Convert, &pm, &from, &icp, &length) )
-	return NULL;
+        return NULL;
 cp = GetPixBaseAddr(pm)+from;
 memcpy(cp, icp, length);
 Py_INCREF(Py_None);
diff --git a/Mac/Modules/qt/qtscan.py b/Mac/Modules/qt/qtscan.py
index b756bfe..a2dba15 100644
--- a/Mac/Modules/qt/qtscan.py
+++ b/Mac/Modules/qt/qtscan.py
@@ -9,311 +9,311 @@
 LONG = "QuickTime"
 SHORT = "qt"
 HEADERFILES= (
-#	"Components.h"  -- In Carbon.Cm
-	"Movies.h", 
-	"ImageCompression.h", 
-	"QuickTimeComponents.h",
-#	"ImageCodec.h"  -- seems not too useful, and difficult.
-#	"IsochronousDataHandlers.h" -- Is this useful?
-	"MediaHandlers.h",
-#	"QTML.h", -- Windows only, needs separate module
-#	"QuickTimeStreaming.h", -- Difficult
-#	"QTStreamingComponents.h", -- Needs QTStreaming
-	"QuickTimeMusic.h",
-#	"QuickTimeVR.h", -- Not done yet
-#	"Sound.h", -- In Carbon.Snd
-	)
-OBJECTS = ("Movie", "Track", "Media", "UserData", "TimeBase", "MovieController", 
-	"IdleManager", "SGOutput")
+#       "Components.h"  -- In Carbon.Cm
+        "Movies.h",
+        "ImageCompression.h",
+        "QuickTimeComponents.h",
+#       "ImageCodec.h"  -- seems not too useful, and difficult.
+#       "IsochronousDataHandlers.h" -- Is this useful?
+        "MediaHandlers.h",
+#       "QTML.h", -- Windows only, needs separate module
+#       "QuickTimeStreaming.h", -- Difficult
+#       "QTStreamingComponents.h", -- Needs QTStreaming
+        "QuickTimeMusic.h",
+#       "QuickTimeVR.h", -- Not done yet
+#       "Sound.h", -- In Carbon.Snd
+        )
+OBJECTS = ("Movie", "Track", "Media", "UserData", "TimeBase", "MovieController",
+        "IdleManager", "SGOutput")
 
 def main():
-	input = HEADERFILES
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	scanner.gentypetest(SHORT+"typetest.py")
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = HEADERFILES
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    scanner.gentypetest(SHORT+"typetest.py")
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in OBJECTS and m == "InMode":
-				classname = "Method"
-				listname = t + "_methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in OBJECTS and m == "InMode":
+                classname = "Method"
+                listname = t + "_methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("xmlIdentifierUnrecognized = -1\n")
-		self.defsfile.write("kControllerMinimum = -0xf777\n")
-		self.defsfile.write("notImplementedMusicOSErr      = -2071\n")
-		self.defsfile.write("cantSendToSynthesizerOSErr    = -2072\n")
-		self.defsfile.write("cantReceiveFromSynthesizerOSErr = -2073\n")
-		self.defsfile.write("illegalVoiceAllocationOSErr   = -2074\n")
-		self.defsfile.write("illegalPartOSErr              = -2075\n")
-		self.defsfile.write("illegalChannelOSErr           = -2076\n")
-		self.defsfile.write("illegalKnobOSErr              = -2077\n")
-		self.defsfile.write("illegalKnobValueOSErr         = -2078\n")
-		self.defsfile.write("illegalInstrumentOSErr        = -2079\n")
-		self.defsfile.write("illegalControllerOSErr        = -2080\n")
-		self.defsfile.write("midiManagerAbsentOSErr        = -2081\n")
-		self.defsfile.write("synthesizerNotRespondingOSErr = -2082\n")
-		self.defsfile.write("synthesizerOSErr              = -2083\n")
-		self.defsfile.write("illegalNoteChannelOSErr       = -2084\n")
-		self.defsfile.write("noteChannelNotAllocatedOSErr  = -2085\n")
-		self.defsfile.write("tunePlayerFullOSErr           = -2086\n")
-		self.defsfile.write("tuneParseOSErr                = -2087\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("xmlIdentifierUnrecognized = -1\n")
+        self.defsfile.write("kControllerMinimum = -0xf777\n")
+        self.defsfile.write("notImplementedMusicOSErr      = -2071\n")
+        self.defsfile.write("cantSendToSynthesizerOSErr    = -2072\n")
+        self.defsfile.write("cantReceiveFromSynthesizerOSErr = -2073\n")
+        self.defsfile.write("illegalVoiceAllocationOSErr   = -2074\n")
+        self.defsfile.write("illegalPartOSErr              = -2075\n")
+        self.defsfile.write("illegalChannelOSErr           = -2076\n")
+        self.defsfile.write("illegalKnobOSErr              = -2077\n")
+        self.defsfile.write("illegalKnobValueOSErr         = -2078\n")
+        self.defsfile.write("illegalInstrumentOSErr        = -2079\n")
+        self.defsfile.write("illegalControllerOSErr        = -2080\n")
+        self.defsfile.write("midiManagerAbsentOSErr        = -2081\n")
+        self.defsfile.write("synthesizerNotRespondingOSErr = -2082\n")
+        self.defsfile.write("synthesizerOSErr              = -2083\n")
+        self.defsfile.write("illegalNoteChannelOSErr       = -2084\n")
+        self.defsfile.write("noteChannelNotAllocatedOSErr  = -2085\n")
+        self.defsfile.write("tunePlayerFullOSErr           = -2086\n")
+        self.defsfile.write("tuneParseOSErr                = -2087\n")
 
-	def makeblacklistnames(self):
-		return [
-			"xmlIdentifierUnrecognized", # const with incompatible definition
-			"DisposeMovie",		# Done on python-object disposal
-			"DisposeMovieTrack",	# ditto
-			"DisposeTrackMedia",	# ditto
-			"DisposeUserData",		# ditto
-#			"DisposeTimeBase",		# ditto
-			"DisposeMovieController", # ditto
+    def makeblacklistnames(self):
+        return [
+                "xmlIdentifierUnrecognized", # const with incompatible definition
+                "DisposeMovie",         # Done on python-object disposal
+                "DisposeMovieTrack",    # ditto
+                "DisposeTrackMedia",    # ditto
+                "DisposeUserData",              # ditto
+#                       "DisposeTimeBase",              # ditto
+                "DisposeMovieController", # ditto
 
-			# The following 4 use 'void *' in an uncontrolled way
-			# TBD when I've read the manual...
-			"GetUserDataItem",
-			"SetUserDataItem",
-			"SetTextSampleData",
-			"BeginFullScreen",
-			# bgen gets the argument in/out wrong..
-			"AddTextSample",
-			"AddTESample",
-			"AddHiliteSample",
-			"HiliteTextSample",
-			
-			"MakeTrackTimeTable", # Uses long * return?
-			"MakeMediaTimeTable", # ditto
-##			"VideoMediaGetStallCount", # Undefined in CW Pro 3 library
-			# OS8 only:
-			'SpriteMediaGetIndImageProperty',	# XXXX Why isn't this in carbon?
-			'CheckQuickTimeRegistration',
-			'SetMovieAnchorDataRef',
-			'GetMovieAnchorDataRef',
-			'GetMovieLoadState',
-			'OpenADataHandler',
-			'MovieMediaGetCurrentMovieProperty',
-			'MovieMediaGetCurrentTrackProperty',
-			'MovieMediaGetChildMovieDataReference',
-			'MovieMediaSetChildMovieDataReference',
-			'MovieMediaLoadChildMovieFromDataReference',
-			'Media3DGetViewObject',
+                # The following 4 use 'void *' in an uncontrolled way
+                # TBD when I've read the manual...
+                "GetUserDataItem",
+                "SetUserDataItem",
+                "SetTextSampleData",
+                "BeginFullScreen",
+                # bgen gets the argument in/out wrong..
+                "AddTextSample",
+                "AddTESample",
+                "AddHiliteSample",
+                "HiliteTextSample",
 
-            # these are ImageCompression blacklists
-			"GraphicsExportGetInputPtr",
-			
-			# QuickTimeComponents
-			# These two need some help: the first returns a point to a databuffer that
-			# the second disposes. Generate manually?
-			"VDCompressDone",
-			"VDReleaseCompressBuffer",
-			"QTVideoOutputGetGWorldParameters", # How useful is this?
-			
-			# MediaHandlers
-			"MediaMakeMediaTimeTable", # just lazy
-			"MediaGetSampleDataPointer", # funny output pointer
-			
-			# QuickTimeMusic
-			"kControllerMinimum",
-			# These are artefacts of a macro definition
-			"ulen",
-			"_ext",
-			"x",
-			"w1",
-			"w2",
-			]
+                "MakeTrackTimeTable", # Uses long * return?
+                "MakeMediaTimeTable", # ditto
+##                      "VideoMediaGetStallCount", # Undefined in CW Pro 3 library
+                # OS8 only:
+                'SpriteMediaGetIndImageProperty',       # XXXX Why isn't this in carbon?
+                'CheckQuickTimeRegistration',
+                'SetMovieAnchorDataRef',
+                'GetMovieAnchorDataRef',
+                'GetMovieLoadState',
+                'OpenADataHandler',
+                'MovieMediaGetCurrentMovieProperty',
+                'MovieMediaGetCurrentTrackProperty',
+                'MovieMediaGetChildMovieDataReference',
+                'MovieMediaSetChildMovieDataReference',
+                'MovieMediaLoadChildMovieFromDataReference',
+                'Media3DGetViewObject',
 
-	def makeblacklisttypes(self):
-		return [
-			# I don't think we want to do these
-			"QTSyncTaskPtr",
-			# We dont do callbacks yet, so no need for these
-			"QTCallBack",
-			# Skipped for now, due to laziness
-			"TrackEditState",
-			"MovieEditState",
-			"MatrixRecord",
-			"MatrixRecord_ptr",
-			"SampleReferencePtr",
-			"QTTweener",
-			"QTErrorReplacementPtr",
-			"QTRestrictionSet",
-			"QTUUID",
-			"QTUUID_ptr",
+    # these are ImageCompression blacklists
+                "GraphicsExportGetInputPtr",
 
-			# Routine pointers, not yet.
-			"MoviesErrorUPP",
-			"MoviePreviewCallOutUPP",
-			"MovieDrawingCompleteUPP",
-			"QTCallBackUPP",
-			"TextMediaUPP",
-			"MovieProgressUPP",
-			"MovieRgnCoverUPP",
-			"MCActionFilterUPP",
-			"MCActionFilterWithRefConUPP",
-			"GetMovieUPP",
-			"ModalFilterUPP",
-			"TrackTransferUPP",
-			"MoviePrePrerollCompleteUPP",
-			"MovieExecuteWiredActionsUPP",
-			"QTBandwidthNotificationUPP",
-			"DoMCActionUPP",
-			"QTNextTaskNeededSoonerCallbackUPP",
-			
-			"SampleReference64Ptr",	# Don't know what this does, yet
-			"QTRuntimeSpriteDescPtr",
-			"QTBandwidthReference",
-			"QTScheduledBandwidthReference",
-			"QTAtomContainer",
-			"SpriteWorld",
-			"Sprite",
+                # QuickTimeComponents
+                # These two need some help: the first returns a point to a databuffer that
+                # the second disposes. Generate manually?
+                "VDCompressDone",
+                "VDReleaseCompressBuffer",
+                "QTVideoOutputGetGWorldParameters", # How useful is this?
 
-            # these are ImageCompression blacklists
-            "ICMDataUPP",
-            "ICMFlushUPP",
-            "ICMCompletionUPP",
-            "ICMProgressUPP",
-            "StdPixUPP",
-            "QDPixUPP",
-            "ICMAlignmentUPP",
-            "ICMCursorShieldedUPP",
-            "ICMMemoryDisposedUPP",
-            "ICMConvertDataFormatUPP",
-            "ModalFilterYDUPP",
-			"FileFilterUPP",
+                # MediaHandlers
+                "MediaMakeMediaTimeTable", # just lazy
+                "MediaGetSampleDataPointer", # funny output pointer
 
-            "CodecNameSpecListPtr",
-            "CodecInfo",
-             "ImageSequence",
-            "MatrixRecordPtr",
-            "ICMDataProcRecordPtr",
-            "OpenCPicParams",
-            "ICMProgressProcRecordPtr",
-            "ICMAlignmentProcRecordPtr",
-            "ICMPixelFormatInfoPtr",
-            "ImageSequenceDataSource",
-            "ConstStrFileNameParam",
-            "ImageTranscodeSequence",
-            "ImageFieldSequence",
-            "Fract",
-            "PixMapPtr",
-            "GWorldFlags",
-            "void_ptr",   # XXX Being lazy, this one is doable.
-            
-            # These are from QuickTimeComponents
-            "CDataHandlerUPP",
-            "CharDataHandlerUPP",
-            "CommentHandlerUPP",
-            "DataHCompletionUPP",
-            "'MovieExportGetDataUPP",
-            "MovieExportGetPropertyUPP",
-            "PreprocessInstructionHandlerUPP",
-            "SGModalFilterUPP",
-            "StartDocumentHandlerUPP",
-            "StartElementHandlerUPP",
-            "VdigIntUPP",
-            "SGDataUPP",
-            "EndDocumentHandlerUPP",
-            "EndElementHandlerUPP",
-            "VideoBottles", # Record full of UPPs
-            
-            "SCParams",
-            "ICMCompletionProcRecordPtr",
-            "DataHVolumeList",
-            "DigitizerInfo",
-            "SGCompressInfo",
-            "SeqGrabExtendedFrameInfoPtr",
-            "SeqGrabFrameInfoPtr",
-            "TCTextOptionsPtr",
-            "SGCompressInfo_ptr",
-            "SGDeviceList",
-            "TextDisplayData",
-            "TimeCodeDef",
-            "TimeCodeRecord",
-            "TweenRecord",
-            "VDGamRecPtr",
-            "ToneDescription", 	# XXXX Just lazy: this one is easy.
-            "XMLDoc",
-            "UInt64", 	# XXXX lazy
-            "UInt64_ptr", # XXXX lazy
-            
-            # From MediaHandlers
-            "ActionsUPP",
-            "PrePrerollCompleteUPP",
-            "CodecComponentHandle", # Difficult: handle containing list of components.
-            "GetMovieCompleteParams", # Immense struct
-            "LevelMeterInfoPtr", # Lazy. Also: can be an output parameter!!
-            "MediaEQSpectrumBandsRecordPtr", # ditto
-            
-            # From QuickTimeMusic
-            "MusicMIDISendUPP",
-            "MusicOfflineDataUPP",
-            "TuneCallBackUPP",
-            "TunePlayCallBackUPP",
-            "GCPart", # Struct with lots of fields
-            "GCPart_ptr",
-            "GenericKnobDescription", # Struct with lots of fields
-            "KnobDescription",  # Struct with lots of fields
-            "InstrumentAboutInfo", # Struct, not too difficult
-            "NoteChannel", # XXXX Lazy. Could be opaque, I think
-            "NoteRequest", # XXXX Lazy. Not-too-difficult struct
-            "SynthesizerConnections", # Struct with lots of fields
-            "SynthesizerDescription", # Struct with lots of fields
-            "TuneStatus", # Struct with lots of fields
-            
-			]
+                # QuickTimeMusic
+                "kControllerMinimum",
+                # These are artefacts of a macro definition
+                "ulen",
+                "_ext",
+                "x",
+                "w1",
+                "w2",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([('FSSpec', '*', 'OutMode')], [('FSSpec_ptr', '*', 'InMode')]),
-			
-			# Movie controller creation
-			([('ComponentInstance', 'NewMovieController', 'ReturnMode')],
-			 [('MovieController', '*', 'ReturnMode')]),
-			 
-			# NewMovieFromFile
-			([('short', 'resId', 'OutMode'), ('StringPtr', 'resName', 'InMode')],
-			 [('short', 'resId', 'InOutMode'), ('dummyStringPtr', 'resName', 'InMode')]),
-			 
-			# MCDoAction and more
-			([('void', '*', 'OutMode')], [('mcactionparams', '*', 'InMode')]),
-			
-			# SetTimeBaseZero. Does not handle NULLs, unfortunately
-			([('TimeRecord', 'zero', 'OutMode')], [('TimeRecord', 'zero', 'InMode')]),
-			
-			# ConvertTime and ConvertTimeScale
-			([('TimeRecord', 'inout', 'OutMode')], [('TimeRecord', 'inout', 'InOutMode')]),
-			([('TimeRecord', 'theTime', 'OutMode')], [('TimeRecord', 'theTime', 'InOutMode')]),
-			
-			# AddTime and SubtractTime
-			([('TimeRecord', 'dst', 'OutMode')], [('TimeRecord', 'dst', 'InOutMode')]),
-			
-			# Funny definitions
-			([('char_ptr', '*', 'InMode')], [('stringptr', '*', 'InMode')]),
-			([('FSSpecPtr', '*', 'InMode')], [('FSSpec_ptr', '*', 'InMode')]),
-			([('unsigned_char', 'swfVersion', 'OutMode')], [('UInt8', 'swfVersion', 'OutMode')]),
-			
-			# It seems MusicMIDIPacket if never flagged with const but always used
-			# for sending only. If that ever changes this needs to be fixed.
-			([('MusicMIDIPacket', '*', 'OutMode')], [('MusicMIDIPacket_ptr', '*', 'InMode')]),
-			
-			# QTMusic const-less input parameters
-			([('unsigned_long', 'header', 'OutMode')], [('UnsignedLongPtr', 'header', 'InMode')]),
-			]
-			
+    def makeblacklisttypes(self):
+        return [
+                # I don't think we want to do these
+                "QTSyncTaskPtr",
+                # We dont do callbacks yet, so no need for these
+                "QTCallBack",
+                # Skipped for now, due to laziness
+                "TrackEditState",
+                "MovieEditState",
+                "MatrixRecord",
+                "MatrixRecord_ptr",
+                "SampleReferencePtr",
+                "QTTweener",
+                "QTErrorReplacementPtr",
+                "QTRestrictionSet",
+                "QTUUID",
+                "QTUUID_ptr",
+
+                # Routine pointers, not yet.
+                "MoviesErrorUPP",
+                "MoviePreviewCallOutUPP",
+                "MovieDrawingCompleteUPP",
+                "QTCallBackUPP",
+                "TextMediaUPP",
+                "MovieProgressUPP",
+                "MovieRgnCoverUPP",
+                "MCActionFilterUPP",
+                "MCActionFilterWithRefConUPP",
+                "GetMovieUPP",
+                "ModalFilterUPP",
+                "TrackTransferUPP",
+                "MoviePrePrerollCompleteUPP",
+                "MovieExecuteWiredActionsUPP",
+                "QTBandwidthNotificationUPP",
+                "DoMCActionUPP",
+                "QTNextTaskNeededSoonerCallbackUPP",
+
+                "SampleReference64Ptr", # Don't know what this does, yet
+                "QTRuntimeSpriteDescPtr",
+                "QTBandwidthReference",
+                "QTScheduledBandwidthReference",
+                "QTAtomContainer",
+                "SpriteWorld",
+                "Sprite",
+
+    # these are ImageCompression blacklists
+    "ICMDataUPP",
+    "ICMFlushUPP",
+    "ICMCompletionUPP",
+    "ICMProgressUPP",
+    "StdPixUPP",
+    "QDPixUPP",
+    "ICMAlignmentUPP",
+    "ICMCursorShieldedUPP",
+    "ICMMemoryDisposedUPP",
+    "ICMConvertDataFormatUPP",
+    "ModalFilterYDUPP",
+                "FileFilterUPP",
+
+    "CodecNameSpecListPtr",
+    "CodecInfo",
+     "ImageSequence",
+    "MatrixRecordPtr",
+    "ICMDataProcRecordPtr",
+    "OpenCPicParams",
+    "ICMProgressProcRecordPtr",
+    "ICMAlignmentProcRecordPtr",
+    "ICMPixelFormatInfoPtr",
+    "ImageSequenceDataSource",
+    "ConstStrFileNameParam",
+    "ImageTranscodeSequence",
+    "ImageFieldSequence",
+    "Fract",
+    "PixMapPtr",
+    "GWorldFlags",
+    "void_ptr",   # XXX Being lazy, this one is doable.
+
+    # These are from QuickTimeComponents
+    "CDataHandlerUPP",
+    "CharDataHandlerUPP",
+    "CommentHandlerUPP",
+    "DataHCompletionUPP",
+    "'MovieExportGetDataUPP",
+    "MovieExportGetPropertyUPP",
+    "PreprocessInstructionHandlerUPP",
+    "SGModalFilterUPP",
+    "StartDocumentHandlerUPP",
+    "StartElementHandlerUPP",
+    "VdigIntUPP",
+    "SGDataUPP",
+    "EndDocumentHandlerUPP",
+    "EndElementHandlerUPP",
+    "VideoBottles", # Record full of UPPs
+
+    "SCParams",
+    "ICMCompletionProcRecordPtr",
+    "DataHVolumeList",
+    "DigitizerInfo",
+    "SGCompressInfo",
+    "SeqGrabExtendedFrameInfoPtr",
+    "SeqGrabFrameInfoPtr",
+    "TCTextOptionsPtr",
+    "SGCompressInfo_ptr",
+    "SGDeviceList",
+    "TextDisplayData",
+    "TimeCodeDef",
+    "TimeCodeRecord",
+    "TweenRecord",
+    "VDGamRecPtr",
+    "ToneDescription",  # XXXX Just lazy: this one is easy.
+    "XMLDoc",
+    "UInt64",   # XXXX lazy
+    "UInt64_ptr", # XXXX lazy
+
+    # From MediaHandlers
+    "ActionsUPP",
+    "PrePrerollCompleteUPP",
+    "CodecComponentHandle", # Difficult: handle containing list of components.
+    "GetMovieCompleteParams", # Immense struct
+    "LevelMeterInfoPtr", # Lazy. Also: can be an output parameter!!
+    "MediaEQSpectrumBandsRecordPtr", # ditto
+
+    # From QuickTimeMusic
+    "MusicMIDISendUPP",
+    "MusicOfflineDataUPP",
+    "TuneCallBackUPP",
+    "TunePlayCallBackUPP",
+    "GCPart", # Struct with lots of fields
+    "GCPart_ptr",
+    "GenericKnobDescription", # Struct with lots of fields
+    "KnobDescription",  # Struct with lots of fields
+    "InstrumentAboutInfo", # Struct, not too difficult
+    "NoteChannel", # XXXX Lazy. Could be opaque, I think
+    "NoteRequest", # XXXX Lazy. Not-too-difficult struct
+    "SynthesizerConnections", # Struct with lots of fields
+    "SynthesizerDescription", # Struct with lots of fields
+    "TuneStatus", # Struct with lots of fields
+
+                ]
+
+    def makerepairinstructions(self):
+        return [
+                ([('FSSpec', '*', 'OutMode')], [('FSSpec_ptr', '*', 'InMode')]),
+
+                # Movie controller creation
+                ([('ComponentInstance', 'NewMovieController', 'ReturnMode')],
+                 [('MovieController', '*', 'ReturnMode')]),
+
+                # NewMovieFromFile
+                ([('short', 'resId', 'OutMode'), ('StringPtr', 'resName', 'InMode')],
+                 [('short', 'resId', 'InOutMode'), ('dummyStringPtr', 'resName', 'InMode')]),
+
+                # MCDoAction and more
+                ([('void', '*', 'OutMode')], [('mcactionparams', '*', 'InMode')]),
+
+                # SetTimeBaseZero. Does not handle NULLs, unfortunately
+                ([('TimeRecord', 'zero', 'OutMode')], [('TimeRecord', 'zero', 'InMode')]),
+
+                # ConvertTime and ConvertTimeScale
+                ([('TimeRecord', 'inout', 'OutMode')], [('TimeRecord', 'inout', 'InOutMode')]),
+                ([('TimeRecord', 'theTime', 'OutMode')], [('TimeRecord', 'theTime', 'InOutMode')]),
+
+                # AddTime and SubtractTime
+                ([('TimeRecord', 'dst', 'OutMode')], [('TimeRecord', 'dst', 'InOutMode')]),
+
+                # Funny definitions
+                ([('char_ptr', '*', 'InMode')], [('stringptr', '*', 'InMode')]),
+                ([('FSSpecPtr', '*', 'InMode')], [('FSSpec_ptr', '*', 'InMode')]),
+                ([('unsigned_char', 'swfVersion', 'OutMode')], [('UInt8', 'swfVersion', 'OutMode')]),
+
+                # It seems MusicMIDIPacket if never flagged with const but always used
+                # for sending only. If that ever changes this needs to be fixed.
+                ([('MusicMIDIPacket', '*', 'OutMode')], [('MusicMIDIPacket_ptr', '*', 'InMode')]),
+
+                # QTMusic const-less input parameters
+                ([('unsigned_long', 'header', 'OutMode')], [('UnsignedLongPtr', 'header', 'InMode')]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/qt/qtsupport.py b/Mac/Modules/qt/qtsupport.py
index 20304c9..132c2b4 100644
--- a/Mac/Modules/qt/qtsupport.py
+++ b/Mac/Modules/qt/qtsupport.py
@@ -8,16 +8,16 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Movies.h'		# The Apple header file
-MODNAME = '_Qt'				# The name of the module
-OBJECTNAME = 'Movie'			# The basic name of the objects used here
+MACHEADERFILE = 'Movies.h'              # The Apple header file
+MODNAME = '_Qt'                         # The name of the module
+OBJECTNAME = 'Movie'                    # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Qt'			# The prefix for module-wide routines
-OBJECTTYPE = "Movie"		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Qt'                        # The prefix for module-wide routines
+OBJECTTYPE = "Movie"            # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -57,45 +57,45 @@
 
 /* Macro to allow us to GetNextInterestingTime without duration */
 #define GetMediaNextInterestingTimeOnly(media, flags, time, rate, rv) \
-			GetMediaNextInterestingTime(media, flags, time, rate, rv, NULL)
-			
+                        GetMediaNextInterestingTime(media, flags, time, rate, rv, NULL)
+
 /*
 ** Parse/generate time records
 */
 static PyObject *
 QtTimeRecord_New(TimeRecord *itself)
 {
-	if (itself->base)
-		return Py_BuildValue("O&lO&", PyMac_Buildwide, &itself->value, itself->scale, 
-			TimeBaseObj_New, itself->base);
-	else
-		return  Py_BuildValue("O&lO", PyMac_Buildwide, &itself->value, itself->scale, 
-			Py_None);
+        if (itself->base)
+                return Py_BuildValue("O&lO&", PyMac_Buildwide, &itself->value, itself->scale,
+                        TimeBaseObj_New, itself->base);
+        else
+                return  Py_BuildValue("O&lO", PyMac_Buildwide, &itself->value, itself->scale,
+                        Py_None);
 }
 
 static int
 QtTimeRecord_Convert(PyObject *v, TimeRecord *p_itself)
 {
-	PyObject *base = NULL;
-	if( !PyArg_ParseTuple(v, "O&l|O", PyMac_Getwide, &p_itself->value, &p_itself->scale,
-			&base) )
-		return 0;
-	if ( base == NULL || base == Py_None )
-		p_itself->base = NULL;
-	else
-		if ( !TimeBaseObj_Convert(base, &p_itself->base) )
-			return 0;
-	return 1;
+        PyObject *base = NULL;
+        if( !PyArg_ParseTuple(v, "O&l|O", PyMac_Getwide, &p_itself->value, &p_itself->scale,
+                        &base) )
+                return 0;
+        if ( base == NULL || base == Py_None )
+                p_itself->base = NULL;
+        else
+                if ( !TimeBaseObj_Convert(base, &p_itself->base) )
+                        return 0;
+        return 1;
 }
 
 static int
 QtMusicMIDIPacket_Convert(PyObject *v, MusicMIDIPacket *p_itself)
 {
-	int dummy;
-	
-	if( !PyArg_ParseTuple(v, "hls#", &p_itself->length, &p_itself->reserved, p_itself->data, dummy) )
-		return 0;
-	return 1;
+        int dummy;
+
+        if( !PyArg_ParseTuple(v, "hls#", &p_itself->length, &p_itself->reserved, p_itself->data, dummy) )
+                return 0;
+        return 1;
 }
 
 
@@ -103,18 +103,18 @@
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(Track, TrackObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Track, TrackObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(Movie, MovieObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Movie, MovieObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(MovieController, MovieCtlObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(MovieController, MovieCtlObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(TimeBase, TimeBaseObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(TimeBase, TimeBaseObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(UserData, UserDataObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(UserData, UserDataObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(Media, MediaObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Media, MediaObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(Track, TrackObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Track, TrackObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(Movie, MovieObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Movie, MovieObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(MovieController, MovieCtlObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(MovieController, MovieCtlObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(TimeBase, TimeBaseObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(TimeBase, TimeBaseObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(UserData, UserDataObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(UserData, UserDataObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(Media, MediaObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Media, MediaObj_Convert);
 """
 
 # Our (opaque) objects
@@ -232,56 +232,56 @@
 
 # XXXX Need to override output_tp_newBody() to allow for None initializer.
 class QtGlobalObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		# We don't allow NULL pointers to be returned by QuickTime API calls,
-		# in stead we raise an exception
-		Output("""if (itself == NULL) {
-					PyErr_SetString(Qt_Error,"Cannot create %s from NULL pointer");
-					return NULL;
-				}""", self.name)
-	
-	def outputCheckConvertArg(self):
-		# But what we do allow is passing None whereever a quicktime object is
-		# expected, and pass this as NULL to the API routines. Note you can
-		# call methods too by creating an object with None as the initializer.
-		Output("if (v == Py_None)")
-		OutLbrace()
-		Output("*p_itself = NULL;")
-		Output("return 1;")
-		OutRbrace()
-	
+    def outputCheckNewArg(self):
+        # We don't allow NULL pointers to be returned by QuickTime API calls,
+        # in stead we raise an exception
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(Qt_Error,"Cannot create %s from NULL pointer");
+                                return NULL;
+                        }""", self.name)
+
+    def outputCheckConvertArg(self):
+        # But what we do allow is passing None whereever a quicktime object is
+        # expected, and pass this as NULL to the API routines. Note you can
+        # call methods too by creating an object with None as the initializer.
+        Output("if (v == Py_None)")
+        OutLbrace()
+        Output("*p_itself = NULL;")
+        Output("return 1;")
+        OutRbrace()
+
 class MovieObjectDefinition(QtGlobalObjectDefinition):
-	def outputFreeIt(self, itselfname):
-		Output("if (%s) DisposeMovie(%s);", itselfname, itselfname)
+    def outputFreeIt(self, itselfname):
+        Output("if (%s) DisposeMovie(%s);", itselfname, itselfname)
 
 class TrackObjectDefinition(QtGlobalObjectDefinition):
-	def outputFreeIt(self, itselfname):
-		Output("if (%s) DisposeMovieTrack(%s);", itselfname, itselfname)
+    def outputFreeIt(self, itselfname):
+        Output("if (%s) DisposeMovieTrack(%s);", itselfname, itselfname)
 
 class MediaObjectDefinition(QtGlobalObjectDefinition):
-	def outputFreeIt(self, itselfname):
-		Output("if (%s) DisposeTrackMedia(%s);", itselfname, itselfname)
+    def outputFreeIt(self, itselfname):
+        Output("if (%s) DisposeTrackMedia(%s);", itselfname, itselfname)
 
 class UserDataObjectDefinition(QtGlobalObjectDefinition):
-	def outputFreeIt(self, itselfname):
-		Output("if (%s) DisposeUserData(%s);", itselfname, itselfname)
+    def outputFreeIt(self, itselfname):
+        Output("if (%s) DisposeUserData(%s);", itselfname, itselfname)
 
 class TimeBaseObjectDefinition(QtGlobalObjectDefinition):
-	pass
-	
+    pass
+
 class MovieCtlObjectDefinition(QtGlobalObjectDefinition):
-	def outputFreeIt(self, itselfname):
-		Output("if (%s) DisposeMovieController(%s);", itselfname, itselfname)
+    def outputFreeIt(self, itselfname):
+        Output("if (%s) DisposeMovieController(%s);", itselfname, itselfname)
 
 class IdleManagerObjectDefinition(QtGlobalObjectDefinition):
-	pass
-	
+    pass
+
 class SGOutputObjectDefinition(QtGlobalObjectDefinition):
-	# XXXX I'm not sure I fully understand how SGOutput works. It seems it's always tied
-	# to a specific SeqGrabComponent, but I'm not 100% sure. Also, I'm not sure all the
-	# routines that return an SGOutput actually return a *new* SGOutput. Need to read up on
-	# this.
-	pass
+    # XXXX I'm not sure I fully understand how SGOutput works. It seems it's always tied
+    # to a specific SeqGrabComponent, but I'm not 100% sure. Also, I'm not sure all the
+    # routines that return an SGOutput actually return a *new* SGOutput. Need to read up on
+    # this.
+    pass
 
 
 # From here on it's basically all boiler plate...
@@ -331,19 +331,19 @@
 dummyRect = FakeType('(Rect *)0')
 
 f = Function(void, 'AlignWindow',
-	(WindowPtr, 'wp', InMode),
-	(Boolean, 'front', InMode),
-	(dummyRect, 'alignmentRect', InMode),
-	(ICMAlignmentProcRecordPtr, 'alignmentProc', InMode),
+        (WindowPtr, 'wp', InMode),
+        (Boolean, 'front', InMode),
+        (dummyRect, 'alignmentRect', InMode),
+        (ICMAlignmentProcRecordPtr, 'alignmentProc', InMode),
 )
 functions.append(f)
 
 f = Function(void, 'DragAlignedWindow',
-	(WindowPtr, 'wp', InMode),
-	(Point, 'startPt', InMode),
-	(Rect_ptr, 'boundsRect', InMode),
-	(dummyRect, 'alignmentRect', InMode),
-	(ICMAlignmentProcRecordPtr, 'alignmentProc', InMode),
+        (WindowPtr, 'wp', InMode),
+        (Point, 'startPt', InMode),
+        (Rect_ptr, 'boundsRect', InMode),
+        (dummyRect, 'alignmentRect', InMode),
+        (ICMAlignmentProcRecordPtr, 'alignmentProc', InMode),
 )
 functions.append(f)
 
@@ -377,4 +377,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/qt/setup.py b/Mac/Modules/qt/setup.py
index 98d836d..8442011 100755
--- a/Mac/Modules/qt/setup.py
+++ b/Mac/Modules/qt/setup.py
@@ -4,10 +4,10 @@
 from distutils.core import Extension, setup
 
 setup(name="QuickTime", version="0.2",
-	ext_modules=[
-		Extension('QuickTime._Qt', ['_Qtmodule.c'],
-		extra_link_args=['-framework', 'Carbon', '-framework', 'QuickTime'])
-	],
-	py_modules=['QuickTime.Qt', 'QuickTime.QuickTime'],
-	package_dir={'QuickTime':'../../../Lib/plat-mac/Carbon'}
-	)
+        ext_modules=[
+                Extension('QuickTime._Qt', ['_Qtmodule.c'],
+                extra_link_args=['-framework', 'Carbon', '-framework', 'QuickTime'])
+        ],
+        py_modules=['QuickTime.Qt', 'QuickTime.QuickTime'],
+        package_dir={'QuickTime':'../../../Lib/plat-mac/Carbon'}
+        )
diff --git a/Mac/Modules/res/resedit.py b/Mac/Modules/res/resedit.py
index ab60b34..b3ef790 100644
--- a/Mac/Modules/res/resedit.py
+++ b/Mac/Modules/res/resedit.py
@@ -4,11 +4,11 @@
 ##Handle h;
 ##
 ##if (!PyArg_ParseTuple(_args, "s#", &buf, &len))
-##	return NULL;
+##      return NULL;
 ##h = NewHandle(len);
 ##if ( h == NULL ) {
-##	PyErr_NoMemory();
-##	return NULL;
+##      PyErr_NoMemory();
+##      return NULL;
 ##}
 ##HLock(h);
 ##memcpy(*h, buf, len);
@@ -33,11 +33,11 @@
 ResourceObject *rv;
 
 if (!PyArg_ParseTuple(_args, "s#", &buf, &len))
-	return NULL;
+        return NULL;
 h = NewHandle(len);
 if ( h == NULL ) {
-	PyErr_NoMemory();
-	return NULL;
+        PyErr_NoMemory();
+        return NULL;
 }
 HLock(h);
 memcpy(*h, buf, len);
@@ -66,10 +66,10 @@
 
 def genresconverter(longname, shortname):
 
-	f = ManualGenerator("as_%s"%longname, as_xxx_body%(shortname, longname))
-	docstring =  "Return this resource/handle as a %s"%longname
-	f.docstring = lambda docstring=docstring: docstring
-	return f
+    f = ManualGenerator("as_%s"%longname, as_xxx_body%(shortname, longname))
+    docstring =  "Return this resource/handle as a %s"%longname
+    f.docstring = lambda docstring=docstring: docstring
+    return f
 
 resmethods.append(genresconverter("Control", "Ctl"))
 resmethods.append(genresconverter("Menu", "Menu"))
@@ -87,13 +87,13 @@
 AutoDispose_body = """
 int onoff, old = 0;
 if (!PyArg_ParseTuple(_args, "i", &onoff))
-	return NULL;
+        return NULL;
 if ( _self->ob_freeit )
-	old = 1;
+        old = 1;
 if ( onoff )
-	_self->ob_freeit = PyMac_AutoDisposeHandle;
+        _self->ob_freeit = PyMac_AutoDisposeHandle;
 else
-	_self->ob_freeit = NULL;
+        _self->ob_freeit = NULL;
 _res = Py_BuildValue("i", old);
 return _res;
 """
diff --git a/Mac/Modules/res/resscan.py b/Mac/Modules/res/resscan.py
index 47a19a6..47a97e4 100644
--- a/Mac/Modules/res/resscan.py
+++ b/Mac/Modules/res/resscan.py
@@ -13,73 +13,73 @@
 from scantools import Scanner
 
 def main():
-	input = "Resources.h"
-	output = "resgen.py"
-	defsoutput = TOOLBOXDIR + "Resources.py"
-	scanner = ResourcesScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now doing 'import ressupport' ==="
-	import ressupport
-	print "=== Done 'import ressupport'.  It's up to you to compile Resmodule.c ==="
+    input = "Resources.h"
+    output = "resgen.py"
+    defsoutput = TOOLBOXDIR + "Resources.py"
+    scanner = ResourcesScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now doing 'import ressupport' ==="
+    import ressupport
+    print "=== Done 'import ressupport'.  It's up to you to compile Resmodule.c ==="
 
 class ResourcesScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "ResFunction"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t == "Handle" and m == "InMode":
-				classname = "ResMethod"
-				listname = "resmethods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "ResFunction"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t == "Handle" and m == "InMode":
+                classname = "ResMethod"
+                listname = "resmethods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"ReadPartialResource",
-			"WritePartialResource",
-			"TempInsertROMMap",
-##			"RmveResource",		# RemoveResource
-##			"SizeResource",		# GetResourceSizeOnDisk
-##			"MaxSizeRsrc",		# GetMaxResourceSize
-			# OS8 only
-			'RGetResource',
-			'OpenResFile',
-			'CreateResFile',
-			'RsrcZoneInit',
-			'InitResources',
-			'RsrcMapEntry',
-			]
-			
-	def makeblacklisttypes(self):
-		return [
-			]
-			
-	def makerepairinstructions(self):
-		return [
-			([("Str255", "*", "InMode")],
-			 [("*", "*", "OutMode")]),
-			
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode")],
-			 [("InOutBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("OutBuffer", "*", "InOutMode")]),
-			 
-			([("SInt8", "*", "*")],
-			 [("SignedByte", "*", "*")]),
-			 
-			
-			([("UniCharCount", "*", "InMode"), ("UniChar_ptr", "*", "InMode")],
-			 [("UnicodeReverseInBuffer", "*", "*")]),
-			]
+    def makeblacklistnames(self):
+        return [
+                "ReadPartialResource",
+                "WritePartialResource",
+                "TempInsertROMMap",
+##                      "RmveResource",         # RemoveResource
+##                      "SizeResource",         # GetResourceSizeOnDisk
+##                      "MaxSizeRsrc",          # GetMaxResourceSize
+                # OS8 only
+                'RGetResource',
+                'OpenResFile',
+                'CreateResFile',
+                'RsrcZoneInit',
+                'InitResources',
+                'RsrcMapEntry',
+                ]
+
+    def makeblacklisttypes(self):
+        return [
+                ]
+
+    def makerepairinstructions(self):
+        return [
+                ([("Str255", "*", "InMode")],
+                 [("*", "*", "OutMode")]),
+
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("long", "*", "InMode")],
+                 [("InOutBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("OutBuffer", "*", "InOutMode")]),
+
+                ([("SInt8", "*", "*")],
+                 [("SignedByte", "*", "*")]),
+
+
+                ([("UniCharCount", "*", "InMode"), ("UniChar_ptr", "*", "InMode")],
+                 [("UnicodeReverseInBuffer", "*", "*")]),
+                ]
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/res/ressupport.py b/Mac/Modules/res/ressupport.py
index 6135560..04a1821 100644
--- a/Mac/Modules/res/ressupport.py
+++ b/Mac/Modules/res/ressupport.py
@@ -7,13 +7,13 @@
 
 class ResMixIn:
 
-	def checkit(self):
-		if self.returntype.__class__ != OSErrType:
-			OutLbrace()
-			Output("OSErr _err = ResError();")
-			Output("if (_err != noErr) return PyMac_Error(_err);")
-			OutRbrace()
-		FunctionGenerator.checkit(self) # XXX
+    def checkit(self):
+        if self.returntype.__class__ != OSErrType:
+            OutLbrace()
+            Output("OSErr _err = ResError();")
+            Output("if (_err != noErr) return PyMac_Error(_err);")
+            OutRbrace()
+        FunctionGenerator.checkit(self) # XXX
 
 class ResFunction(ResMixIn, OSErrWeakLinkFunctionGenerator): pass
 class ResMethod(ResMixIn, OSErrWeakLinkMethodGenerator): pass
@@ -42,7 +42,7 @@
 static void
 PyMac_AutoDisposeHandle(Handle h)
 {
-	DisposeHandle(h);
+        DisposeHandle(h);
 }
 """
 
@@ -51,159 +51,159 @@
 /* Alternative version of ResObj_New, which returns None for null argument */
 PyObject *OptResObj_New(Handle itself)
 {
-	if (itself == NULL) {
-		Py_INCREF(Py_None);
-		return Py_None;
-	}
-	return ResObj_New(itself);
+        if (itself == NULL) {
+                Py_INCREF(Py_None);
+                return Py_None;
+        }
+        return ResObj_New(itself);
 }
 
 int OptResObj_Convert(PyObject *v, Handle *p_itself)
 {
-	PyObject *tmp;
-	
-	if ( v == Py_None ) {
-		*p_itself = NULL;
-		return 1;
-	}
-	if (ResObj_Check(v))
-	{
-		*p_itself = ((ResourceObject *)v)->ob_itself;
-		return 1;
-	}
-	/* If it isn't a resource yet see whether it is convertible */
-	if ( (tmp=PyObject_CallMethod(v, "as_Resource", "")) ) {
-		*p_itself = ((ResourceObject *)tmp)->ob_itself;
-		Py_DECREF(tmp);
-		return 1;
-	}
-	PyErr_Clear();
-	PyErr_SetString(PyExc_TypeError, "Resource required");
-	return 0;
+        PyObject *tmp;
+
+        if ( v == Py_None ) {
+                *p_itself = NULL;
+                return 1;
+        }
+        if (ResObj_Check(v))
+        {
+                *p_itself = ((ResourceObject *)v)->ob_itself;
+                return 1;
+        }
+        /* If it isn't a resource yet see whether it is convertible */
+        if ( (tmp=PyObject_CallMethod(v, "as_Resource", "")) ) {
+                *p_itself = ((ResourceObject *)tmp)->ob_itself;
+                Py_DECREF(tmp);
+                return 1;
+        }
+        PyErr_Clear();
+        PyErr_SetString(PyExc_TypeError, "Resource required");
+        return 0;
 }
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(Handle, ResObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Handle, ResObj_Convert);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(Handle, OptResObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Handle, OptResObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(Handle, ResObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Handle, ResObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(Handle, OptResObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(Handle, OptResObj_Convert);
 """
 
 module = MacModule('_Res', 'Res', includestuff, finalstuff, initstuff)
 
 class ResDefinition(PEP253Mixin, GlobalObjectDefinition):
-	getsetlist = [
-		('data',
-		"""
-		PyObject *res;
-		char state;
+    getsetlist = [
+            ('data',
+            """
+            PyObject *res;
+            char state;
 
-		state = HGetState(self->ob_itself);
-		HLock(self->ob_itself);
-		res = PyString_FromStringAndSize(
-			*self->ob_itself,
-			GetHandleSize(self->ob_itself));
-		HUnlock(self->ob_itself);
-		HSetState(self->ob_itself, state);
-		return res;
-		""",
-		"""
-		char *data;
-		long size;
-	
-		if ( v == NULL )
-			return -1;
-		if ( !PyString_Check(v) )
-			return -1;
-		size = PyString_Size(v);
-		data = PyString_AsString(v);
-		/* XXXX Do I need the GetState/SetState calls? */
-		SetHandleSize(self->ob_itself, size);
-		if ( MemError())
-			return -1;
-		HLock(self->ob_itself);
-		memcpy((char *)*self->ob_itself, data, size);
-		HUnlock(self->ob_itself);
-		/* XXXX Should I do the Changed call immedeately? */
-		return 0;
-		""",
-		'The resource data'
-		), (
-		'size',
-		'return PyInt_FromLong(GetHandleSize(self->ob_itself));',
-		None,
-		'The length of the resource data'
-		)]
+            state = HGetState(self->ob_itself);
+            HLock(self->ob_itself);
+            res = PyString_FromStringAndSize(
+                    *self->ob_itself,
+                    GetHandleSize(self->ob_itself));
+            HUnlock(self->ob_itself);
+            HSetState(self->ob_itself, state);
+            return res;
+            """,
+            """
+            char *data;
+            long size;
 
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-		
-	def outputCheckConvertArg(self):
-		# if it isn't a resource we may be able to coerce it
-		Output("if (!%s_Check(v))", self.prefix)
-		OutLbrace()
-		Output("PyObject *tmp;")
-		Output('if ( (tmp=PyObject_CallMethod(v, "as_Resource", "")) )')
-		OutLbrace()
-		Output("*p_itself = ((ResourceObject *)tmp)->ob_itself;")
-		Output("Py_DECREF(tmp);")
-		Output("return 1;")
-		OutRbrace()
-		Output("PyErr_Clear();")
-		OutRbrace()
+            if ( v == NULL )
+                    return -1;
+            if ( !PyString_Check(v) )
+                    return -1;
+            size = PyString_Size(v);
+            data = PyString_AsString(v);
+            /* XXXX Do I need the GetState/SetState calls? */
+            SetHandleSize(self->ob_itself, size);
+            if ( MemError())
+                    return -1;
+            HLock(self->ob_itself);
+            memcpy((char *)*self->ob_itself, data, size);
+            HUnlock(self->ob_itself);
+            /* XXXX Should I do the Changed call immedeately? */
+            return 0;
+            """,
+            'The resource data'
+            ), (
+            'size',
+            'return PyInt_FromLong(GetHandleSize(self->ob_itself));',
+            None,
+            'The length of the resource data'
+            )]
 
-	def outputStructMembers(self):
-		GlobalObjectDefinition.outputStructMembers(self)
-		Output("void (*ob_freeit)(%s ptr);", self.itselftype)
-		
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("it->ob_freeit = NULL;")
-		
-	def outputCleanupStructMembers(self):
-		Output("if (self->ob_freeit && self->ob_itself)")
-		OutLbrace()
-		Output("self->ob_freeit(self->ob_itself);")
-		OutRbrace()
-		Output("self->ob_itself = NULL;")
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
 
-	def output_tp_newBody(self):
-		Output("PyObject *self;")
-		Output
-		Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
-		Output("((%s *)self)->ob_itself = NULL;", self.objecttype)
-		Output("((%s *)self)->ob_freeit = NULL;", self.objecttype)
-		Output("return self;")
-		
-	def output_tp_initBody(self):
-		Output("char *srcdata = NULL;")
-		Output("int srclen = 0;")
-		Output("%s itself;", self.itselftype);
-		Output("char *kw[] = {\"itself\", 0};")
-		Output()
-		Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"O&\", kw, %s_Convert, &itself))",
-			self.prefix);
-		OutLbrace()
-		Output("((%s *)self)->ob_itself = itself;", self.objecttype)
-		Output("return 0;")
-		OutRbrace()
-		Output("PyErr_Clear();")
-		Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|s#\", kw, &srcdata, &srclen)) return -1;")
-		Output("if ((itself = NewHandle(srclen)) == NULL)")
-		OutLbrace()
-		Output("PyErr_NoMemory();")
-		Output("return 0;")
-		OutRbrace()
-		Output("((%s *)self)->ob_itself = itself;", self.objecttype)
-# XXXX		Output("((%s *)self)->ob_freeit = PyMac_AutoDisposeHandle;")
-		Output("if (srclen && srcdata)")
-		OutLbrace()
-		Output("HLock(itself);")
-		Output("memcpy(*itself, srcdata, srclen);")
-		Output("HUnlock(itself);")
-		OutRbrace()
-		Output("return 0;")
+    def outputCheckConvertArg(self):
+        # if it isn't a resource we may be able to coerce it
+        Output("if (!%s_Check(v))", self.prefix)
+        OutLbrace()
+        Output("PyObject *tmp;")
+        Output('if ( (tmp=PyObject_CallMethod(v, "as_Resource", "")) )')
+        OutLbrace()
+        Output("*p_itself = ((ResourceObject *)tmp)->ob_itself;")
+        Output("Py_DECREF(tmp);")
+        Output("return 1;")
+        OutRbrace()
+        Output("PyErr_Clear();")
+        OutRbrace()
+
+    def outputStructMembers(self):
+        GlobalObjectDefinition.outputStructMembers(self)
+        Output("void (*ob_freeit)(%s ptr);", self.itselftype)
+
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("it->ob_freeit = NULL;")
+
+    def outputCleanupStructMembers(self):
+        Output("if (self->ob_freeit && self->ob_itself)")
+        OutLbrace()
+        Output("self->ob_freeit(self->ob_itself);")
+        OutRbrace()
+        Output("self->ob_itself = NULL;")
+
+    def output_tp_newBody(self):
+        Output("PyObject *self;")
+        Output
+        Output("if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;")
+        Output("((%s *)self)->ob_itself = NULL;", self.objecttype)
+        Output("((%s *)self)->ob_freeit = NULL;", self.objecttype)
+        Output("return self;")
+
+    def output_tp_initBody(self):
+        Output("char *srcdata = NULL;")
+        Output("int srclen = 0;")
+        Output("%s itself;", self.itselftype);
+        Output("char *kw[] = {\"itself\", 0};")
+        Output()
+        Output("if (PyArg_ParseTupleAndKeywords(args, kwds, \"O&\", kw, %s_Convert, &itself))",
+                self.prefix);
+        OutLbrace()
+        Output("((%s *)self)->ob_itself = itself;", self.objecttype)
+        Output("return 0;")
+        OutRbrace()
+        Output("PyErr_Clear();")
+        Output("if (!PyArg_ParseTupleAndKeywords(args, kwds, \"|s#\", kw, &srcdata, &srclen)) return -1;")
+        Output("if ((itself = NewHandle(srclen)) == NULL)")
+        OutLbrace()
+        Output("PyErr_NoMemory();")
+        Output("return 0;")
+        OutRbrace()
+        Output("((%s *)self)->ob_itself = itself;", self.objecttype)
+# XXXX          Output("((%s *)self)->ob_freeit = PyMac_AutoDisposeHandle;")
+        Output("if (srclen && srcdata)")
+        OutLbrace()
+        Output("HLock(itself);")
+        Output("memcpy(*itself, srcdata, srclen);")
+        Output("HUnlock(itself);")
+        OutRbrace()
+        Output("return 0;")
 
 resobject = ResDefinition('Resource', 'ResObj', 'Handle')
 module.addobject(resobject)
diff --git a/Mac/Modules/scrap/scrapscan.py b/Mac/Modules/scrap/scrapscan.py
index 0b173a4..1fc8191 100644
--- a/Mac/Modules/scrap/scrapscan.py
+++ b/Mac/Modules/scrap/scrapscan.py
@@ -13,49 +13,49 @@
 SHORT = "scrap"
 
 def main():
-	input = "Scrap.h"
-	output = SHORT + "gen.py"
-	defsoutput = "@Scrap.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-##	print "=== Testing definitions output code ==="
-##	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "Scrap.h"
+    output = SHORT + "gen.py"
+    defsoutput = "@Scrap.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+##      print "=== Testing definitions output code ==="
+##      execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t == 'ScrapRef' and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t == 'ScrapRef' and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"GetScrapFlavorInfoList",
-			'InfoScrap',
-			'GetScrap',
-			'ZeroScrap',
-			'PutScrap',
-			]
+    def makeblacklistnames(self):
+        return [
+                "GetScrapFlavorInfoList",
+                'InfoScrap',
+                'GetScrap',
+                'ZeroScrap',
+                'PutScrap',
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			'ScrapPromiseKeeperUPP',
-			]
+    def makeblacklisttypes(self):
+        return [
+                'ScrapPromiseKeeperUPP',
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([('void', '*', 'OutMode')], [('putscrapbuffer', '*', 'InMode')]),
-			([('void_ptr', '*', 'InMode')], [('putscrapbuffer', '*', 'InMode')]),
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ([('void', '*', 'OutMode')], [('putscrapbuffer', '*', 'InMode')]),
+                ([('void_ptr', '*', 'InMode')], [('putscrapbuffer', '*', 'InMode')]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/scrap/scrapsupport.py b/Mac/Modules/scrap/scrapsupport.py
index 634a439..84a75d2 100644
--- a/Mac/Modules/scrap/scrapsupport.py
+++ b/Mac/Modules/scrap/scrapsupport.py
@@ -9,16 +9,16 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Scrap.h'		# The Apple header file
-MODNAME = '_Scrap'				# The name of the module
-OBJECTNAME = 'Scrap'			# The basic name of the objects used here
+MACHEADERFILE = 'Scrap.h'               # The Apple header file
+MODNAME = '_Scrap'                              # The name of the module
+OBJECTNAME = 'Scrap'                    # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Scrap'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + 'Ref'	# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Scrap'                     # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + 'Ref' # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = '@' + MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = '@' + MODNAME + "module.c" # The file generated by this program
 
 from macsupport import *
 
@@ -33,12 +33,12 @@
 */
 static PyObject *
 SCRRec_New(itself)
-	ScrapStuff *itself;
+        ScrapStuff *itself;
 {
 
-	return Py_BuildValue("lO&hhO&", itself->scrapSize,
-		ResObj_New, itself->scrapHandle, itself->scrapCount, itself->scrapState,
-		PyMac_BuildStr255, itself->scrapName);
+        return Py_BuildValue("lO&hhO&", itself->scrapSize,
+                ResObj_New, itself->scrapHandle, itself->scrapCount, itself->scrapState,
+                PyMac_BuildStr255, itself->scrapName);
 }
 """
 
@@ -49,7 +49,7 @@
 putscrapbuffer = FixedInputBufferType('void *')
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	pass
+    pass
 
 # Create the generator groups and link them
 module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff)
@@ -73,4 +73,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/snd/sndscan.py b/Mac/Modules/snd/sndscan.py
index a287c73..c4a8266 100644
--- a/Mac/Modules/snd/sndscan.py
+++ b/Mac/Modules/snd/sndscan.py
@@ -10,119 +10,119 @@
 from scantools import Scanner
 
 def main():
-	input = "Sound.h"
-	output = "sndgen.py"
-	defsoutput = TOOLBOXDIR + "Sound.py"
-	scanner = SoundScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now doing 'import sndsupport' ==="
-	import sndsupport
-	print "=== Done.  It's up to you to compile Sndmodule.c ==="
+    input = "Sound.h"
+    output = "sndgen.py"
+    defsoutput = TOOLBOXDIR + "Sound.py"
+    scanner = SoundScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now doing 'import sndsupport' ==="
+    import sndsupport
+    print "=== Done.  It's up to you to compile Sndmodule.c ==="
 
 class SoundScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "SndFunction"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t == "SndChannelPtr" and m == "InMode":
-				classname = "SndMethod"
-				listname = "sndmethods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "SndFunction"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t == "SndChannelPtr" and m == "InMode":
+                classname = "SndMethod"
+                listname = "sndmethods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			'SndDisposeChannel',		# automatic on deallocation
-			'SndAddModifier',		# for internal use only
-			'SndPlayDoubleBuffer',		# very low level routine
-			# Missing from libraries (UH332)
-			'SoundManagerSetInfo',
-			'SoundManagerGetInfo',
-			# Constants with funny definitions
-			'rate48khz',
-			'rate44khz',
-			'kInvalidSource',
-			# OS8 only:
-			'MACEVersion',
-			'SPBRecordToFile',
-			'Exp1to6',
-			'Comp6to1',
-			'Exp1to3',
-			'Comp3to1',
-			'SndControl',
-			'SndStopFilePlay',
-			'SndStartFilePlay',
-			'SndPauseFilePlay',
-			'SndRecordToFile',
+    def makeblacklistnames(self):
+        return [
+                'SndDisposeChannel',            # automatic on deallocation
+                'SndAddModifier',               # for internal use only
+                'SndPlayDoubleBuffer',          # very low level routine
+                # Missing from libraries (UH332)
+                'SoundManagerSetInfo',
+                'SoundManagerGetInfo',
+                # Constants with funny definitions
+                'rate48khz',
+                'rate44khz',
+                'kInvalidSource',
+                # OS8 only:
+                'MACEVersion',
+                'SPBRecordToFile',
+                'Exp1to6',
+                'Comp6to1',
+                'Exp1to3',
+                'Comp3to1',
+                'SndControl',
+                'SndStopFilePlay',
+                'SndStartFilePlay',
+                'SndPauseFilePlay',
+                'SndRecordToFile',
 
-			]
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"GetSoundVol",
-			"SetSoundVol",
-			"UnsignedFixed",
-			# Don't have the time to dig into this...
-			"Component",
-			"ComponentInstance",
-			"SoundComponentDataPtr",
-			"SoundComponentData",
-			"SoundComponentData_ptr",
-			"SoundConverter",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "GetSoundVol",
+                "SetSoundVol",
+                "UnsignedFixed",
+                # Don't have the time to dig into this...
+                "Component",
+                "ComponentInstance",
+                "SoundComponentDataPtr",
+                "SoundComponentData",
+                "SoundComponentData_ptr",
+                "SoundConverter",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("Str255", "*", "InMode")],
-			 [("*", "*", "OutMode")]),
-			
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
-			
-			([("SCStatusPtr", "*", "InMode")],
-			 [("SCStatus", "*", "OutMode")]),
-			
-			([("SMStatusPtr", "*", "InMode")],
-			 [("SMStatus", "*", "OutMode")]),
-			 
-			([("CompressionInfoPtr", "*", "InMode")],
-			 [("CompressionInfo", "*", "OutMode")]),
-			
-			# For SndPlay's SndListHandle argument
-			([("Handle", "sndHdl", "InMode")],
-			 [("SndListHandle", "*", "*")]),
-			 
-			# For SndStartFilePlay
-			([("long", "bufferSize", "InMode"), ("void", "theBuffer", "OutMode")],
-			 [("*", "*", "*"), ("FakeType('0')", "*", "InMode")]),
-			
-			# For Comp3to1 etc.
-			([("void_ptr", "inBuffer", "InMode"),
-			  ("void", "outBuffer", "OutMode"),
-			  ("unsigned_long", "cnt", "InMode")],
-			 [("InOutBuffer", "buffer", "InOutMode")]),
-			
-			# Ditto
-##			([("void_ptr", "inState", "InMode"), ("void", "outState", "OutMode")],
-##			 [("InOutBuf128", "state", "InOutMode")]),
-			([("StateBlockPtr", "inState", "InMode"), ("StateBlockPtr", "outState", "InMode")],
-			 [("StateBlock", "state", "InOutMode")]),
+    def makerepairinstructions(self):
+        return [
+                ([("Str255", "*", "InMode")],
+                 [("*", "*", "OutMode")]),
 
-			# Catch-all for the last couple of void pointers
-			([("void", "*", "OutMode")],
-			 [("void_ptr", "*", "InMode")]),
-			]
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
+
+                ([("SCStatusPtr", "*", "InMode")],
+                 [("SCStatus", "*", "OutMode")]),
+
+                ([("SMStatusPtr", "*", "InMode")],
+                 [("SMStatus", "*", "OutMode")]),
+
+                ([("CompressionInfoPtr", "*", "InMode")],
+                 [("CompressionInfo", "*", "OutMode")]),
+
+                # For SndPlay's SndListHandle argument
+                ([("Handle", "sndHdl", "InMode")],
+                 [("SndListHandle", "*", "*")]),
+
+                # For SndStartFilePlay
+                ([("long", "bufferSize", "InMode"), ("void", "theBuffer", "OutMode")],
+                 [("*", "*", "*"), ("FakeType('0')", "*", "InMode")]),
+
+                # For Comp3to1 etc.
+                ([("void_ptr", "inBuffer", "InMode"),
+                  ("void", "outBuffer", "OutMode"),
+                  ("unsigned_long", "cnt", "InMode")],
+                 [("InOutBuffer", "buffer", "InOutMode")]),
+
+                # Ditto
+##                      ([("void_ptr", "inState", "InMode"), ("void", "outState", "OutMode")],
+##                       [("InOutBuf128", "state", "InOutMode")]),
+                ([("StateBlockPtr", "inState", "InMode"), ("StateBlockPtr", "outState", "InMode")],
+                 [("StateBlock", "state", "InOutMode")]),
+
+                # Catch-all for the last couple of void pointers
+                ([("void", "*", "OutMode")],
+                 [("void_ptr", "*", "InMode")]),
+                ]
 
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/snd/sndsupport.py b/Mac/Modules/snd/sndsupport.py
index 99df5be..cf0fa6c 100644
--- a/Mac/Modules/snd/sndsupport.py
+++ b/Mac/Modules/snd/sndsupport.py
@@ -27,12 +27,12 @@
 # define types used for arguments (in addition to standard and macsupport types)
 
 class SndChannelPtrType(OpaqueByValueType):
-	def declare(self, name):
-		# Initializing all SndChannelPtr objects to 0 saves
-		# special-casing NewSndChannel(), where it is formally an
-		# input-output parameter but we treat it as output-only
-		# (since Python users are not supposed to allocate memory)
-		Output("SndChannelPtr %s = 0;", name)
+    def declare(self, name):
+        # Initializing all SndChannelPtr objects to 0 saves
+        # special-casing NewSndChannel(), where it is formally an
+        # input-output parameter but we treat it as output-only
+        # (since Python users are not supposed to allocate memory)
+        Output("SndChannelPtr %s = 0;", name)
 
 SndChannelPtr = SndChannelPtrType('SndChannelPtr', 'SndCh')
 
@@ -49,28 +49,28 @@
 void_ptr = Type("void *", "w")
 
 class SndCallBackType(InputOnlyType):
-	def __init__(self):
-		Type.__init__(self, 'PyObject*', 'O')
-	def getargsCheck(self, name):
-		Output("if (%s != Py_None && !PyCallable_Check(%s))", name, name)
-		OutLbrace()
-		Output('PyErr_SetString(PyExc_TypeError, "callback must be callable");')
-		Output("goto %s__error__;", name)
-		OutRbrace()
-	def passInput(self, name):
-		return "NewSndCallBackUPP(SndCh_UserRoutine)"
-	def cleanup(self, name):
-		# XXX This knows it is executing inside the SndNewChannel wrapper
-		Output("if (_res != NULL && %s != Py_None)", name)
-		OutLbrace()
-		Output("SndChannelObject *p = (SndChannelObject *)_res;")
-		Output("p->ob_itself->userInfo = (long)p;")
-		Output("Py_INCREF(%s);", name)
-		Output("p->ob_callback = %s;", name)
-		OutRbrace()
-		DedentLevel()
-		Output(" %s__error__: ;", name)
-		IndentLevel()
+    def __init__(self):
+        Type.__init__(self, 'PyObject*', 'O')
+    def getargsCheck(self, name):
+        Output("if (%s != Py_None && !PyCallable_Check(%s))", name, name)
+        OutLbrace()
+        Output('PyErr_SetString(PyExc_TypeError, "callback must be callable");')
+        Output("goto %s__error__;", name)
+        OutRbrace()
+    def passInput(self, name):
+        return "NewSndCallBackUPP(SndCh_UserRoutine)"
+    def cleanup(self, name):
+        # XXX This knows it is executing inside the SndNewChannel wrapper
+        Output("if (_res != NULL && %s != Py_None)", name)
+        OutLbrace()
+        Output("SndChannelObject *p = (SndChannelObject *)_res;")
+        Output("p->ob_itself->userInfo = (long)p;")
+        Output("Py_INCREF(%s);", name)
+        Output("p->ob_callback = %s;", name)
+        OutRbrace()
+        DedentLevel()
+        Output(" %s__error__: ;", name)
+        IndentLevel()
 
 SndCallBackProcPtr = SndCallBackType()
 SndCallBackUPP = SndCallBackProcPtr
@@ -95,16 +95,16 @@
 static int
 SndCmd_Convert(PyObject *v, SndCommand *pc)
 {
-	int len;
-	pc->param1 = 0;
-	pc->param2 = 0;
-	if (PyTuple_Check(v)) {
-		if (PyArg_ParseTuple(v, "h|hl", &pc->cmd, &pc->param1, &pc->param2))
-			return 1;
-		PyErr_Clear();
-		return PyArg_ParseTuple(v, "Hhs#", &pc->cmd, &pc->param1, &pc->param2, &len);
-	}
-	return PyArg_Parse(v, "H", &pc->cmd);
+        int len;
+        pc->param1 = 0;
+        pc->param2 = 0;
+        if (PyTuple_Check(v)) {
+                if (PyArg_ParseTuple(v, "h|hl", &pc->cmd, &pc->param1, &pc->param2))
+                        return 1;
+                PyErr_Clear();
+                return PyArg_ParseTuple(v, "Hhs#", &pc->cmd, &pc->param1, &pc->param2, &len);
+        }
+        return PyArg_Parse(v, "H", &pc->cmd);
 }
 
 static pascal void SndCh_UserRoutine(SndChannelPtr chan, SndCommand *cmd); /* Forward */
@@ -117,62 +117,62 @@
 static int
 SndCh_CallCallBack(void *arg)
 {
-	SndChannelObject *p = (SndChannelObject *)arg;
-	PyObject *args;
-	PyObject *res;
-	args = Py_BuildValue("(O(hhl))",
-	                     p, p->ob_cmd.cmd, p->ob_cmd.param1, p->ob_cmd.param2);
-	res = PyEval_CallObject(p->ob_callback, args);
-	Py_DECREF(args);
-	if (res == NULL)
-		return -1;
-	Py_DECREF(res);
-	return 0;
+        SndChannelObject *p = (SndChannelObject *)arg;
+        PyObject *args;
+        PyObject *res;
+        args = Py_BuildValue("(O(hhl))",
+                             p, p->ob_cmd.cmd, p->ob_cmd.param1, p->ob_cmd.param2);
+        res = PyEval_CallObject(p->ob_callback, args);
+        Py_DECREF(args);
+        if (res == NULL)
+                return -1;
+        Py_DECREF(res);
+        return 0;
 }
 
 /* Routine passed to NewSndChannel -- schedule a call to SndCh_CallCallBack */
 static pascal void
 SndCh_UserRoutine(SndChannelPtr chan, SndCommand *cmd)
 {
-	SndChannelObject *p = (SndChannelObject *)(chan->userInfo);
-	if (p->ob_callback != NULL) {
-		long A5 = SetA5(p->ob_A5);
-		p->ob_cmd = *cmd;
-		Py_AddPendingCall(SndCh_CallCallBack, (void *)p);
-		SetA5(A5);
-	}
+        SndChannelObject *p = (SndChannelObject *)(chan->userInfo);
+        if (p->ob_callback != NULL) {
+                long A5 = SetA5(p->ob_A5);
+                p->ob_cmd = *cmd;
+                Py_AddPendingCall(SndCh_CallCallBack, (void *)p);
+                SetA5(A5);
+        }
 }
 
 /* SPB callbacks - Schedule callbacks to Python */
 static int
 SPB_CallCallBack(void *arg)
 {
-	SPBObject *p = (SPBObject *)arg;
-	PyObject *args;
-	PyObject *res;
-	
-	if ( p->ob_thiscallback == 0 ) return 0;
-	args = Py_BuildValue("(O)", p);
-	res = PyEval_CallObject(p->ob_thiscallback, args);
-	p->ob_thiscallback = 0;
-	Py_DECREF(args);
-	if (res == NULL)
-		return -1;
-	Py_DECREF(res);
-	return 0;
+        SPBObject *p = (SPBObject *)arg;
+        PyObject *args;
+        PyObject *res;
+
+        if ( p->ob_thiscallback == 0 ) return 0;
+        args = Py_BuildValue("(O)", p);
+        res = PyEval_CallObject(p->ob_thiscallback, args);
+        p->ob_thiscallback = 0;
+        Py_DECREF(args);
+        if (res == NULL)
+                return -1;
+        Py_DECREF(res);
+        return 0;
 }
 
 static pascal void
 SPB_completion(SPBPtr my_spb)
 {
-	SPBObject *p = (SPBObject *)(my_spb->userLong);
-	
-	if (p && p->ob_completion) {
-		long A5 = SetA5(p->ob_A5);
-		p->ob_thiscallback = p->ob_completion;	/* Hope we cannot get two at the same time */
-		Py_AddPendingCall(SPB_CallCallBack, (void *)p);
-		SetA5(A5);
-	}
+        SPBObject *p = (SPBObject *)(my_spb->userLong);
+
+        if (p && p->ob_completion) {
+                long A5 = SetA5(p->ob_A5);
+                p->ob_thiscallback = p->ob_completion;  /* Hope we cannot get two at the same time */
+                Py_AddPendingCall(SPB_CallCallBack, (void *)p);
+                SetA5(A5);
+        }
 }
 
 """
@@ -182,110 +182,110 @@
 
 class SndObjectDefinition(PEP252Mixin, ObjectDefinition):
 
-	def outputStructMembers(self):
-		ObjectDefinition.outputStructMembers(self)
-		Output("/* Members used to implement callbacks: */")
-		Output("PyObject *ob_callback;")
-		Output("long ob_A5;");
-		Output("SndCommand ob_cmd;")
+    def outputStructMembers(self):
+        ObjectDefinition.outputStructMembers(self)
+        Output("/* Members used to implement callbacks: */")
+        Output("PyObject *ob_callback;")
+        Output("long ob_A5;");
+        Output("SndCommand ob_cmd;")
 
-	def outputInitStructMembers(self):
-		ObjectDefinition.outputInitStructMembers(self)
-		Output("it->ob_callback = NULL;")
-		Output("it->ob_A5 = SetCurrentA5();");
+    def outputInitStructMembers(self):
+        ObjectDefinition.outputInitStructMembers(self)
+        Output("it->ob_callback = NULL;")
+        Output("it->ob_A5 = SetCurrentA5();");
 
-	def outputCleanupStructMembers(self):
-		ObjectDefinition.outputCleanupStructMembers(self)
-		Output("Py_XDECREF(self->ob_callback);")
-	
-	def outputFreeIt(self, itselfname):
-		Output("SndDisposeChannel(%s, 1);", itselfname)
-		
-	def outputConvert(self):
-		pass # Not needed
-		
+    def outputCleanupStructMembers(self):
+        ObjectDefinition.outputCleanupStructMembers(self)
+        Output("Py_XDECREF(self->ob_callback);")
+
+    def outputFreeIt(self, itselfname):
+        Output("SndDisposeChannel(%s, 1);", itselfname)
+
+    def outputConvert(self):
+        pass # Not needed
+
 #
 
 class SpbObjectDefinition(PEP252Mixin, ObjectDefinition):
-	getsetlist = [
-		(
-		'inRefNum',
-		'return Py_BuildValue("l", self->ob_spb.inRefNum);',
-		'return -1 + PyArg_Parse(v, "l", &self->ob_spb.inRefNum);',
-		None,
-		), (
-		'count',
-		'return Py_BuildValue("l", self->ob_spb.count);',
-		'return -1 + PyArg_Parse(v, "l", &self->ob_spb.count);',
-		None
-		), (
-		'milliseconds',
-		'return Py_BuildValue("l", self->ob_spb.milliseconds);',
-		'return -1 + PyArg_Parse(v, "l", &self->ob_spb.milliseconds);',
-		None,
-		), (
-		'error',
-		'return Py_BuildValue("h", self->ob_spb.error);',
-		None,
-		None
-		), (
-		'completionRoutine',
-		None,
-		"""self->ob_spb.completionRoutine = NewSICompletionUPP(SPB_completion);
-		self->ob_completion = v;
-		Py_INCREF(v);
-		return 0;""",
-		None,
-		)]
+    getsetlist = [
+            (
+            'inRefNum',
+            'return Py_BuildValue("l", self->ob_spb.inRefNum);',
+            'return -1 + PyArg_Parse(v, "l", &self->ob_spb.inRefNum);',
+            None,
+            ), (
+            'count',
+            'return Py_BuildValue("l", self->ob_spb.count);',
+            'return -1 + PyArg_Parse(v, "l", &self->ob_spb.count);',
+            None
+            ), (
+            'milliseconds',
+            'return Py_BuildValue("l", self->ob_spb.milliseconds);',
+            'return -1 + PyArg_Parse(v, "l", &self->ob_spb.milliseconds);',
+            None,
+            ), (
+            'error',
+            'return Py_BuildValue("h", self->ob_spb.error);',
+            None,
+            None
+            ), (
+            'completionRoutine',
+            None,
+            """self->ob_spb.completionRoutine = NewSICompletionUPP(SPB_completion);
+            self->ob_completion = v;
+            Py_INCREF(v);
+            return 0;""",
+            None,
+            )]
 
-	def outputStructMembers(self):
-		Output("/* Members used to implement callbacks: */")
-		Output("PyObject *ob_completion;")
-		Output("PyObject *ob_interrupt;")
-		Output("PyObject *ob_thiscallback;");
-		Output("long ob_A5;")
-		Output("SPB ob_spb;")
+    def outputStructMembers(self):
+        Output("/* Members used to implement callbacks: */")
+        Output("PyObject *ob_completion;")
+        Output("PyObject *ob_interrupt;")
+        Output("PyObject *ob_thiscallback;");
+        Output("long ob_A5;")
+        Output("SPB ob_spb;")
 
-	def outputNew(self):
-		Output()
-		Output("%sPyObject *%s_New(void)", self.static, self.prefix)
-		OutLbrace()
-		Output("%s *it;", self.objecttype)
-		self.outputCheckNewArg()
-		Output("it = PyObject_NEW(%s, &%s);", self.objecttype, self.typename)
-		Output("if (it == NULL) return NULL;")
-		self.outputInitStructMembers()
-		Output("return (PyObject *)it;")
-		OutRbrace()
+    def outputNew(self):
+        Output()
+        Output("%sPyObject *%s_New(void)", self.static, self.prefix)
+        OutLbrace()
+        Output("%s *it;", self.objecttype)
+        self.outputCheckNewArg()
+        Output("it = PyObject_NEW(%s, &%s);", self.objecttype, self.typename)
+        Output("if (it == NULL) return NULL;")
+        self.outputInitStructMembers()
+        Output("return (PyObject *)it;")
+        OutRbrace()
 
-	def outputInitStructMembers(self):
-		Output("it->ob_completion = NULL;")
-		Output("it->ob_interrupt = NULL;")
-		Output("it->ob_thiscallback = NULL;")
-		Output("it->ob_A5 = SetCurrentA5();")
-		Output("memset((char *)&it->ob_spb, 0, sizeof(it->ob_spb));")
-		Output("it->ob_spb.userLong = (long)it;")
+    def outputInitStructMembers(self):
+        Output("it->ob_completion = NULL;")
+        Output("it->ob_interrupt = NULL;")
+        Output("it->ob_thiscallback = NULL;")
+        Output("it->ob_A5 = SetCurrentA5();")
+        Output("memset((char *)&it->ob_spb, 0, sizeof(it->ob_spb));")
+        Output("it->ob_spb.userLong = (long)it;")
 
-	def outputCleanupStructMembers(self):
-		ObjectDefinition.outputCleanupStructMembers(self)
-		Output("self->ob_spb.userLong = 0;")
-		Output("self->ob_thiscallback = 0;")
-		Output("Py_XDECREF(self->ob_completion);")
-		Output("Py_XDECREF(self->ob_interrupt);")
-	
-	def outputConvert(self):
-		Output("%sint %s_Convert(PyObject *v, %s *p_itself)", self.static, self.prefix, self.itselftype)
-		OutLbrace()
-		self.outputCheckConvertArg()
-		Output("if (!%s_Check(v))", self.prefix)
-		OutLbrace()
-		Output('PyErr_SetString(PyExc_TypeError, "%s required");', self.name)
-		Output("return 0;")
-		OutRbrace()
-		Output("*p_itself = &((%s *)v)->ob_spb;", self.objecttype)
-		Output("return 1;")
-		OutRbrace()
-					
+    def outputCleanupStructMembers(self):
+        ObjectDefinition.outputCleanupStructMembers(self)
+        Output("self->ob_spb.userLong = 0;")
+        Output("self->ob_thiscallback = 0;")
+        Output("Py_XDECREF(self->ob_completion);")
+        Output("Py_XDECREF(self->ob_interrupt);")
+
+    def outputConvert(self):
+        Output("%sint %s_Convert(PyObject *v, %s *p_itself)", self.static, self.prefix, self.itselftype)
+        OutLbrace()
+        self.outputCheckConvertArg()
+        Output("if (!%s_Check(v))", self.prefix)
+        OutLbrace()
+        Output('PyErr_SetString(PyExc_TypeError, "%s required");', self.name)
+        Output("return 0;")
+        OutRbrace()
+        Output("*p_itself = &((%s *)v)->ob_spb;", self.objecttype)
+        Output("return 1;")
+        OutRbrace()
+
 
 sndobject = SndObjectDefinition('SndChannel', 'SndCh', 'SndChannelPtr')
 spbobject = SpbObjectDefinition('SPB', 'SPBObj', 'SPBPtr')
diff --git a/Mac/Modules/te/tescan.py b/Mac/Modules/te/tescan.py
index c81a8bf..f5b6fff 100644
--- a/Mac/Modules/te/tescan.py
+++ b/Mac/Modules/te/tescan.py
@@ -11,57 +11,57 @@
 OBJECT = "TEHandle"
 
 def main():
-	input = LONG + ".h"
-	output = SHORT + "gen.py"
-	defsoutput = TOOLBOXDIR + LONG + ".py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = LONG + ".h"
+    output = SHORT + "gen.py"
+    defsoutput = TOOLBOXDIR + LONG + ".py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[-1]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[-1]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def makeblacklistnames(self):
-		return [
-			"TEDispose",
-			"TEInit",
-##			"TEGetHiliteRgn",
-			]
+    def makeblacklistnames(self):
+        return [
+                "TEDispose",
+                "TEInit",
+##                      "TEGetHiliteRgn",
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"TEClickLoopUPP",
-			"UniversalProcPtr",
-			"WordBreakUPP",
-			"TEDoTextUPP",
-			"TERecalcUPP",
-			"TEFindWordUPP",
-			]
+    def makeblacklisttypes(self):
+        return [
+                "TEClickLoopUPP",
+                "UniversalProcPtr",
+                "WordBreakUPP",
+                "TEDoTextUPP",
+                "TERecalcUPP",
+                "TEFindWordUPP",
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			 
-			# TEContinuousStyle
-			([("short", "mode", "OutMode"), ("TextStyle", "aStyle", "OutMode")],
-			 [("short", "mode", "InOutMode"), ("TextStyle", "aStyle", "InOutMode")])
-			]
-			
+    def makerepairinstructions(self):
+        return [
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                # TEContinuousStyle
+                ([("short", "mode", "OutMode"), ("TextStyle", "aStyle", "OutMode")],
+                 [("short", "mode", "InOutMode"), ("TextStyle", "aStyle", "InOutMode")])
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/te/tesupport.py b/Mac/Modules/te/tesupport.py
index 13f1b97..ad6c053 100644
--- a/Mac/Modules/te/tesupport.py
+++ b/Mac/Modules/te/tesupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'TextEdit.h'		# The Apple header file
-MODNAME = '_TE'				# The name of the module
-OBJECTNAME = 'TE'			# The basic name of the objects used here
-KIND = 'Handle'				# Usually 'Ptr' or 'Handle'
+MACHEADERFILE = 'TextEdit.h'            # The Apple header file
+MODNAME = '_TE'                         # The name of the module
+OBJECTNAME = 'TE'                       # The basic name of the objects used here
+KIND = 'Handle'                         # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'TE'			# The prefix for module-wide routines
-OBJECTTYPE = "TEHandle"		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'TE'                        # The prefix for module-wide routines
+OBJECTTYPE = "TEHandle"         # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -52,137 +52,137 @@
 TextStyle_New(TextStylePtr itself)
 {
 
-	return Py_BuildValue("lllO&", (long)itself->tsFont, (long)itself->tsFace, (long)itself->tsSize, QdRGB_New,
-				&itself->tsColor);
+        return Py_BuildValue("lllO&", (long)itself->tsFont, (long)itself->tsFace, (long)itself->tsSize, QdRGB_New,
+                                &itself->tsColor);
 }
 
 static int
 TextStyle_Convert(PyObject *v, TextStylePtr p_itself)
 {
-	long font, face, size;
-	
-	if( !PyArg_ParseTuple(v, "lllO&", &font, &face, &size, QdRGB_Convert, &p_itself->tsColor) )
-		return 0;
-	p_itself->tsFont = (short)font;
-	p_itself->tsFace = (Style)face;
-	p_itself->tsSize = (short)size;
-	return 1;
+        long font, face, size;
+
+        if( !PyArg_ParseTuple(v, "lllO&", &font, &face, &size, QdRGB_Convert, &p_itself->tsColor) )
+                return 0;
+        p_itself->tsFont = (short)font;
+        p_itself->tsFace = (Style)face;
+        p_itself->tsSize = (short)size;
+        return 1;
 }
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(TEHandle, TEObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(TEHandle, TEObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(TEHandle, TEObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(TEHandle, TEObj_Convert);
 """
 
 class TEMethodGenerator(OSErrWeakLinkMethodGenerator):
-	"""Similar to MethodGenerator, but has self as last argument"""
+    """Similar to MethodGenerator, but has self as last argument"""
 
-	def parseArgumentList(self, args):
-		args, a0 = args[:-1], args[-1]
-		t0, n0, m0 = a0
-		if m0 != InMode:
-			raise ValueError, "method's 'self' must be 'InMode'"
-		self.itself = Variable(t0, "_self->ob_itself", SelfMode)
-		FunctionGenerator.parseArgumentList(self, args)
-		self.argumentList.append(self.itself)
+    def parseArgumentList(self, args):
+        args, a0 = args[:-1], args[-1]
+        t0, n0, m0 = a0
+        if m0 != InMode:
+            raise ValueError, "method's 'self' must be 'InMode'"
+        self.itself = Variable(t0, "_self->ob_itself", SelfMode)
+        FunctionGenerator.parseArgumentList(self, args)
+        self.argumentList.append(self.itself)
 
 
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	# XXXX Could be subtype of Resource
-	# Attributes that can be set.
-	getsetlist = [
-		(
-		'destRect',
-		'return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->destRect);',
-		None,
-		'Destination rectangle'
-		), (
-		'viewRect',
-		'return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->viewRect);',
-		None,
-		'Viewing rectangle'
-		), (
-		'selRect',
-		'return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->selRect);',
-		None,
-		'Selection rectangle'
-		), (
-		'lineHeight',
-		'return Py_BuildValue("h", (*self->ob_itself)->lineHeight);',
-		None,
-		'Height of a line'
-		), (
-		'fontAscent',
-		'return Py_BuildValue("h", (*self->ob_itself)->fontAscent);',
-		None,
-		'Ascent of a line'
-		), (
-		"selPoint",
-		'return Py_BuildValue("O&", PyMac_BuildPoint, (*self->ob_itself)->selPoint);',
-		None,
-		'Selection Point'
-		), (
-		'selStart',
-		'return Py_BuildValue("h", (*self->ob_itself)->selStart);',
-		None,
-		'Start of selection'
-		), (
-		'selEnd',
-		'return Py_BuildValue("h", (*self->ob_itself)->selEnd);',
-		None,
-		'End of selection'
-		), (
-		'active',
-		'return Py_BuildValue("h", (*self->ob_itself)->active);',
-		None,
-		'TBD'
-		), (
-		'just',
-		'return Py_BuildValue("h", (*self->ob_itself)->just);',
-		None,
-		'Justification'
-		), (
-		'teLength',
-		'return Py_BuildValue("h", (*self->ob_itself)->teLength);',
-		None,
-		'TBD'
-		), (
-		'txFont',
-		'return Py_BuildValue("h", (*self->ob_itself)->txFont);',
-		None,
-		'Current font'
-		), (
-		'txFace',
-		'return Py_BuildValue("h", (*self->ob_itself)->txFace);',
-		None,
-		'Current font variant'
-		), (
-		'txMode',
-		'return Py_BuildValue("h", (*self->ob_itself)->txMode);',
-		None,
-		'Current text-drawing mode'
-		), (
-		'txSize',
-		'return Py_BuildValue("h", (*self->ob_itself)->txSize);',
-		None,
-		'Current font size'
-		), (
-		'nLines',
-		'return Py_BuildValue("h", (*self->ob_itself)->nLines);',
-		None,
-		'TBD'
-		)]		
-		
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					PyErr_SetString(TE_Error,"Cannot create null TE");
-					return NULL;
-				}""")
-	def outputFreeIt(self, itselfname):
-		Output("TEDispose(%s);", itselfname)
-		
+    # XXXX Could be subtype of Resource
+    # Attributes that can be set.
+    getsetlist = [
+            (
+            'destRect',
+            'return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->destRect);',
+            None,
+            'Destination rectangle'
+            ), (
+            'viewRect',
+            'return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->viewRect);',
+            None,
+            'Viewing rectangle'
+            ), (
+            'selRect',
+            'return Py_BuildValue("O&", PyMac_BuildRect, &(*self->ob_itself)->selRect);',
+            None,
+            'Selection rectangle'
+            ), (
+            'lineHeight',
+            'return Py_BuildValue("h", (*self->ob_itself)->lineHeight);',
+            None,
+            'Height of a line'
+            ), (
+            'fontAscent',
+            'return Py_BuildValue("h", (*self->ob_itself)->fontAscent);',
+            None,
+            'Ascent of a line'
+            ), (
+            "selPoint",
+            'return Py_BuildValue("O&", PyMac_BuildPoint, (*self->ob_itself)->selPoint);',
+            None,
+            'Selection Point'
+            ), (
+            'selStart',
+            'return Py_BuildValue("h", (*self->ob_itself)->selStart);',
+            None,
+            'Start of selection'
+            ), (
+            'selEnd',
+            'return Py_BuildValue("h", (*self->ob_itself)->selEnd);',
+            None,
+            'End of selection'
+            ), (
+            'active',
+            'return Py_BuildValue("h", (*self->ob_itself)->active);',
+            None,
+            'TBD'
+            ), (
+            'just',
+            'return Py_BuildValue("h", (*self->ob_itself)->just);',
+            None,
+            'Justification'
+            ), (
+            'teLength',
+            'return Py_BuildValue("h", (*self->ob_itself)->teLength);',
+            None,
+            'TBD'
+            ), (
+            'txFont',
+            'return Py_BuildValue("h", (*self->ob_itself)->txFont);',
+            None,
+            'Current font'
+            ), (
+            'txFace',
+            'return Py_BuildValue("h", (*self->ob_itself)->txFace);',
+            None,
+            'Current font variant'
+            ), (
+            'txMode',
+            'return Py_BuildValue("h", (*self->ob_itself)->txMode);',
+            None,
+            'Current text-drawing mode'
+            ), (
+            'txSize',
+            'return Py_BuildValue("h", (*self->ob_itself)->txSize);',
+            None,
+            'Current font size'
+            ), (
+            'nLines',
+            'return Py_BuildValue("h", (*self->ob_itself)->nLines);',
+            None,
+            'TBD'
+            )]
+
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(TE_Error,"Cannot create null TE");
+                                return NULL;
+                        }""")
+    def outputFreeIt(self, itselfname):
+        Output("TEDispose(%s);", itselfname)
+
 
 # From here on it's basically all boiler plate...
 
@@ -214,4 +214,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/waste/wastescan.py b/Mac/Modules/waste/wastescan.py
index 8298f26..b5a2b43 100644
--- a/Mac/Modules/waste/wastescan.py
+++ b/Mac/Modules/waste/wastescan.py
@@ -7,9 +7,9 @@
 from scantools import Scanner
 
 WASTEDIR='/Users/jack/src/waste/C_C++ Headers/'
-		
+
 if not os.path.exists(WASTEDIR):
-	raise 'Error: not found: %s', WASTEDIR
+    raise 'Error: not found: %s', WASTEDIR
 
 OBJECT = "TEHandle"
 SHORT = "waste"
@@ -17,136 +17,136 @@
 OBJECT2 = "WEObjectReference"
 
 def main():
-	input = WASTEDIR + "WASTE.h"
-	output = SHORT + "gen.py"
-	defsoutput = os.path.join(os.path.split(TOOLBOXDIR)[0], "WASTEconst.py")
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-##	scanner.gentypetest(SHORT+"typetest.py")
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	exec "import " + SHORT + "support"
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = WASTEDIR + "WASTE.h"
+    output = SHORT + "gen.py"
+    defsoutput = os.path.join(os.path.split(TOOLBOXDIR)[0], "WASTEconst.py")
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+##      scanner.gentypetest(SHORT+"typetest.py")
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    exec "import " + SHORT + "support"
+    print "=== Done.  It's up to you to compile it now! ==="
 
 #class MyScanner(Scanner_PreUH3):
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[-1]
-			# This is non-functional today
-			if t == OBJECT and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-			else:
-				t, n, m = arglist[0]
-				if t == OBJECT2 and m == "InMode":
-					classname = "Method2"
-					listname = "methods2"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[-1]
+            # This is non-functional today
+            if t == OBJECT and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+            else:
+                t, n, m = arglist[0]
+                if t == OBJECT2 and m == "InMode":
+                    classname = "Method2"
+                    listname = "methods2"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("kPascalStackBased = None # workaround for header parsing\n")
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("kPascalStackBased = None # workaround for header parsing\n")
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 
-	def makeblacklistnames(self):
-		return [
-			"WEDispose",
-			"WESetInfo", # Argument type unknown...
-			"WEGetInfo",
-			"WEVersion", # Unfortunately...
-			"WEPut", # XXXX TBD: needs array of flavortypes.
-			"WEGetOneAttribute", # XXXX TBD: output buffer
-			# Incompatible constant definitions
-			"weDoAutoScroll",
-			"weDoOutlineHilite",
-			"weDoReadOnly",
-			"weDoUndo",
-			"weDoIntCutAndPaste",
-			"weDoDragAndDrop",
-			"weDoInhibitRecal",
-			"weDoUseTempMem",
-			"weDoDrawOffscreen",
-			"weDoInhibitRedraw",
-			"weDoMonoStyled",
-			"weDoMultipleUndo",
-			"weDoNoKeyboardSync",
-			"weDoInhibitICSupport",
-			"weDoInhibitColor",
-			]
+    def makeblacklistnames(self):
+        return [
+                "WEDispose",
+                "WESetInfo", # Argument type unknown...
+                "WEGetInfo",
+                "WEVersion", # Unfortunately...
+                "WEPut", # XXXX TBD: needs array of flavortypes.
+                "WEGetOneAttribute", # XXXX TBD: output buffer
+                # Incompatible constant definitions
+                "weDoAutoScroll",
+                "weDoOutlineHilite",
+                "weDoReadOnly",
+                "weDoUndo",
+                "weDoIntCutAndPaste",
+                "weDoDragAndDrop",
+                "weDoInhibitRecal",
+                "weDoUseTempMem",
+                "weDoDrawOffscreen",
+                "weDoInhibitRedraw",
+                "weDoMonoStyled",
+                "weDoMultipleUndo",
+                "weDoNoKeyboardSync",
+                "weDoInhibitICSupport",
+                "weDoInhibitColor",
+                ]
 
-	def makeblacklisttypes(self):
-		return [
-			"DragReference",	# For now...
-			"UniversalProcPtr",
-			"WEFontIDToNameUPP",
-			"WEFontNameToIDUPP",
-			"WEClickLoopUPP",
-			"WEScrollUPP",
-			"WETSMPreUpdateUPP",
-			"WETSMPostUpdateUPP",
-			"WEPreTrackDragUPP",
-			"WETranslateDragUPP",
-			"WEHiliteDropAreaUPP",
-			"WEDrawTextUPP",
-			"WEDrawTSMHiliteUPP",
-			"WEPixelToCharUPP",
-			"WECharToPixelUPP",
-			"WELineBreakUPP",
-			"WEWordBreakUPP",
-			"WECharByteUPP",
-			"WECharTypeUPP",
-			"WEEraseUPP",
-			"WEFluxUPP",
-			"WENewObjectUPP",
-			"WEDisposeObjectUPP",
-			"WEDrawObjectUPP",
-			"WEClickObjectUPP",
-			"WEStreamObjectUPP",
-			"WEHoverObjectUPP",
-			"WERuler",		# XXXX To be done
-			"WERuler_ptr",	# ditto
-			"WEParaInfo",	# XXXX To be done
-			"WEPrintSession",	# XXXX To be done
-			"WEPrintOptions_ptr", # XXXX To be done
-			]
+    def makeblacklisttypes(self):
+        return [
+                "DragReference",        # For now...
+                "UniversalProcPtr",
+                "WEFontIDToNameUPP",
+                "WEFontNameToIDUPP",
+                "WEClickLoopUPP",
+                "WEScrollUPP",
+                "WETSMPreUpdateUPP",
+                "WETSMPostUpdateUPP",
+                "WEPreTrackDragUPP",
+                "WETranslateDragUPP",
+                "WEHiliteDropAreaUPP",
+                "WEDrawTextUPP",
+                "WEDrawTSMHiliteUPP",
+                "WEPixelToCharUPP",
+                "WECharToPixelUPP",
+                "WELineBreakUPP",
+                "WEWordBreakUPP",
+                "WECharByteUPP",
+                "WECharTypeUPP",
+                "WEEraseUPP",
+                "WEFluxUPP",
+                "WENewObjectUPP",
+                "WEDisposeObjectUPP",
+                "WEDrawObjectUPP",
+                "WEClickObjectUPP",
+                "WEStreamObjectUPP",
+                "WEHoverObjectUPP",
+                "WERuler",              # XXXX To be done
+                "WERuler_ptr",  # ditto
+                "WEParaInfo",   # XXXX To be done
+                "WEPrintSession",       # XXXX To be done
+                "WEPrintOptions_ptr", # XXXX To be done
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			([("void_ptr", "*", "InMode"), ("SInt32", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
+    def makerepairinstructions(self):
+        return [
+                ([("void_ptr", "*", "InMode"), ("SInt32", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
 
-			# WEContinuousStyle
-			([("WEStyleMode", "ioMode", "OutMode"), ("TextStyle", "outTextStyle", "OutMode")],
-			 [("WEStyleMode", "*", "InOutMode"), ("TextStyle", "*", "*")]),
-			 
-			# WECopyRange
-			([('Handle', 'outText', 'InMode'), ('StScrpHandle', 'outStyles', 'InMode'),
-    			('WESoupHandle', 'outSoup', 'InMode')],
-    		 [('OptHandle', '*', '*'), ('OptStScrpHandle', '*', '*'),
-    			('OptSoupHandle', '*', '*')]),
-			 
-			# WEInsert
-			([('StScrpHandle', 'inStyles', 'InMode'), ('WESoupHandle', 'inSoup', 'InMode')],
-    		 [('OptStScrpHandle', '*', '*'), ('OptSoupHandle', '*', '*')]),
-    		 
-    		# WEGetObjectOwner
-    		("WEGetObjectOwner",
-    		 [('WEReference', '*', 'ReturnMode')],
-    		 [('ExistingWEReference', '*', 'ReturnMode')]),
-    		 
-    		# WEFindParagraph
-    		([("char_ptr", "inKey", "InMode")],
-    		 [("stringptr", "*", "*")]),
-			
-			# WESetOneAttribute
-			([("void_ptr", "*", "InMode"), ("ByteCount", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			]
-			
+                # WEContinuousStyle
+                ([("WEStyleMode", "ioMode", "OutMode"), ("TextStyle", "outTextStyle", "OutMode")],
+                 [("WEStyleMode", "*", "InOutMode"), ("TextStyle", "*", "*")]),
+
+                # WECopyRange
+                ([('Handle', 'outText', 'InMode'), ('StScrpHandle', 'outStyles', 'InMode'),
+                ('WESoupHandle', 'outSoup', 'InMode')],
+         [('OptHandle', '*', '*'), ('OptStScrpHandle', '*', '*'),
+                ('OptSoupHandle', '*', '*')]),
+
+                # WEInsert
+                ([('StScrpHandle', 'inStyles', 'InMode'), ('WESoupHandle', 'inSoup', 'InMode')],
+         [('OptStScrpHandle', '*', '*'), ('OptSoupHandle', '*', '*')]),
+
+        # WEGetObjectOwner
+        ("WEGetObjectOwner",
+         [('WEReference', '*', 'ReturnMode')],
+         [('ExistingWEReference', '*', 'ReturnMode')]),
+
+        # WEFindParagraph
+        ([("char_ptr", "inKey", "InMode")],
+         [("stringptr", "*", "*")]),
+
+                # WESetOneAttribute
+                ([("void_ptr", "*", "InMode"), ("ByteCount", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+                ]
+
 if __name__ == "__main__":
-	main()
+    main()
diff --git a/Mac/Modules/waste/wastesupport.py b/Mac/Modules/waste/wastesupport.py
index c669fa1..13ddc40 100644
--- a/Mac/Modules/waste/wastesupport.py
+++ b/Mac/Modules/waste/wastesupport.py
@@ -6,18 +6,18 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'WASTE.h'		# The Apple header file
-MODNAME = 'waste'				# The name of the module
-OBJECTNAME = 'waste'			# The basic name of the objects used here
-KIND = 'Ptr'				# Usually 'Ptr' or 'Handle'
+MACHEADERFILE = 'WASTE.h'               # The Apple header file
+MODNAME = 'waste'                               # The name of the module
+OBJECTNAME = 'waste'                    # The basic name of the objects used here
+KIND = 'Ptr'                            # Usually 'Ptr' or 'Handle'
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = MODNAME			# The prefix for module-wide routines
-OBJECTTYPE = "WEReference"		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = MODNAME                     # The prefix for module-wide routines
+OBJECTTYPE = "WEReference"              # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = 'wastegen.py' # The file generated by the scanner
-TYPETESTFILE = 'wastetypetest.py'	# Another file generated by the scanner
-OUTPUTFILE = "wastemodule.c"	# The file generated by this program
+TYPETESTFILE = 'wastetypetest.py'       # Another file generated by the scanner
+OUTPUTFILE = "wastemodule.c"    # The file generated by this program
 
 from macsupport import *
 
@@ -83,21 +83,21 @@
 TextStyle_New(TextStylePtr itself)
 {
 
-	return Py_BuildValue("lllO&", (long)itself->tsFont, (long)itself->tsFace, (long)itself->tsSize, QdRGB_New,
-				&itself->tsColor);
+        return Py_BuildValue("lllO&", (long)itself->tsFont, (long)itself->tsFace, (long)itself->tsSize, QdRGB_New,
+                                &itself->tsColor);
 }
 
 static int
 TextStyle_Convert(PyObject *v, TextStylePtr p_itself)
 {
-	long font, face, size;
-	
-	if( !PyArg_ParseTuple(v, "lllO&", &font, &face, &size, QdRGB_Convert, &p_itself->tsColor) )
-		return 0;
-	p_itself->tsFont = (short)font;
-	p_itself->tsFace = (Style)face;
-	p_itself->tsSize = (short)size;
-	return 1;
+        long font, face, size;
+
+        if( !PyArg_ParseTuple(v, "lllO&", &font, &face, &size, QdRGB_Convert, &p_itself->tsColor) )
+                return 0;
+        p_itself->tsFont = (short)font;
+        p_itself->tsFace = (Style)face;
+        p_itself->tsSize = (short)size;
+        return 1;
 }
 
 /*
@@ -107,33 +107,33 @@
 RunInfo_New(WERunInfo *itself)
 {
 
-	return Py_BuildValue("llhhO&O&", itself->runStart, itself->runEnd, itself->runHeight,
-		itself->runAscent, TextStyle_New, &itself->runStyle, WEOObj_New, itself->runObject);
+        return Py_BuildValue("llhhO&O&", itself->runStart, itself->runEnd, itself->runHeight,
+                itself->runAscent, TextStyle_New, &itself->runStyle, WEOObj_New, itself->runObject);
 }
 
 /* Conversion of long points and rects */
 int
 LongRect_Convert(PyObject *v, LongRect *r)
 {
-	return PyArg_Parse(v, "(llll)", &r->left, &r->top, &r->right, &r->bottom);
+        return PyArg_Parse(v, "(llll)", &r->left, &r->top, &r->right, &r->bottom);
 }
 
 PyObject *
 LongRect_New(LongRect *r)
 {
-	return Py_BuildValue("(llll)", r->left, r->top, r->right, r->bottom);
+        return Py_BuildValue("(llll)", r->left, r->top, r->right, r->bottom);
 }
 
 int
 LongPt_Convert(PyObject *v, LongPt *p)
 {
-	return PyArg_Parse(v, "(ll)", &p->h, &p->v);
+        return PyArg_Parse(v, "(ll)", &p->h, &p->v);
 }
 
 PyObject *
 LongPt_New(LongPt *p)
 {
-	return Py_BuildValue("(ll)", p->h, p->v);
+        return Py_BuildValue("(ll)", p->h, p->v);
 }
 
 /* Stuff for the callbacks: */
@@ -146,110 +146,110 @@
 static OSErr
 any_handler(WESelector what, WEObjectReference who, PyObject *args, PyObject **rv)
 {
-	FlavorType tp;
-	PyObject *key, *func;
-	
-	if ( args == NULL ) return errAECorruptData;
-	
-	tp = WEGetObjectType(who);
-	
-	if( (key=Py_BuildValue("O&O&", PyMac_BuildOSType, tp, PyMac_BuildOSType, what)) == NULL)
-		return errAECorruptData;
-	if( (func = PyDict_GetItem(callbackdict, key)) == NULL ) {
-		Py_DECREF(key);
-		return errAEHandlerNotFound;
-	}
-	Py_INCREF(func);
-	*rv = PyEval_CallObject(func, args);
-	Py_DECREF(func);
-	Py_DECREF(key);
-	if ( *rv == NULL ) {
-		PySys_WriteStderr("--Exception in callback: ");
-		PyErr_Print();
-		return errAEReplyNotArrived;
-	}
-	return 0;
+        FlavorType tp;
+        PyObject *key, *func;
+
+        if ( args == NULL ) return errAECorruptData;
+
+        tp = WEGetObjectType(who);
+
+        if( (key=Py_BuildValue("O&O&", PyMac_BuildOSType, tp, PyMac_BuildOSType, what)) == NULL)
+                return errAECorruptData;
+        if( (func = PyDict_GetItem(callbackdict, key)) == NULL ) {
+                Py_DECREF(key);
+                return errAEHandlerNotFound;
+        }
+        Py_INCREF(func);
+        *rv = PyEval_CallObject(func, args);
+        Py_DECREF(func);
+        Py_DECREF(key);
+        if ( *rv == NULL ) {
+                PySys_WriteStderr("--Exception in callback: ");
+                PyErr_Print();
+                return errAEReplyNotArrived;
+        }
+        return 0;
 }
 
 static pascal OSErr
 my_new_handler(Point *objectSize, WEObjectReference objref)
 {
-	PyObject *args=NULL, *rv=NULL;
-	OSErr err;
-	
-	args=Py_BuildValue("(O&)", WEOObj_New, objref);
-	err = any_handler(weNewHandler, objref, args, &rv);
-	if (!err) {
-		if (!PyMac_GetPoint(rv, objectSize) )
-			err = errAECoercionFail;
-	}
-	if ( args ) {
-		Py_DECREF(args);
-	}
-	if ( rv ) {
-		Py_DECREF(rv);
-	}
-	return err;
+        PyObject *args=NULL, *rv=NULL;
+        OSErr err;
+
+        args=Py_BuildValue("(O&)", WEOObj_New, objref);
+        err = any_handler(weNewHandler, objref, args, &rv);
+        if (!err) {
+                if (!PyMac_GetPoint(rv, objectSize) )
+                        err = errAECoercionFail;
+        }
+        if ( args ) {
+                Py_DECREF(args);
+        }
+        if ( rv ) {
+                Py_DECREF(rv);
+        }
+        return err;
 }
 
 static pascal OSErr
 my_dispose_handler(WEObjectReference objref)
 {
-	PyObject *args=NULL, *rv=NULL;
-	OSErr err;
-	
-	args=Py_BuildValue("(O&)", WEOObj_New, objref);
-	err = any_handler(weDisposeHandler, objref, args, &rv);
-	if ( args ) {
-		Py_DECREF(args);
-	}
-	if ( rv ) {
-		Py_DECREF(rv);
-	}
-	return err;
+        PyObject *args=NULL, *rv=NULL;
+        OSErr err;
+
+        args=Py_BuildValue("(O&)", WEOObj_New, objref);
+        err = any_handler(weDisposeHandler, objref, args, &rv);
+        if ( args ) {
+                Py_DECREF(args);
+        }
+        if ( rv ) {
+                Py_DECREF(rv);
+        }
+        return err;
 }
 
 static pascal OSErr
 my_draw_handler(const Rect *destRect, WEObjectReference objref)
 {
-	PyObject *args=NULL, *rv=NULL;
-	OSErr err;
-	
-	args=Py_BuildValue("O&O&", PyMac_BuildRect, destRect, WEOObj_New, objref);
-	err = any_handler(weDrawHandler, objref, args, &rv);
-	if ( args ) {
-		Py_DECREF(args);
-	}
-	if ( rv ) {
-		Py_DECREF(rv);
-	}
-	return err;
+        PyObject *args=NULL, *rv=NULL;
+        OSErr err;
+
+        args=Py_BuildValue("O&O&", PyMac_BuildRect, destRect, WEOObj_New, objref);
+        err = any_handler(weDrawHandler, objref, args, &rv);
+        if ( args ) {
+                Py_DECREF(args);
+        }
+        if ( rv ) {
+                Py_DECREF(rv);
+        }
+        return err;
 }
 
 static pascal Boolean
 my_click_handler(Point hitPt, EventModifiers modifiers,
-		unsigned long clickTime, WEObjectReference objref)
+                unsigned long clickTime, WEObjectReference objref)
 {
-	PyObject *args=NULL, *rv=NULL;
-	int retvalue;
-	OSErr err;
-	
-	args=Py_BuildValue("O&llO&", PyMac_BuildPoint, hitPt,
-			(long)modifiers, (long)clickTime, WEOObj_New, objref);
-	err = any_handler(weClickHandler, objref, args, &rv);
-	if (!err)
-		retvalue = PyInt_AsLong(rv);
-	else
-		retvalue = 0;
-	if ( args ) {
-		Py_DECREF(args);
-	}
-	if ( rv ) {
-		Py_DECREF(rv);
-	}
-	return retvalue;
+        PyObject *args=NULL, *rv=NULL;
+        int retvalue;
+        OSErr err;
+
+        args=Py_BuildValue("O&llO&", PyMac_BuildPoint, hitPt,
+                        (long)modifiers, (long)clickTime, WEOObj_New, objref);
+        err = any_handler(weClickHandler, objref, args, &rv);
+        if (!err)
+                retvalue = PyInt_AsLong(rv);
+        else
+                retvalue = 0;
+        if ( args ) {
+                Py_DECREF(args);
+        }
+        if ( rv ) {
+                Py_DECREF(rv);
+        }
+        return retvalue;
 }
-		
+
 
 """
 finalstuff = finalstuff + """
@@ -257,62 +257,62 @@
 
 PyObject *
 ExistingwasteObj_New(w)
-	WEReference w;
+        WEReference w;
 {
-	PyObject *it = NULL;
-	
-	if (w == NULL)
-		it = NULL;
-	else
-		WEGetInfo(weRefCon, (void *)&it, w);
-	if (it == NULL || ((wasteObject *)it)->ob_itself != w)
-		it = Py_None;
-	Py_INCREF(it);
-	return it;
+        PyObject *it = NULL;
+
+        if (w == NULL)
+                it = NULL;
+        else
+                WEGetInfo(weRefCon, (void *)&it, w);
+        if (it == NULL || ((wasteObject *)it)->ob_itself != w)
+                it = Py_None;
+        Py_INCREF(it);
+        return it;
 }
 """
 
 class WEMethodGenerator(OSErrMethodGenerator):
-	"""Similar to MethodGenerator, but has self as last argument"""
+    """Similar to MethodGenerator, but has self as last argument"""
 
-	def parseArgumentList(self, args):
-		args, a0 = args[:-1], args[-1]
-		t0, n0, m0 = a0
-		if m0 != InMode:
-			raise ValueError, "method's 'self' must be 'InMode'"
-		self.itself = Variable(t0, "_self->ob_itself", SelfMode)
-		FunctionGenerator.parseArgumentList(self, args)
-		self.argumentList.append(self.itself)
+    def parseArgumentList(self, args):
+        args, a0 = args[:-1], args[-1]
+        t0, n0, m0 = a0
+        if m0 != InMode:
+            raise ValueError, "method's 'self' must be 'InMode'"
+        self.itself = Variable(t0, "_self->ob_itself", SelfMode)
+        FunctionGenerator.parseArgumentList(self, args)
+        self.argumentList.append(self.itself)
 
 
 
 class WEObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					PyErr_SetString(waste_Error,"Cannot create null WE");
-					return NULL;
-				}""")
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("WESetInfo(weRefCon, (void *)&it, itself);")
-	def outputFreeIt(self, itselfname):
-		Output("WEDispose(%s);", itselfname)
-		
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                PyErr_SetString(waste_Error,"Cannot create null WE");
+                                return NULL;
+                        }""")
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("WESetInfo(weRefCon, (void *)&it, itself);")
+    def outputFreeIt(self, itselfname):
+        Output("WEDispose(%s);", itselfname)
+
 class WEOObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("""if (itself == NULL) {
-					Py_INCREF(Py_None);
-					return Py_None;
-				}""")
-				
+    def outputCheckNewArg(self):
+        Output("""if (itself == NULL) {
+                                Py_INCREF(Py_None);
+                                return Py_None;
+                        }""")
+
 variablestuff = """
-	callbackdict = PyDict_New();
-	if (callbackdict == NULL || PyDict_SetItemString(d, "callbacks", callbackdict) != 0)
-		return;
-	upp_new_handler = NewWENewObjectProc(my_new_handler);
-	upp_dispose_handler = NewWEDisposeObjectProc(my_dispose_handler);
-	upp_draw_handler = NewWEDrawObjectProc(my_draw_handler);
-	upp_click_handler = NewWEClickObjectProc(my_click_handler);
+        callbackdict = PyDict_New();
+        if (callbackdict == NULL || PyDict_SetItemString(d, "callbacks", callbackdict) != 0)
+                return;
+        upp_new_handler = NewWENewObjectProc(my_new_handler);
+        upp_dispose_handler = NewWEDisposeObjectProc(my_dispose_handler);
+        upp_draw_handler = NewWEDrawObjectProc(my_draw_handler);
+        upp_click_handler = NewWEClickObjectProc(my_click_handler);
 """
 
 
@@ -341,78 +341,78 @@
 
 # A function written by hand:
 stdhandlers_body = """
-	OSErr err;
-	// install the sample object handlers for pictures and sounds
-#define	kTypePicture			'PICT'
-#define	kTypeSound				'snd '
-	
-	if ( !PyArg_ParseTuple(_args, "") ) return NULL;
-	
-	if ((err = WEInstallObjectHandler(kTypePicture, weNewHandler,
-				(UniversalProcPtr) NewWENewObjectProc(HandleNewPicture), NULL)) != noErr)
-		goto cleanup;
-	
-	if ((err = WEInstallObjectHandler(kTypePicture, weDisposeHandler,
-				(UniversalProcPtr) NewWEDisposeObjectProc(HandleDisposePicture), NULL)) != noErr)
-		goto cleanup;
-	
-	if ((err = WEInstallObjectHandler(kTypePicture, weDrawHandler,
-				(UniversalProcPtr) NewWEDrawObjectProc(HandleDrawPicture), NULL)) != noErr)
-		goto cleanup;
-	
-	if ((err = WEInstallObjectHandler(kTypeSound, weNewHandler,
-				(UniversalProcPtr) NewWENewObjectProc(HandleNewSound), NULL)) != noErr)
-		goto cleanup;
-	
-	if ((err = WEInstallObjectHandler(kTypeSound, weDrawHandler,
-				(UniversalProcPtr) NewWEDrawObjectProc(HandleDrawSound), NULL)) != noErr)
-		goto cleanup;
-	
-	if ((err = WEInstallObjectHandler(kTypeSound, weClickHandler,
-				(UniversalProcPtr) NewWEClickObjectProc(HandleClickSound), NULL)) != noErr)
-		goto cleanup;
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
-	
+        OSErr err;
+        // install the sample object handlers for pictures and sounds
+#define kTypePicture                    'PICT'
+#define kTypeSound                              'snd '
+
+        if ( !PyArg_ParseTuple(_args, "") ) return NULL;
+
+        if ((err = WEInstallObjectHandler(kTypePicture, weNewHandler,
+                                (UniversalProcPtr) NewWENewObjectProc(HandleNewPicture), NULL)) != noErr)
+                goto cleanup;
+
+        if ((err = WEInstallObjectHandler(kTypePicture, weDisposeHandler,
+                                (UniversalProcPtr) NewWEDisposeObjectProc(HandleDisposePicture), NULL)) != noErr)
+                goto cleanup;
+
+        if ((err = WEInstallObjectHandler(kTypePicture, weDrawHandler,
+                                (UniversalProcPtr) NewWEDrawObjectProc(HandleDrawPicture), NULL)) != noErr)
+                goto cleanup;
+
+        if ((err = WEInstallObjectHandler(kTypeSound, weNewHandler,
+                                (UniversalProcPtr) NewWENewObjectProc(HandleNewSound), NULL)) != noErr)
+                goto cleanup;
+
+        if ((err = WEInstallObjectHandler(kTypeSound, weDrawHandler,
+                                (UniversalProcPtr) NewWEDrawObjectProc(HandleDrawSound), NULL)) != noErr)
+                goto cleanup;
+
+        if ((err = WEInstallObjectHandler(kTypeSound, weClickHandler,
+                                (UniversalProcPtr) NewWEClickObjectProc(HandleClickSound), NULL)) != noErr)
+                goto cleanup;
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
+
 cleanup:
-	return PyMac_Error(err);
+        return PyMac_Error(err);
 """
 
 inshandler_body = """
-	OSErr err;
-	FlavorType objectType;
-	WESelector selector;
-	PyObject *py_handler;
-	UniversalProcPtr handler;
-	WEReference we = NULL;
-	PyObject *key;
-	
-	
-	if ( !PyArg_ParseTuple(_args, "O&O&O|O&",
-			PyMac_GetOSType, &objectType,
-			PyMac_GetOSType, &selector,
-			&py_handler,
-			WEOObj_Convert, &we) ) return NULL;
-			
-	if ( selector == weNewHandler ) handler = (UniversalProcPtr)upp_new_handler;
-	else if ( selector == weDisposeHandler ) handler = (UniversalProcPtr)upp_dispose_handler;
-	else if ( selector == weDrawHandler ) handler = (UniversalProcPtr)upp_draw_handler;
-	else if ( selector == weClickHandler ) handler = (UniversalProcPtr)upp_click_handler;
-	else return PyMac_Error(weUndefinedSelectorErr);
-			
-	if ((key = Py_BuildValue("O&O&", 
-			PyMac_BuildOSType, objectType, 
-			PyMac_BuildOSType, selector)) == NULL )
-		return NULL;
-		
-	PyDict_SetItem(callbackdict, key, py_handler);
-	
-	err = WEInstallObjectHandler(objectType, selector, handler, we);
-	if ( err ) return PyMac_Error(err);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
+        OSErr err;
+        FlavorType objectType;
+        WESelector selector;
+        PyObject *py_handler;
+        UniversalProcPtr handler;
+        WEReference we = NULL;
+        PyObject *key;
+
+
+        if ( !PyArg_ParseTuple(_args, "O&O&O|O&",
+                        PyMac_GetOSType, &objectType,
+                        PyMac_GetOSType, &selector,
+                        &py_handler,
+                        WEOObj_Convert, &we) ) return NULL;
+
+        if ( selector == weNewHandler ) handler = (UniversalProcPtr)upp_new_handler;
+        else if ( selector == weDisposeHandler ) handler = (UniversalProcPtr)upp_dispose_handler;
+        else if ( selector == weDrawHandler ) handler = (UniversalProcPtr)upp_draw_handler;
+        else if ( selector == weClickHandler ) handler = (UniversalProcPtr)upp_click_handler;
+        else return PyMac_Error(weUndefinedSelectorErr);
+
+        if ((key = Py_BuildValue("O&O&",
+                        PyMac_BuildOSType, objectType,
+                        PyMac_BuildOSType, selector)) == NULL )
+                return NULL;
+
+        PyDict_SetItem(callbackdict, key, py_handler);
+
+        err = WEInstallObjectHandler(objectType, selector, handler, we);
+        if ( err ) return PyMac_Error(err);
+        Py_INCREF(Py_None);
+        _res = Py_None;
+        return _res;
 """
 
 stdhand = ManualGenerator("STDObjectHandlers", stdhandlers_body)
@@ -442,4 +442,3 @@
 # generate output (open the output file as late as possible)
 SetOutputFileName(OUTPUTFILE)
 module.generate()
-
diff --git a/Mac/Modules/win/winedit.py b/Mac/Modules/win/winedit.py
index d79356f..01cfe86 100644
--- a/Mac/Modules/win/winedit.py
+++ b/Mac/Modules/win/winedit.py
@@ -7,25 +7,25 @@
 methods.append(f)
 
 f = Method(void, 'GetWindowStructureRgn',
-	(WindowRef, 'theWindow', InMode),
-	(RgnHandle, 'r', InMode),
+        (WindowRef, 'theWindow', InMode),
+        (RgnHandle, 'r', InMode),
 )
 methods.append(f)
 
 f = Method(void, 'GetWindowContentRgn',
-	(WindowRef, 'theWindow', InMode),
-	(RgnHandle, 'r', InMode),
+        (WindowRef, 'theWindow', InMode),
+        (RgnHandle, 'r', InMode),
 )
 methods.append(f)
 
 f = Method(void, 'GetWindowUpdateRgn',
-	(WindowRef, 'theWindow', InMode),
-	(RgnHandle, 'r', InMode),
+        (WindowRef, 'theWindow', InMode),
+        (RgnHandle, 'r', InMode),
 )
 methods.append(f)
 
 f = Method(ExistingWindowPtr, 'GetNextWindow',
-	(WindowRef, 'theWindow', InMode),
+        (WindowRef, 'theWindow', InMode),
 )
 methods.append(f)
 
@@ -54,18 +54,16 @@
 AutoDispose_body = """
 int onoff, old = 0;
 if (!PyArg_ParseTuple(_args, "i", &onoff))
-	return NULL;
+        return NULL;
 if ( _self->ob_freeit )
-	old = 1;
+        old = 1;
 if ( onoff )
-	_self->ob_freeit = PyMac_AutoDisposeWindow;
+        _self->ob_freeit = PyMac_AutoDisposeWindow;
 else
-	_self->ob_freeit = NULL;
+        _self->ob_freeit = NULL;
 _res = Py_BuildValue("i", old);
 return _res;
 """
 f = ManualGenerator("AutoDispose", AutoDispose_body)
 f.docstring = lambda: "(int)->int. Automatically DisposeHandle the object on Python object cleanup"
 methods.append(f)
-
-
diff --git a/Mac/Modules/win/winscan.py b/Mac/Modules/win/winscan.py
index 6b08c00..f78935d 100644
--- a/Mac/Modules/win/winscan.py
+++ b/Mac/Modules/win/winscan.py
@@ -7,125 +7,124 @@
 from scantools import Scanner
 
 def main():
-	input = "MacWindows.h"
-	output = "wingen.py"
-	defsoutput = TOOLBOXDIR + "Windows.py"
-	scanner = MyScanner(input, output, defsoutput)
-	scanner.scan()
-	scanner.close()
-	print "=== Testing definitions output code ==="
-	execfile(defsoutput, {}, {})
-	print "=== Done scanning and generating, now importing the generated code... ==="
-	import winsupport
-	print "=== Done.  It's up to you to compile it now! ==="
+    input = "MacWindows.h"
+    output = "wingen.py"
+    defsoutput = TOOLBOXDIR + "Windows.py"
+    scanner = MyScanner(input, output, defsoutput)
+    scanner.scan()
+    scanner.close()
+    print "=== Testing definitions output code ==="
+    execfile(defsoutput, {}, {})
+    print "=== Done scanning and generating, now importing the generated code... ==="
+    import winsupport
+    print "=== Done.  It's up to you to compile it now! ==="
 
 class MyScanner(Scanner):
 
-	def destination(self, type, name, arglist):
-		classname = "Function"
-		listname = "functions"
-		if arglist:
-			t, n, m = arglist[0]
-			if t in ("WindowPtr", "WindowPeek", "WindowRef") and m == "InMode":
-				classname = "Method"
-				listname = "methods"
-		return classname, listname
+    def destination(self, type, name, arglist):
+        classname = "Function"
+        listname = "functions"
+        if arglist:
+            t, n, m = arglist[0]
+            if t in ("WindowPtr", "WindowPeek", "WindowRef") and m == "InMode":
+                classname = "Method"
+                listname = "methods"
+        return classname, listname
 
-	def writeinitialdefs(self):
-		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
-		self.defsfile.write("false = 0\n")
-		self.defsfile.write("true = 1\n")
-		self.defsfile.write("kWindowNoConstrainAttribute = 0x80000000\n")
+    def writeinitialdefs(self):
+        self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+        self.defsfile.write("false = 0\n")
+        self.defsfile.write("true = 1\n")
+        self.defsfile.write("kWindowNoConstrainAttribute = 0x80000000\n")
 
-	def makeblacklistnames(self):
-		return [
-			'DisposeWindow', # Implied when the object is deleted
-			'CloseWindow',
-			'SetWindowProperty',	# For the moment
-			'GetWindowProperty',
-			'GetWindowPropertySize',
-			'RemoveWindowProperty',
-			'MacCloseWindow',
-			'GetWindowList', # Don't know whether this is safe...
-			# Constants with funny definitions
-			'kMouseUpOutOfSlop',
-			'kAllWindowClasses',
-			'kWindowNoConstrainAttribute',
-			# OS8 only:
-			'GetAuxWin',
-			'GetWindowDataHandle',
-			'SaveOld',
-			'DrawNew',
-			'SetWinColor',
-			'SetDeskCPat',
-			'InitWindows',
-			'InitFloatingWindows',
-			'GetWMgrPort',
-			'GetCWMgrPort',
-			'ValidRgn',		# Use versions with Window in their name
-			'ValidRect',
-			'InvalRgn',
-			'InvalRect',
-			'IsValidWindowPtr', # I think this is useless for Python, but not sure...
-			'GetWindowZoomFlag',	# Not available in Carbon
-			'GetWindowTitleWidth',	# Ditto
-			'GetWindowGoAwayFlag',
-			'GetWindowSpareFlag',
-			]
-						
-	def makeblacklisttypes(self):
-		return [
-			'ProcPtr',
-			'DragGrayRgnUPP',
-			'WindowPaintUPP',
-			'Collection',		# For now, to be done later
-			'WindowDefSpec',	# Too difficult for now
-			'WindowDefSpec_ptr',
-			'EventRef', #TBD
-			]
+    def makeblacklistnames(self):
+        return [
+                'DisposeWindow', # Implied when the object is deleted
+                'CloseWindow',
+                'SetWindowProperty',    # For the moment
+                'GetWindowProperty',
+                'GetWindowPropertySize',
+                'RemoveWindowProperty',
+                'MacCloseWindow',
+                'GetWindowList', # Don't know whether this is safe...
+                # Constants with funny definitions
+                'kMouseUpOutOfSlop',
+                'kAllWindowClasses',
+                'kWindowNoConstrainAttribute',
+                # OS8 only:
+                'GetAuxWin',
+                'GetWindowDataHandle',
+                'SaveOld',
+                'DrawNew',
+                'SetWinColor',
+                'SetDeskCPat',
+                'InitWindows',
+                'InitFloatingWindows',
+                'GetWMgrPort',
+                'GetCWMgrPort',
+                'ValidRgn',             # Use versions with Window in their name
+                'ValidRect',
+                'InvalRgn',
+                'InvalRect',
+                'IsValidWindowPtr', # I think this is useless for Python, but not sure...
+                'GetWindowZoomFlag',    # Not available in Carbon
+                'GetWindowTitleWidth',  # Ditto
+                'GetWindowGoAwayFlag',
+                'GetWindowSpareFlag',
+                ]
 
-	def makerepairinstructions(self):
-		return [
-			
-			# GetWTitle
-			([("Str255", "*", "InMode")],
-			 [("*", "*", "OutMode")]),
-			
-			([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
-			 [("InBuffer", "*", "*")]),
-			
-			([("void", "*", "OutMode"), ("long", "*", "InMode"),
-			                            ("long", "*", "OutMode")],
-			 [("VarVarOutBuffer", "*", "InOutMode")]),
-			
-			([("void", "wStorage", "OutMode")],
-			 [("NullStorage", "*", "InMode")]),
-			
-			# match FindWindowOfClass
-			([("WindowRef", "outWindow", "OutMode"), ("WindowPartCode", "outWindowPart", "OutMode")],
-			 [("ExistingWindowPtr", "*", "OutMode"), ("WindowPartCode", "outWindowPart", "OutMode")]),
-		    # then match CreateNewWindow and CreateWindowFromResource
-			([("WindowRef", "outWindow", "OutMode")],
-			 [("WindowRef", "*", "*")]),
-			
-			([("WindowPtr", "*", "OutMode")],
-			 [("ExistingWindowPtr", "*", "*")]),
-			([("WindowRef", "*", "OutMode")],	# Same, but other style headerfiles
-			 [("ExistingWindowPtr", "*", "*")]),
-			
-			([("WindowPtr", "FrontWindow", "ReturnMode")],
-			 [("ExistingWindowPtr", "*", "*")]),
-			([("WindowRef", "FrontWindow", "ReturnMode")],	# Ditto
-			 [("ExistingWindowPtr", "*", "*")]),
-			([("WindowPtr", "FrontNonFloatingWindow", "ReturnMode")],
-			 [("ExistingWindowPtr", "*", "*")]),
-			([("WindowRef", "FrontNonFloatingWindow", "ReturnMode")],	# Ditto
-			 [("ExistingWindowPtr", "*", "*")]),
-			 
-			([("Rect_ptr", "*", "ReturnMode")], # GetWindowXXXState accessors
-			 [("void", "*", "ReturnMode")]),
-			]
+    def makeblacklisttypes(self):
+        return [
+                'ProcPtr',
+                'DragGrayRgnUPP',
+                'WindowPaintUPP',
+                'Collection',           # For now, to be done later
+                'WindowDefSpec',        # Too difficult for now
+                'WindowDefSpec_ptr',
+                'EventRef', #TBD
+                ]
+
+    def makerepairinstructions(self):
+        return [
+
+                # GetWTitle
+                ([("Str255", "*", "InMode")],
+                 [("*", "*", "OutMode")]),
+
+                ([("void_ptr", "*", "InMode"), ("long", "*", "InMode")],
+                 [("InBuffer", "*", "*")]),
+
+                ([("void", "*", "OutMode"), ("long", "*", "InMode"),
+                                            ("long", "*", "OutMode")],
+                 [("VarVarOutBuffer", "*", "InOutMode")]),
+
+                ([("void", "wStorage", "OutMode")],
+                 [("NullStorage", "*", "InMode")]),
+
+                # match FindWindowOfClass
+                ([("WindowRef", "outWindow", "OutMode"), ("WindowPartCode", "outWindowPart", "OutMode")],
+                 [("ExistingWindowPtr", "*", "OutMode"), ("WindowPartCode", "outWindowPart", "OutMode")]),
+            # then match CreateNewWindow and CreateWindowFromResource
+                ([("WindowRef", "outWindow", "OutMode")],
+                 [("WindowRef", "*", "*")]),
+
+                ([("WindowPtr", "*", "OutMode")],
+                 [("ExistingWindowPtr", "*", "*")]),
+                ([("WindowRef", "*", "OutMode")],       # Same, but other style headerfiles
+                 [("ExistingWindowPtr", "*", "*")]),
+
+                ([("WindowPtr", "FrontWindow", "ReturnMode")],
+                 [("ExistingWindowPtr", "*", "*")]),
+                ([("WindowRef", "FrontWindow", "ReturnMode")],  # Ditto
+                 [("ExistingWindowPtr", "*", "*")]),
+                ([("WindowPtr", "FrontNonFloatingWindow", "ReturnMode")],
+                 [("ExistingWindowPtr", "*", "*")]),
+                ([("WindowRef", "FrontNonFloatingWindow", "ReturnMode")],       # Ditto
+                 [("ExistingWindowPtr", "*", "*")]),
+
+                ([("Rect_ptr", "*", "ReturnMode")], # GetWindowXXXState accessors
+                 [("void", "*", "ReturnMode")]),
+                ]
 
 if __name__ == "__main__":
-	main()
-
+    main()
diff --git a/Mac/Modules/win/winsupport.py b/Mac/Modules/win/winsupport.py
index 640e33a..08a0379 100644
--- a/Mac/Modules/win/winsupport.py
+++ b/Mac/Modules/win/winsupport.py
@@ -6,17 +6,17 @@
 import string
 
 # Declarations that change for each manager
-MACHEADERFILE = 'Windows.h'		# The Apple header file
-MODNAME = '_Win'				# The name of the module
-OBJECTNAME = 'Window'			# The basic name of the objects used here
+MACHEADERFILE = 'Windows.h'             # The Apple header file
+MODNAME = '_Win'                                # The name of the module
+OBJECTNAME = 'Window'                   # The basic name of the objects used here
 
 # The following is *usually* unchanged but may still require tuning
-MODPREFIX = 'Win'			# The prefix for module-wide routines
-OBJECTTYPE = OBJECTNAME + 'Ptr'		# The C type used to represent them
-OBJECTPREFIX = MODPREFIX + 'Obj'	# The prefix for object methods
+MODPREFIX = 'Win'                       # The prefix for module-wide routines
+OBJECTTYPE = OBJECTNAME + 'Ptr'         # The C type used to represent them
+OBJECTPREFIX = MODPREFIX + 'Obj'        # The prefix for object methods
 INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner
 EDITFILE = string.lower(MODPREFIX) + 'edit.py' # The manual definitions
-OUTPUTFILE = MODNAME + "module.c"	# The file generated by this program
+OUTPUTFILE = MODNAME + "module.c"       # The file generated by this program
 
 from macsupport import *
 
@@ -79,7 +79,7 @@
 static void
 PyMac_AutoDisposeWindow(WindowPtr w)
 {
-	DisposeWindow(w);
+        DisposeWindow(w);
 }
 """
 
@@ -89,94 +89,94 @@
 PyObject *
 WinObj_WhichWindow(WindowPtr w)
 {
-	PyObject *it;
-	
-	if (w == NULL) {
-		it = Py_None;
-		Py_INCREF(it);
-	} else {
-		it = (PyObject *) GetWRefCon(w);
-		if (it == NULL || !IsPointerValid((Ptr)it) || ((WindowObject *)it)->ob_itself != w || !WinObj_Check(it)) {
-			it = WinObj_New(w);
-			((WindowObject *)it)->ob_freeit = NULL;
-		} else {
-			Py_INCREF(it);
-		}
-	}
-	return it;
+        PyObject *it;
+
+        if (w == NULL) {
+                it = Py_None;
+                Py_INCREF(it);
+        } else {
+                it = (PyObject *) GetWRefCon(w);
+                if (it == NULL || !IsPointerValid((Ptr)it) || ((WindowObject *)it)->ob_itself != w || !WinObj_Check(it)) {
+                        it = WinObj_New(w);
+                        ((WindowObject *)it)->ob_freeit = NULL;
+                } else {
+                        Py_INCREF(it);
+                }
+        }
+        return it;
 }
 """
 
 initstuff = initstuff + """
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(WindowPtr, WinObj_New);
-	PyMac_INIT_TOOLBOX_OBJECT_NEW(WindowPtr, WinObj_WhichWindow);
-	PyMac_INIT_TOOLBOX_OBJECT_CONVERT(WindowPtr, WinObj_Convert);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(WindowPtr, WinObj_New);
+        PyMac_INIT_TOOLBOX_OBJECT_NEW(WindowPtr, WinObj_WhichWindow);
+        PyMac_INIT_TOOLBOX_OBJECT_CONVERT(WindowPtr, WinObj_Convert);
 """
 
 class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition):
-	def outputCheckNewArg(self):
-		Output("if (itself == NULL) return PyMac_Error(resNotFound);")
-		Output("/* XXXX Or should we use WhichWindow code here? */")
-	def outputStructMembers(self):
-		GlobalObjectDefinition.outputStructMembers(self)
-		Output("void (*ob_freeit)(%s ptr);", self.itselftype)
-	def outputInitStructMembers(self):
-		GlobalObjectDefinition.outputInitStructMembers(self)
-		Output("it->ob_freeit = NULL;")
-		Output("if (GetWRefCon(itself) == 0)")
-		OutLbrace()
-		Output("SetWRefCon(itself, (long)it);")
-		Output("it->ob_freeit = PyMac_AutoDisposeWindow;")
-		OutRbrace()
-	def outputCheckConvertArg(self):
-		Out("""
-		if (v == Py_None) { *p_itself = NULL; return 1; }
-		if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
-		""")
-		OutLbrace()
-		Output("DialogRef dlg;")
-		OutLbrace("if (DlgObj_Convert(v, &dlg) && dlg)")
-		Output("*p_itself = GetDialogWindow(dlg);")
-		Output("return 1;")
-		OutRbrace()
-		Output("PyErr_Clear();")
-		OutRbrace()
-	def outputCleanupStructMembers(self):
-		Output("if (self->ob_freeit && self->ob_itself)")
-		OutLbrace()
-		Output("SetWRefCon(self->ob_itself, 0);")
-		Output("self->ob_freeit(self->ob_itself);")
-		OutRbrace()
-		Output("self->ob_itself = NULL;")
-		Output("self->ob_freeit = NULL;")
-		
-	def outputCompare(self):
-		Output()
-		Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype, self.objecttype)
-		OutLbrace()
-		Output("if ( self->ob_itself > other->ob_itself ) return 1;")
-		Output("if ( self->ob_itself < other->ob_itself ) return -1;")
-		Output("return 0;")
-		OutRbrace()
-		
-	def outputHash(self):
-		Output()
-		Output("static int %s_hash(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("return (int)self->ob_itself;")
-		OutRbrace()
-		
-	def outputRepr(self):
-		Output()
-		Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
-		OutLbrace()
-		Output("char buf[100];")
-		Output("""sprintf(buf, "<Window object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
-		Output("return PyString_FromString(buf);")
-		OutRbrace()
-		
-##	def outputFreeIt(self, itselfname):
-##		Output("DisposeWindow(%s);", itselfname)
+    def outputCheckNewArg(self):
+        Output("if (itself == NULL) return PyMac_Error(resNotFound);")
+        Output("/* XXXX Or should we use WhichWindow code here? */")
+    def outputStructMembers(self):
+        GlobalObjectDefinition.outputStructMembers(self)
+        Output("void (*ob_freeit)(%s ptr);", self.itselftype)
+    def outputInitStructMembers(self):
+        GlobalObjectDefinition.outputInitStructMembers(self)
+        Output("it->ob_freeit = NULL;")
+        Output("if (GetWRefCon(itself) == 0)")
+        OutLbrace()
+        Output("SetWRefCon(itself, (long)it);")
+        Output("it->ob_freeit = PyMac_AutoDisposeWindow;")
+        OutRbrace()
+    def outputCheckConvertArg(self):
+        Out("""
+        if (v == Py_None) { *p_itself = NULL; return 1; }
+        if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; }
+        """)
+        OutLbrace()
+        Output("DialogRef dlg;")
+        OutLbrace("if (DlgObj_Convert(v, &dlg) && dlg)")
+        Output("*p_itself = GetDialogWindow(dlg);")
+        Output("return 1;")
+        OutRbrace()
+        Output("PyErr_Clear();")
+        OutRbrace()
+    def outputCleanupStructMembers(self):
+        Output("if (self->ob_freeit && self->ob_itself)")
+        OutLbrace()
+        Output("SetWRefCon(self->ob_itself, 0);")
+        Output("self->ob_freeit(self->ob_itself);")
+        OutRbrace()
+        Output("self->ob_itself = NULL;")
+        Output("self->ob_freeit = NULL;")
+
+    def outputCompare(self):
+        Output()
+        Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype, self.objecttype)
+        OutLbrace()
+        Output("if ( self->ob_itself > other->ob_itself ) return 1;")
+        Output("if ( self->ob_itself < other->ob_itself ) return -1;")
+        Output("return 0;")
+        OutRbrace()
+
+    def outputHash(self):
+        Output()
+        Output("static int %s_hash(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("return (int)self->ob_itself;")
+        OutRbrace()
+
+    def outputRepr(self):
+        Output()
+        Output("static PyObject * %s_repr(%s *self)", self.prefix, self.objecttype)
+        OutLbrace()
+        Output("char buf[100];")
+        Output("""sprintf(buf, "<Window object at 0x%%8.8x for 0x%%8.8x>", (unsigned)self, (unsigned)self->ob_itself);""")
+        Output("return PyString_FromString(buf);")
+        OutRbrace()
+
+##      def outputFreeIt(self, itselfname):
+##              Output("DisposeWindow(%s);", itselfname)
 # From here on it's basically all boiler plate...
 
 # Create the generator groups and link them
@@ -199,7 +199,7 @@
 long ptr;
 
 if ( !PyArg_ParseTuple(_args, "i", &ptr) )
-	return NULL;
+        return NULL;
 _res = WinObj_WhichWindow((WindowPtr)ptr);
 return _res;
 """