Detabbed.
diff --git a/Lib/plat-mac/findertools.py b/Lib/plat-mac/findertools.py
index 5add05f..b3223bd 100644
--- a/Lib/plat-mac/findertools.py
+++ b/Lib/plat-mac/findertools.py
@@ -30,803 +30,803 @@
 _finder_talker = None
 
 def _getfinder():
-	"""returns basic (recyclable) Finder AE interface object"""
-	global _finder_talker
-	if not _finder_talker:
-		_finder_talker = Finder.Finder()
-	_finder_talker.send_flags = ( _finder_talker.send_flags | 
-		AppleEvents.kAECanInteract | AppleEvents.kAECanSwitchLayer)
-	return _finder_talker
-	
+    """returns basic (recyclable) Finder AE interface object"""
+    global _finder_talker
+    if not _finder_talker:
+        _finder_talker = Finder.Finder()
+    _finder_talker.send_flags = ( _finder_talker.send_flags | 
+        AppleEvents.kAECanInteract | AppleEvents.kAECanSwitchLayer)
+    return _finder_talker
+    
 def launch(file):
-	"""Open a file thru the finder. Specify file by name or fsspec"""
-	finder = _getfinder()
-	fss = Carbon.File.FSSpec(file)
-	return finder.open(fss)
-	
+    """Open a file thru the finder. Specify file by name or fsspec"""
+    finder = _getfinder()
+    fss = Carbon.File.FSSpec(file)
+    return finder.open(fss)
+    
 def Print(file):
-	"""Print a file thru the finder. Specify file by name or fsspec"""
-	finder = _getfinder()
-	fss = Carbon.File.FSSpec(file)
-	return finder._print(fss)
-	
+    """Print a file thru the finder. Specify file by name or fsspec"""
+    finder = _getfinder()
+    fss = Carbon.File.FSSpec(file)
+    return finder._print(fss)
+    
 def copy(src, dstdir):
-	"""Copy a file to a folder"""
-	finder = _getfinder()
-	if type(src) == type([]):
-		src_fss = []
-		for s in src:
-			src_fss.append(Carbon.File.FSSpec(s))
-	else:
-		src_fss = Carbon.File.FSSpec(src)
-	dst_fss = Carbon.File.FSSpec(dstdir)
-	return finder.duplicate(src_fss, to=dst_fss)
+    """Copy a file to a folder"""
+    finder = _getfinder()
+    if type(src) == type([]):
+        src_fss = []
+        for s in src:
+            src_fss.append(Carbon.File.FSSpec(s))
+    else:
+        src_fss = Carbon.File.FSSpec(src)
+    dst_fss = Carbon.File.FSSpec(dstdir)
+    return finder.duplicate(src_fss, to=dst_fss)
 
 def move(src, dstdir):
-	"""Move a file to a folder"""
-	finder = _getfinder()
-	if type(src) == type([]):
-		src_fss = []
-		for s in src:
-			src_fss.append(Carbon.File.FSSpec(s))
-	else:
-		src_fss = Carbon.File.FSSpec(src)
-	dst_fss = Carbon.File.FSSpec(dstdir)
-	return finder.move(src_fss, to=dst_fss)
-	
+    """Move a file to a folder"""
+    finder = _getfinder()
+    if type(src) == type([]):
+        src_fss = []
+        for s in src:
+            src_fss.append(Carbon.File.FSSpec(s))
+    else:
+        src_fss = Carbon.File.FSSpec(src)
+    dst_fss = Carbon.File.FSSpec(dstdir)
+    return finder.move(src_fss, to=dst_fss)
+    
 def sleep():
-	"""Put the mac to sleep"""
-	finder = _getfinder()
-	finder.sleep()
-	
+    """Put the mac to sleep"""
+    finder = _getfinder()
+    finder.sleep()
+    
 def shutdown():
-	"""Shut the mac down"""
-	finder = _getfinder()
-	finder.shut_down()
-	
+    """Shut the mac down"""
+    finder = _getfinder()
+    finder.shut_down()
+    
 def restart():
-	"""Restart the mac"""
-	finder = _getfinder()
-	finder.restart()
+    """Restart the mac"""
+    finder = _getfinder()
+    finder.restart()
 
 
 #---------------------------------------------------
-#	Additional findertools
+#   Additional findertools
 #
 
 def reveal(file):
-	"""Reveal a file in the finder. Specify file by name, fsref or fsspec."""
-	finder = _getfinder()
-	fsr = Carbon.File.FSRef(file)
-	file_alias = fsr.FSNewAliasMinimal()
-	return finder.reveal(file_alias)
-	
+    """Reveal a file in the finder. Specify file by name, fsref or fsspec."""
+    finder = _getfinder()
+    fsr = Carbon.File.FSRef(file)
+    file_alias = fsr.FSNewAliasMinimal()
+    return finder.reveal(file_alias)
+    
 def select(file):
-	"""select a file in the finder. Specify file by name, fsref or fsspec."""
-	finder = _getfinder()
-	fsr = Carbon.File.FSRef(file)
-	file_alias = fsr.FSNewAliasMinimal()
-	return finder.select(file_alias)
-	
+    """select a file in the finder. Specify file by name, fsref or fsspec."""
+    finder = _getfinder()
+    fsr = Carbon.File.FSRef(file)
+    file_alias = fsr.FSNewAliasMinimal()
+    return finder.select(file_alias)
+    
 def update(file):
-	"""Update the display of the specified object(s) to match 
-	their on-disk representation. Specify file by name, fsref or fsspec."""
-	finder = _getfinder()
-	fsr = Carbon.File.FSRef(file)
-	file_alias = fsr.FSNewAliasMinimal()
-	return finder.update(file_alias)
+    """Update the display of the specified object(s) to match 
+    their on-disk representation. Specify file by name, fsref or fsspec."""
+    finder = _getfinder()
+    fsr = Carbon.File.FSRef(file)
+    file_alias = fsr.FSNewAliasMinimal()
+    return finder.update(file_alias)
 
 
 #---------------------------------------------------
-#	More findertools
+#   More findertools
 #
 
 def comment(object, comment=None):
-	"""comment: get or set the Finder-comment of the item, displayed in the 'Get Info' window."""
-	object = Carbon.File.FSRef(object)
-	object_alias = object.FSNewAliasMonimal()
-	if comment == None:
-		return _getcomment(object_alias)
-	else:
-		return _setcomment(object_alias, comment)
-	
+    """comment: get or set the Finder-comment of the item, displayed in the 'Get Info' window."""
+    object = Carbon.File.FSRef(object)
+    object_alias = object.FSNewAliasMonimal()
+    if comment == None:
+        return _getcomment(object_alias)
+    else:
+        return _setcomment(object_alias, comment)
+    
 def _setcomment(object_alias, comment):
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('comt'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	args["data"] = comment
-	_reply, args, attrs = finder.send("core", "setd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('comt'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    args["data"] = comment
+    _reply, args, attrs = finder.send("core", "setd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def _getcomment(object_alias):
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('comt'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('comt'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 
 #---------------------------------------------------
-#	Get information about current processes in the Finder.
+#   Get information about current processes in the Finder.
 
 def processes():
-	"""processes returns a list of all active processes running on this computer and their creators."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	processnames = []
-	processnumbers = []
-	creators = []
-	partitions = []
-	used = []
-	## get the processnames or else the processnumbers
-	args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="indx", seld=aetypes.Unknown('abso', "all "), fr=None)
-	_reply, args, attrs = finder.send('core', 'getd', args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	p = []
-	if args.has_key('----'):
-		p =  args['----']
-		for proc in p:
-			if hasattr(proc, 'seld'):
-				# it has a real name
-				processnames.append(proc.seld)
-			elif hasattr(proc, 'type'):
-				if proc.type == "psn ":
-					# it has a process number
-					processnumbers.append(proc.data)
-	## get the creators
-	args = {}
-	attrs = {}
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="indx", seld=aetypes.Unknown('abso', "all "), fr=None)
-	args['----'] =  aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fcrt'), fr=aeobj_0)
-	_reply, args, attrs = finder.send('core', 'getd', args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(_arg)
-	if args.has_key('----'):
-		p =  args['----']
-		creators = p[:]
-	## concatenate in one dict
-	result = []
-	if len(processnames) > len(processnumbers):
-		data = processnames
-	else:
-		data = processnumbers
-	for i in range(len(creators)):
-		result.append((data[i], creators[i]))
-	return result
+    """processes returns a list of all active processes running on this computer and their creators."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    processnames = []
+    processnumbers = []
+    creators = []
+    partitions = []
+    used = []
+    ## get the processnames or else the processnumbers
+    args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="indx", seld=aetypes.Unknown('abso', "all "), fr=None)
+    _reply, args, attrs = finder.send('core', 'getd', args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    p = []
+    if args.has_key('----'):
+        p =  args['----']
+        for proc in p:
+            if hasattr(proc, 'seld'):
+                # it has a real name
+                processnames.append(proc.seld)
+            elif hasattr(proc, 'type'):
+                if proc.type == "psn ":
+                    # it has a process number
+                    processnumbers.append(proc.data)
+    ## get the creators
+    args = {}
+    attrs = {}
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="indx", seld=aetypes.Unknown('abso', "all "), fr=None)
+    args['----'] =  aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fcrt'), fr=aeobj_0)
+    _reply, args, attrs = finder.send('core', 'getd', args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(_arg)
+    if args.has_key('----'):
+        p =  args['----']
+        creators = p[:]
+    ## concatenate in one dict
+    result = []
+    if len(processnames) > len(processnumbers):
+        data = processnames
+    else:
+        data = processnumbers
+    for i in range(len(creators)):
+        result.append((data[i], creators[i]))
+    return result
 
 class _process:
-	pass
+    pass
 
 def isactiveprocess(processname):
-	"""Check of processname is active. MacOS9"""
-	all = processes()
-	ok = 0
-	for n, c in all:
-		if n == processname:
-			return 1
-	return 0
-	
+    """Check of processname is active. MacOS9"""
+    all = processes()
+    ok = 0
+    for n, c in all:
+        if n == processname:
+            return 1
+    return 0
+    
 def processinfo(processname):
-	"""Return an object with all process properties as attributes for processname. MacOS9"""
-	p = _process()
-	
-	if processname == "Finder":
-		p.partition = None
-		p.used = None
-	else:
-		p.partition = _processproperty(processname, 'appt')
-		p.used = _processproperty(processname, 'pusd')
-	p.visible = _processproperty(processname, 'pvis')		#Is the process' layer visible?
-	p.frontmost = _processproperty(processname, 'pisf')	#Is the process the frontmost process?
-	p.file = _processproperty(processname, 'file')			#the file from which the process was launched
-	p.filetype  = _processproperty(processname, 'asty')		#the OSType of the file type of the process
-	p.creatortype = _processproperty(processname, 'fcrt')	#the OSType of the creator of the process (the signature)
-	p.accepthighlevel = _processproperty(processname, 'revt')	#Is the process high-level event aware (accepts open application, open document, print document, and quit)?
-	p.hasscripting = _processproperty(processname, 'hscr')		#Does the process have a scripting terminology, i.e., can it be scripted?
-	return p
-	
+    """Return an object with all process properties as attributes for processname. MacOS9"""
+    p = _process()
+    
+    if processname == "Finder":
+        p.partition = None
+        p.used = None
+    else:
+        p.partition = _processproperty(processname, 'appt')
+        p.used = _processproperty(processname, 'pusd')
+    p.visible = _processproperty(processname, 'pvis')       #Is the process' layer visible?
+    p.frontmost = _processproperty(processname, 'pisf') #Is the process the frontmost process?
+    p.file = _processproperty(processname, 'file')          #the file from which the process was launched
+    p.filetype  = _processproperty(processname, 'asty')     #the OSType of the file type of the process
+    p.creatortype = _processproperty(processname, 'fcrt')   #the OSType of the creator of the process (the signature)
+    p.accepthighlevel = _processproperty(processname, 'revt')   #Is the process high-level event aware (accepts open application, open document, print document, and quit)?
+    p.hasscripting = _processproperty(processname, 'hscr')      #Does the process have a scripting terminology, i.e., can it be scripted?
+    return p
+    
 def _processproperty(processname, property):
-	"""return the partition size and memory used for processname"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="name", seld=processname, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type(property), fr=aeobj_00)
-	args['----'] = aeobj_01
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """return the partition size and memory used for processname"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('prcs'), form="name", seld=processname, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type(property), fr=aeobj_00)
+    args['----'] = aeobj_01
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 
 #---------------------------------------------------
-#	Mess around with Finder windows.
-	
+#   Mess around with Finder windows.
+    
 def openwindow(object):
-	"""Open a Finder window for object, Specify object by name or fsspec."""
-	finder = _getfinder()
-	object = Carbon.File.FSRef(object)
-	object_alias = object.FSNewAliasMinimal()
-	args = {}
-	attrs = {}
-	_code = 'aevt'
-	_subcode = 'odoc'
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
-	args['----'] = aeobj_0
-	_reply, args, attrs = finder.send(_code, _subcode, args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	
+    """Open a Finder window for object, Specify object by name or fsspec."""
+    finder = _getfinder()
+    object = Carbon.File.FSRef(object)
+    object_alias = object.FSNewAliasMinimal()
+    args = {}
+    attrs = {}
+    _code = 'aevt'
+    _subcode = 'odoc'
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
+    args['----'] = aeobj_0
+    _reply, args, attrs = finder.send(_code, _subcode, args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    
 def closewindow(object):
-	"""Close a Finder window for folder, Specify by path."""
-	finder = _getfinder()
-	object = Carbon.File.FSRef(object)
-	object_alias = object.FSNewAliasMinimal()
-	args = {}
-	attrs = {}
-	_code = 'core'
-	_subcode = 'clos'
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
-	args['----'] = aeobj_0
-	_reply, args, attrs = finder.send(_code, _subcode, args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
+    """Close a Finder window for folder, Specify by path."""
+    finder = _getfinder()
+    object = Carbon.File.FSRef(object)
+    object_alias = object.FSNewAliasMinimal()
+    args = {}
+    attrs = {}
+    _code = 'core'
+    _subcode = 'clos'
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
+    args['----'] = aeobj_0
+    _reply, args, attrs = finder.send(_code, _subcode, args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
 
 def location(object, pos=None):
-	"""Set the position of a Finder window for folder to pos=(w, h). Specify file by name or fsspec.
-	If pos=None, location will return the current position of the object."""
-	object = Carbon.File.FSRef(object)
-	object_alias = object.FSNewAliasMinimal()
-	if not pos:
-		return _getlocation(object_alias)
-	return _setlocation(object_alias, pos)
-	
+    """Set the position of a Finder window for folder to pos=(w, h). Specify file by name or fsspec.
+    If pos=None, location will return the current position of the object."""
+    object = Carbon.File.FSRef(object)
+    object_alias = object.FSNewAliasMinimal()
+    if not pos:
+        return _getlocation(object_alias)
+    return _setlocation(object_alias, pos)
+    
 def _setlocation(object_alias, (x, y)):
-	"""_setlocation: Set the location of the icon for the object."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('posn'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	args["data"] = [x, y]
-	_reply, args, attrs = finder.send("core", "setd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	return (x,y)
-	
+    """_setlocation: Set the location of the icon for the object."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('posn'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    args["data"] = [x, y]
+    _reply, args, attrs = finder.send("core", "setd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    return (x,y)
+    
 def _getlocation(object_alias):
-	"""_getlocation: get the location of the icon for the object."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('posn'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		pos = args['----']
-		return pos.h, pos.v
+    """_getlocation: get the location of the icon for the object."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('posn'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        pos = args['----']
+        return pos.h, pos.v
 
 def label(object, index=None):
-	"""label: set or get the label of the item. Specify file by name or fsspec."""
-	object = Carbon.File.FSRef(object)
-	object_alias = object.FSNewAliasMinimal()
-	if index == None:
-		return _getlabel(object_alias)
-	if index < 0 or index > 7:
-		index = 0
-	return _setlabel(object_alias, index)
-	
+    """label: set or get the label of the item. Specify file by name or fsspec."""
+    object = Carbon.File.FSRef(object)
+    object_alias = object.FSNewAliasMinimal()
+    if index == None:
+        return _getlabel(object_alias)
+    if index < 0 or index > 7:
+        index = 0
+    return _setlabel(object_alias, index)
+    
 def _getlabel(object_alias):
-	"""label: Get the label for the object."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('labi'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """label: Get the label for the object."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('labi'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def _setlabel(object_alias, index):
-	"""label: Set the label for the object."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	_code = 'core'
-	_subcode = 'setd'
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'),
-			form="alis", seld=object_alias, fr=None)
-	aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'),
-			form="prop", seld=aetypes.Type('labi'), fr=aeobj_0)
-	args['----'] = aeobj_1
-	args["data"] = index
-	_reply, args, attrs = finder.send(_code, _subcode, args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	return index
+    """label: Set the label for the object."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    _code = 'core'
+    _subcode = 'setd'
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'),
+            form="alis", seld=object_alias, fr=None)
+    aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'),
+            form="prop", seld=aetypes.Type('labi'), fr=aeobj_0)
+    args['----'] = aeobj_1
+    args["data"] = index
+    _reply, args, attrs = finder.send(_code, _subcode, args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    return index
 
 def windowview(folder, view=None):
-	"""windowview: Set the view of the window for the folder. Specify file by name or fsspec.
-	0 = by icon (default)
-	1 = by name
-	2 = by button
-	"""
-	fsr = Carbon.File.FSRef(folder)
-	folder_alias = fsr.FSNewAliasMinimal()
-	if view == None:
-		return _getwindowview(folder_alias)
-	return _setwindowview(folder_alias, view)
-	
+    """windowview: Set the view of the window for the folder. Specify file by name or fsspec.
+    0 = by icon (default)
+    1 = by name
+    2 = by button
+    """
+    fsr = Carbon.File.FSRef(folder)
+    folder_alias = fsr.FSNewAliasMinimal()
+    if view == None:
+        return _getwindowview(folder_alias)
+    return _setwindowview(folder_alias, view)
+    
 def _setwindowview(folder_alias, view=0):
-	"""set the windowview"""
-	attrs = {}
-	args = {}
-	if view == 1:
-		_v = aetypes.Type('pnam')
-	elif view == 2:
-		_v = aetypes.Type('lgbu')
-	else:
-		_v = aetypes.Type('iimg')
-	finder = _getfinder()
-	aeobj_0 = aetypes.ObjectSpecifier(want = aetypes.Type('cfol'), 
-			form = 'alis', seld = folder_alias, fr=None)
-	aeobj_1 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), 
-			form = 'prop', seld = aetypes.Type('cwnd'), fr=aeobj_0)
-	aeobj_2 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), 
-			form = 'prop', seld = aetypes.Type('pvew'), fr=aeobj_1)
-	aeobj_3 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), 
-			form = 'prop', seld = _v, fr=None)
-	_code = 'core'
-	_subcode = 'setd'
-	args['----'] = aeobj_2
-	args['data'] = aeobj_3
-	_reply, args, attrs = finder.send(_code, _subcode, args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """set the windowview"""
+    attrs = {}
+    args = {}
+    if view == 1:
+        _v = aetypes.Type('pnam')
+    elif view == 2:
+        _v = aetypes.Type('lgbu')
+    else:
+        _v = aetypes.Type('iimg')
+    finder = _getfinder()
+    aeobj_0 = aetypes.ObjectSpecifier(want = aetypes.Type('cfol'), 
+            form = 'alis', seld = folder_alias, fr=None)
+    aeobj_1 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), 
+            form = 'prop', seld = aetypes.Type('cwnd'), fr=aeobj_0)
+    aeobj_2 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), 
+            form = 'prop', seld = aetypes.Type('pvew'), fr=aeobj_1)
+    aeobj_3 = aetypes.ObjectSpecifier(want = aetypes.Type('prop'), 
+            form = 'prop', seld = _v, fr=None)
+    _code = 'core'
+    _subcode = 'setd'
+    args['----'] = aeobj_2
+    args['data'] = aeobj_3
+    _reply, args, attrs = finder.send(_code, _subcode, args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def _getwindowview(folder_alias):
-	"""get the windowview"""
-	attrs = {}
-	args = {}
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=folder_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_00)
-	aeobj_02 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('pvew'), fr=aeobj_01)
-	args['----'] = aeobj_02
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	views = {'iimg':0, 'pnam':1, 'lgbu':2}
-	if args.has_key('----'):
-		return views[args['----'].enum]
+    """get the windowview"""
+    attrs = {}
+    args = {}
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), form="alis", seld=folder_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_00)
+    aeobj_02 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('pvew'), fr=aeobj_01)
+    args['----'] = aeobj_02
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    views = {'iimg':0, 'pnam':1, 'lgbu':2}
+    if args.has_key('----'):
+        return views[args['----'].enum]
 
 def windowsize(folder, size=None):
-	"""Set the size of a Finder window for folder to size=(w, h), Specify by path.
-	If size=None, windowsize will return the current size of the window.
-	Specify file by name or fsspec.
-	"""
-	fsr = Carbon.File.FSRef(folder)
-	folder_alias = fsr.FSNewAliasMinimal()
-	openwindow(fsr)
-	if not size:
-		return _getwindowsize(folder_alias)
-	return _setwindowsize(folder_alias, size)
-	
+    """Set the size of a Finder window for folder to size=(w, h), Specify by path.
+    If size=None, windowsize will return the current size of the window.
+    Specify file by name or fsspec.
+    """
+    fsr = Carbon.File.FSRef(folder)
+    folder_alias = fsr.FSNewAliasMinimal()
+    openwindow(fsr)
+    if not size:
+        return _getwindowsize(folder_alias)
+    return _setwindowsize(folder_alias, size)
+    
 def _setwindowsize(folder_alias, (w, h)):
-	"""Set the size of a Finder window for folder to (w, h)"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	_code = 'core'
-	_subcode = 'setd'
-	aevar00 = [w, h]
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'),
-			form="alis", seld=folder_alias, fr=None)
-	aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
-	aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('ptsz'), fr=aeobj_1)
-	args['----'] = aeobj_2
-	args["data"] = aevar00
-	_reply, args, attrs = finder.send(_code, _subcode, args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	return (w, h)
-		
+    """Set the size of a Finder window for folder to (w, h)"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    _code = 'core'
+    _subcode = 'setd'
+    aevar00 = [w, h]
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'),
+            form="alis", seld=folder_alias, fr=None)
+    aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
+    aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('ptsz'), fr=aeobj_1)
+    args['----'] = aeobj_2
+    args["data"] = aevar00
+    _reply, args, attrs = finder.send(_code, _subcode, args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    return (w, h)
+        
 def _getwindowsize(folder_alias):
-	"""Set the size of a Finder window for folder to (w, h)"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), 
-			form="alis", seld=folder_alias, fr=None)
-	aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
-	aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('posn'), fr=aeobj_1)
-	args['----'] = aeobj_2
-	_reply, args, attrs = finder.send('core', 'getd', args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """Set the size of a Finder window for folder to (w, h)"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), 
+            form="alis", seld=folder_alias, fr=None)
+    aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
+    aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('posn'), fr=aeobj_1)
+    args['----'] = aeobj_2
+    _reply, args, attrs = finder.send('core', 'getd', args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def windowposition(folder, pos=None):
-	"""Set the position of a Finder window for folder to pos=(w, h)."""
-	fsr = Carbon.File.FSRef(folder)
-	folder_alias = fsr.FSNewAliasMinimal()
-	openwindow(fsr)
-	if not pos:
-		return _getwindowposition(folder_alias)
-	if type(pos) == InstanceType:
-		# pos might be a QDPoint object as returned by _getwindowposition
-		pos = (pos.h, pos.v)
-	return _setwindowposition(folder_alias, pos)
-			
+    """Set the position of a Finder window for folder to pos=(w, h)."""
+    fsr = Carbon.File.FSRef(folder)
+    folder_alias = fsr.FSNewAliasMinimal()
+    openwindow(fsr)
+    if not pos:
+        return _getwindowposition(folder_alias)
+    if type(pos) == InstanceType:
+        # pos might be a QDPoint object as returned by _getwindowposition
+        pos = (pos.h, pos.v)
+    return _setwindowposition(folder_alias, pos)
+            
 def _setwindowposition(folder_alias, (x, y)):
-	"""Set the size of a Finder window for folder to (w, h)."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), 
-			form="alis", seld=folder_alias, fr=None)
-	aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
-	aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('posn'), fr=aeobj_1)
-	args['----'] = aeobj_2
-	args["data"] = [x, y]
-	_reply, args, attrs = finder.send('core', 'setd', args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """Set the size of a Finder window for folder to (w, h)."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), 
+            form="alis", seld=folder_alias, fr=None)
+    aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
+    aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('posn'), fr=aeobj_1)
+    args['----'] = aeobj_2
+    args["data"] = [x, y]
+    _reply, args, attrs = finder.send('core', 'setd', args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def _getwindowposition(folder_alias):
-	"""Get the size of a Finder window for folder, Specify by path."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), 
-			form="alis", seld=folder_alias, fr=None)
-	aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
-	aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('ptsz'), fr=aeobj_1)
-	args['----'] = aeobj_2
-	_reply, args, attrs = finder.send('core', 'getd', args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """Get the size of a Finder window for folder, Specify by path."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_0 = aetypes.ObjectSpecifier(want=aetypes.Type('cfol'), 
+            form="alis", seld=folder_alias, fr=None)
+    aeobj_1 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('cwnd'), fr=aeobj_0)
+    aeobj_2 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('ptsz'), fr=aeobj_1)
+    args['----'] = aeobj_2
+    _reply, args, attrs = finder.send('core', 'getd', args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def icon(object, icondata=None):
-	"""icon sets the icon of object, if no icondata is given,
-	icon will return an AE object with binary data for the current icon.
-	If left untouched, this data can be used to paste the icon on another file.
-	Development opportunity: get and set the data as PICT."""
-	fsr = Carbon.File.FSRef(object)
-	object_alias = fsr.FSNewAliasMinimal()
-	if icondata == None:
-		return _geticon(object_alias)
-	return _seticon(object_alias, icondata)
-	
+    """icon sets the icon of object, if no icondata is given,
+    icon will return an AE object with binary data for the current icon.
+    If left untouched, this data can be used to paste the icon on another file.
+    Development opportunity: get and set the data as PICT."""
+    fsr = Carbon.File.FSRef(object)
+    object_alias = fsr.FSNewAliasMinimal()
+    if icondata == None:
+        return _geticon(object_alias)
+    return _seticon(object_alias, icondata)
+    
 def _geticon(object_alias):
-	"""get the icondata for object. Binary data of some sort."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), 
-			form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('iimg'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """get the icondata for object. Binary data of some sort."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), 
+            form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('iimg'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def _seticon(object_alias, icondata):
-	"""set the icondata for object, formatted as produced by _geticon()"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), 
-			form="alis", seld=object_alias, fr=None)
-	aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
-			form="prop", seld=aetypes.Type('iimg'), fr=aeobj_00)
-	args['----'] = aeobj_01
-	args["data"] = icondata
-	_reply, args, attrs = finder.send("core", "setd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----'].data
+    """set the icondata for object, formatted as produced by _geticon()"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cobj'), 
+            form="alis", seld=object_alias, fr=None)
+    aeobj_01 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), 
+            form="prop", seld=aetypes.Type('iimg'), fr=aeobj_00)
+    args['----'] = aeobj_01
+    args["data"] = icondata
+    _reply, args, attrs = finder.send("core", "setd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----'].data
 
 
 #---------------------------------------------------
-#	Volumes and servers.
-	
+#   Volumes and servers.
+    
 def mountvolume(volume, server=None, username=None, password=None):
-	"""mount a volume, local or on a server on AppleTalk.
-	Note: mounting a ASIP server requires a different operation.
-	server is the name of the server where the volume belongs
-	username, password belong to a registered user of the volume."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	if password:
-		args["PASS"] = password
-	if username:
-		args["USER"] = username
-	if server:
-		args["SRVR"] = server
-	args['----'] = volume
-	_reply, args, attrs = finder.send("aevt", "mvol", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """mount a volume, local or on a server on AppleTalk.
+    Note: mounting a ASIP server requires a different operation.
+    server is the name of the server where the volume belongs
+    username, password belong to a registered user of the volume."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    if password:
+        args["PASS"] = password
+    if username:
+        args["USER"] = username
+    if server:
+        args["SRVR"] = server
+    args['----'] = volume
+    _reply, args, attrs = finder.send("aevt", "mvol", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def unmountvolume(volume):
-	"""unmount a volume that's on the desktop"""
-	putaway(volume)
-	
+    """unmount a volume that's on the desktop"""
+    putaway(volume)
+    
 def putaway(object):
-	"""puth the object away, whereever it came from."""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('cdis'), form="name", seld=object, fr=None)
-	_reply, args, attrs = talker.send("fndr", "ptwy", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """puth the object away, whereever it came from."""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('cdis'), form="name", seld=object, fr=None)
+    _reply, args, attrs = talker.send("fndr", "ptwy", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 
 #---------------------------------------------------
-#	Miscellaneous functions
+#   Miscellaneous functions
 #
 
 def volumelevel(level):
-	"""set the audio output level, parameter between 0 (silent) and 7 (full blast)"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	if level < 0:
-		level = 0
-	elif level > 7:
-		level = 7
-	args['----'] = level
-	_reply, args, attrs = finder.send("aevt", "stvl", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """set the audio output level, parameter between 0 (silent) and 7 (full blast)"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    if level < 0:
+        level = 0
+    elif level > 7:
+        level = 7
+    args['----'] = level
+    _reply, args, attrs = finder.send("aevt", "stvl", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def OSversion():
-	"""return the version of the system software"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('ver2'), fr=None)
-	args['----'] = aeobj_00
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		return args['----']
+    """return the version of the system software"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    aeobj_00 = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('ver2'), fr=None)
+    args['----'] = aeobj_00
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        return args['----']
 
 def filesharing():
-	"""return the current status of filesharing and whether it is starting up or not:
-		-1	file sharing is off and not starting up
-		0	file sharing is off and starting up
-		1	file sharing is on"""
-	status = -1
-	finder = _getfinder()
-	# see if it is on
-	args = {}
-	attrs = {}
-	args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fshr'), fr=None)
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		if args['----'] == 0:
-			status = -1
-		else:
-			status = 1
-	# is it starting up perchance?
-	args = {}
-	attrs = {}
-	args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fsup'), fr=None)
-	_reply, args, attrs = finder.send("core", "getd", args, attrs)
-	if args.has_key('errn'):
-		raise Error, aetools.decodeerror(args)
-	if args.has_key('----'):
-		if args['----'] == 1:
-			status = 0
-	return status
-	
+    """return the current status of filesharing and whether it is starting up or not:
+        -1  file sharing is off and not starting up
+        0   file sharing is off and starting up
+        1   file sharing is on"""
+    status = -1
+    finder = _getfinder()
+    # see if it is on
+    args = {}
+    attrs = {}
+    args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fshr'), fr=None)
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        if args['----'] == 0:
+            status = -1
+        else:
+            status = 1
+    # is it starting up perchance?
+    args = {}
+    attrs = {}
+    args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('fsup'), fr=None)
+    _reply, args, attrs = finder.send("core", "getd", args, attrs)
+    if args.has_key('errn'):
+        raise Error, aetools.decodeerror(args)
+    if args.has_key('----'):
+        if args['----'] == 1:
+            status = 0
+    return status
+    
 def movetotrash(path):
-	"""move the object to the trash"""
-	fss = Carbon.File.FSSpec(path)
-	trashfolder = Carbon.Folder.FSFindFolder(fss.as_tuple()[0], 'trsh', 0)
-	move(path, trashfolder)
+    """move the object to the trash"""
+    fss = Carbon.File.FSSpec(path)
+    trashfolder = Carbon.Folder.FSFindFolder(fss.as_tuple()[0], 'trsh', 0)
+    move(path, trashfolder)
 
 def emptytrash():
-	"""empty the trash"""
-	finder = _getfinder()
-	args = {}
-	attrs = {}
-	args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('trsh'), fr=None)
-	_reply, args, attrs = finder.send("fndr", "empt", args, attrs)
-	if args.has_key('errn'):
-		raise aetools.Error, aetools.decodeerror(args)
+    """empty the trash"""
+    finder = _getfinder()
+    args = {}
+    attrs = {}
+    args['----'] = aetypes.ObjectSpecifier(want=aetypes.Type('prop'), form="prop", seld=aetypes.Type('trsh'), fr=None)
+    _reply, args, attrs = finder.send("fndr", "empt", args, attrs)
+    if args.has_key('errn'):
+        raise aetools.Error, aetools.decodeerror(args)
 
 
 def _test():
-	import EasyDialogs
-	print 'Original findertools functionality test...'
-	print 'Testing launch...'
-	pathname = EasyDialogs.AskFileForOpen('File to launch:')
-	if pathname:
-		result = launch(pathname)
-		if result:
-			print 'Result: ', result
-		print 'Press return-',
-		sys.stdin.readline()
-	print 'Testing print...'
-	pathname = EasyDialogs.AskFileForOpen('File to print:')
-	if pathname:
-		result = Print(pathname)
-		if result:
-			print 'Result: ', result
-		print 'Press return-',
-		sys.stdin.readline()
-	print 'Testing copy...'
-	pathname = EasyDialogs.AskFileForOpen('File to copy:')
-	if pathname:
-		destdir = EasyDialogs.AskFolder('Destination:')
-		if destdir:
-			result = copy(pathname, destdir)
-			if result:
-				print 'Result:', result
-			print 'Press return-',
-			sys.stdin.readline()
-	print 'Testing move...'
-	pathname = EasyDialogs.AskFileForOpen('File to move:')
-	if pathname:
-		destdir = EasyDialogs.AskFolder('Destination:')
-		if destdir:
-			result = move(pathname, destdir)
-			if result:
-				print 'Result:', result
-			print 'Press return-',
-			sys.stdin.readline()
-	print 'Testing sleep...'
-	if EasyDialogs.AskYesNoCancel('Sleep?') > 0:
-		result = sleep()
-		if result:
-			print 'Result:', result
-		print 'Press return-',
-		sys.stdin.readline()
-	print 'Testing shutdown...'
-	if EasyDialogs.AskYesNoCancel('Shut down?') > 0:
-		result = shutdown()
-		if result:
-			print 'Result:', result
-		print 'Press return-',
-		sys.stdin.readline()
-	print 'Testing restart...'
-	if EasyDialogs.AskYesNoCancel('Restart?') > 0:
-		result = restart()
-		if result:
-			print 'Result:', result
-		print 'Press return-',
-		sys.stdin.readline()
+    import EasyDialogs
+    print 'Original findertools functionality test...'
+    print 'Testing launch...'
+    pathname = EasyDialogs.AskFileForOpen('File to launch:')
+    if pathname:
+        result = launch(pathname)
+        if result:
+            print 'Result: ', result
+        print 'Press return-',
+        sys.stdin.readline()
+    print 'Testing print...'
+    pathname = EasyDialogs.AskFileForOpen('File to print:')
+    if pathname:
+        result = Print(pathname)
+        if result:
+            print 'Result: ', result
+        print 'Press return-',
+        sys.stdin.readline()
+    print 'Testing copy...'
+    pathname = EasyDialogs.AskFileForOpen('File to copy:')
+    if pathname:
+        destdir = EasyDialogs.AskFolder('Destination:')
+        if destdir:
+            result = copy(pathname, destdir)
+            if result:
+                print 'Result:', result
+            print 'Press return-',
+            sys.stdin.readline()
+    print 'Testing move...'
+    pathname = EasyDialogs.AskFileForOpen('File to move:')
+    if pathname:
+        destdir = EasyDialogs.AskFolder('Destination:')
+        if destdir:
+            result = move(pathname, destdir)
+            if result:
+                print 'Result:', result
+            print 'Press return-',
+            sys.stdin.readline()
+    print 'Testing sleep...'
+    if EasyDialogs.AskYesNoCancel('Sleep?') > 0:
+        result = sleep()
+        if result:
+            print 'Result:', result
+        print 'Press return-',
+        sys.stdin.readline()
+    print 'Testing shutdown...'
+    if EasyDialogs.AskYesNoCancel('Shut down?') > 0:
+        result = shutdown()
+        if result:
+            print 'Result:', result
+        print 'Press return-',
+        sys.stdin.readline()
+    print 'Testing restart...'
+    if EasyDialogs.AskYesNoCancel('Restart?') > 0:
+        result = restart()
+        if result:
+            print 'Result:', result
+        print 'Press return-',
+        sys.stdin.readline()
 
 def _test2():
-	print '\nmorefindertools version %s\nTests coming up...' %__version__
-	import os
-	import random
+    print '\nmorefindertools version %s\nTests coming up...' %__version__
+    import os
+    import random
 
-	# miscellaneous
-	print '\tfilesharing on?',	filesharing()		# is file sharing on, off, starting up?
-	print '\tOS version', 		OSversion()		# the version of the system software
+    # miscellaneous
+    print '\tfilesharing on?',  filesharing()       # is file sharing on, off, starting up?
+    print '\tOS version',       OSversion()     # the version of the system software
 
-	# set the soundvolume in a simple way
-	print '\tSystem beep volume'
-	for i in range(0, 7):
-		volumelevel(i)		
-		MacOS.SysBeep()
+    # set the soundvolume in a simple way
+    print '\tSystem beep volume'
+    for i in range(0, 7):
+        volumelevel(i)      
+        MacOS.SysBeep()
 
-	# Finder's windows, file location, file attributes
-	open("@findertoolstest", "w")
-	f = "@findertoolstest"
-	reveal(f)				# reveal this file in a Finder window
-	select(f)				# select this file
+    # Finder's windows, file location, file attributes
+    open("@findertoolstest", "w")
+    f = "@findertoolstest"
+    reveal(f)               # reveal this file in a Finder window
+    select(f)               # select this file
 
-	base, file = os.path.split(f)
-	closewindow(base)	# close the window this file is in	(opened by reveal)
-	openwindow(base)		# open it again
-	windowview(base, 1)	# set the view by list
+    base, file = os.path.split(f)
+    closewindow(base)   # close the window this file is in  (opened by reveal)
+    openwindow(base)        # open it again
+    windowview(base, 1) # set the view by list
 
-	label(f, 2)				# set the label of this file to something orange
-	print '\tlabel', label(f)	# get the label of this file
+    label(f, 2)             # set the label of this file to something orange
+    print '\tlabel', label(f)   # get the label of this file
 
-	# the file location only works in a window with icon view!
-	print 'Random locations for an icon'
-	windowview(base, 0)		# set the view by icon
-	windowsize(base, (600, 600))
-	for i in range(50):
-		location(f, (random.randint(10, 590), random.randint(10, 590)))
+    # the file location only works in a window with icon view!
+    print 'Random locations for an icon'
+    windowview(base, 0)     # set the view by icon
+    windowsize(base, (600, 600))
+    for i in range(50):
+        location(f, (random.randint(10, 590), random.randint(10, 590)))
 
-	windowsize(base, (200, 400))
-	windowview(base, 1)		# set the view by icon
+    windowsize(base, (200, 400))
+    windowview(base, 1)     # set the view by icon
 
-	orgpos = windowposition(base)
-	print 'Animated window location'
-	for i in range(10):
-		pos = (100+i*10, 100+i*10)
-		windowposition(base, pos)
-		print '\twindow position', pos
-	windowposition(base, orgpos)	# park it where it was before
+    orgpos = windowposition(base)
+    print 'Animated window location'
+    for i in range(10):
+        pos = (100+i*10, 100+i*10)
+        windowposition(base, pos)
+        print '\twindow position', pos
+    windowposition(base, orgpos)    # park it where it was before
 
-	print 'Put a comment in file', f, ':'
-	print '\t', comment(f)		# print the Finder comment this file has
-	s = 'This is a comment no one reads!'
-	comment(f, s)			# set the Finder comment
-	
+    print 'Put a comment in file', f, ':'
+    print '\t', comment(f)      # print the Finder comment this file has
+    s = 'This is a comment no one reads!'
+    comment(f, s)           # set the Finder comment
+    
 def _test3():
-	print 'MacOS9 or better specific functions'
-	# processes
-	pr = processes()		# return a list of tuples with (active_processname, creatorcode)
-	print 'Return a list of current active processes:'
-	for p in pr:
-		print '\t', p
-	
-	# get attributes of the first process in the list
-	print 'Attributes of the first process in the list:'
-	pinfo = processinfo(pr[0][0])
-	print '\t', pr[0][0]
-	print '\t\tmemory partition', pinfo.partition		# the memory allocated to this process
-	print '\t\tmemory used', pinfo.used			# the memory actuall used by this process
-	print '\t\tis visible', pinfo.visible			# is the process visible to the user
-	print '\t\tis frontmost', pinfo.frontmost		# is the process the front most one?
-	print '\t\thas scripting', pinfo.hasscripting		# is the process scriptable?
-	print '\t\taccepts high level events', 	pinfo.accepthighlevel	# does the process accept high level appleevents?
+    print 'MacOS9 or better specific functions'
+    # processes
+    pr = processes()        # return a list of tuples with (active_processname, creatorcode)
+    print 'Return a list of current active processes:'
+    for p in pr:
+        print '\t', p
+    
+    # get attributes of the first process in the list
+    print 'Attributes of the first process in the list:'
+    pinfo = processinfo(pr[0][0])
+    print '\t', pr[0][0]
+    print '\t\tmemory partition', pinfo.partition       # the memory allocated to this process
+    print '\t\tmemory used', pinfo.used         # the memory actuall used by this process
+    print '\t\tis visible', pinfo.visible           # is the process visible to the user
+    print '\t\tis frontmost', pinfo.frontmost       # is the process the front most one?
+    print '\t\thas scripting', pinfo.hasscripting       # is the process scriptable?
+    print '\t\taccepts high level events',  pinfo.accepthighlevel   # does the process accept high level appleevents?
 
 if __name__ == '__main__':
-	_test()
-	_test2()
-	_test3()
-	
+    _test()
+    _test2()
+    _test3()
+