Mass check-in after untabifying all files that need it.
diff --git a/Lib/plat-irix6/flp.py b/Lib/plat-irix6/flp.py
index f713a92..484c8ff 100644
--- a/Lib/plat-irix6/flp.py
+++ b/Lib/plat-irix6/flp.py
@@ -24,11 +24,11 @@
 def parse_form(filename, formname):
     forms = checkcache(filename)
     if forms is None:
-	forms = parse_forms(filename)
+        forms = parse_forms(filename)
     if forms.has_key(formname):
-	return forms[formname]
+        return forms[formname]
     else:
-	raise error, 'No such form in fd file'
+        raise error, 'No such form in fd file'
 
 #
 # Externally visible function. Load all forms.
@@ -40,8 +40,8 @@
     nforms = _parse_fd_header(fp)
     forms = {}
     for i in range(nforms):
-	form = _parse_fd_form(fp, None)
-	forms[form[0].Name] = form
+        form = _parse_fd_form(fp, None)
+        forms[form[0].Name] = form
     writecache(filename, forms)
     return forms
 
@@ -49,48 +49,48 @@
 # Internal: see if a cached version of the file exists
 #
 MAGIC = '.fdc'
-_internal_cache = {}			# Used by frozen scripts only
+_internal_cache = {}                    # Used by frozen scripts only
 def checkcache(filename):
     if _internal_cache.has_key(filename):
-	altforms = _internal_cache[filename]
-	return _unpack_cache(altforms)
+        altforms = _internal_cache[filename]
+        return _unpack_cache(altforms)
     import marshal
     fp, filename = _open_formfile2(filename)
     fp.close()
     cachename = filename + 'c'
     try:
-	fp = open(cachename, 'r')
+        fp = open(cachename, 'r')
     except IOError:
-	#print 'flp: no cache file', cachename
-	return None
+        #print 'flp: no cache file', cachename
+        return None
     try:
-	if fp.read(4) != MAGIC:
-	    print 'flp: bad magic word in cache file', cachename
-	    return None
-	cache_mtime = rdlong(fp)
-	file_mtime = getmtime(filename)
-	if cache_mtime != file_mtime:
-	    #print 'flp: outdated cache file', cachename
-	    return None
-	#print 'flp: valid cache file', cachename
-	altforms = marshal.load(fp)
-	return _unpack_cache(altforms)
+        if fp.read(4) != MAGIC:
+            print 'flp: bad magic word in cache file', cachename
+            return None
+        cache_mtime = rdlong(fp)
+        file_mtime = getmtime(filename)
+        if cache_mtime != file_mtime:
+            #print 'flp: outdated cache file', cachename
+            return None
+        #print 'flp: valid cache file', cachename
+        altforms = marshal.load(fp)
+        return _unpack_cache(altforms)
     finally:
-	fp.close()
+        fp.close()
 
 def _unpack_cache(altforms):
-	forms = {}
-	for name in altforms.keys():
-	    altobj, altlist = altforms[name]
-	    obj = _newobj()
-	    obj.make(altobj)
-	    list = []
-	    for altobj in altlist:
-		nobj = _newobj()
-		nobj.make(altobj)
-		list.append(nobj)
-	    forms[name] = obj, list
-	return forms
+        forms = {}
+        for name in altforms.keys():
+            altobj, altlist = altforms[name]
+            obj = _newobj()
+            obj.make(altobj)
+            list = []
+            for altobj in altlist:
+                nobj = _newobj()
+                nobj.make(altobj)
+                list.append(nobj)
+            forms[name] = obj, list
+        return forms
 
 def rdlong(fp):
     s = fp.read(4)
@@ -106,9 +106,9 @@
     import os
     from stat import ST_MTIME
     try:
-	return os.stat(filename)[ST_MTIME]
+        return os.stat(filename)[ST_MTIME]
     except os.error:
-	return None
+        return None
 
 #
 # Internal: write cached version of the form (parsing is too slow!)
@@ -119,10 +119,10 @@
     fp.close()
     cachename = filename + 'c'
     try:
-	fp = open(cachename, 'w')
+        fp = open(cachename, 'w')
     except IOError:
-	print 'flp: can\'t create cache file', cachename
-	return # Never mind
+        print 'flp: can\'t create cache file', cachename
+        return # Never mind
     fp.write('\0\0\0\0') # Seek back and write MAGIC when done
     wrlong(fp, getmtime(filename))
     altforms = _pack_cache(forms)
@@ -153,11 +153,11 @@
 def _pack_cache(forms):
     altforms = {}
     for name in forms.keys():
-	obj, list = forms[name]
-	altobj = obj.__dict__
-	altlist = []
-	for obj in list: altlist.append(obj.__dict__)
-	altforms[name] = altobj, altlist
+        obj, list = forms[name]
+        altobj = obj.__dict__
+        altlist = []
+        for obj in list: altlist.append(obj.__dict__)
+        altforms[name] = altobj, altlist
     return altforms
 
 #
@@ -168,23 +168,23 @@
 
 def _open_formfile2(filename):
     if filename[-3:] <> '.fd':
-	filename = filename + '.fd'
+        filename = filename + '.fd'
     if filename[0] == '/':
-	try:
-	    fp = open(filename,'r')
-	except IOError:
-	    fp = None
+        try:
+            fp = open(filename,'r')
+        except IOError:
+            fp = None
     else:
-	for pc in sys.path:
-	    pn = os.path.join(pc, filename)
-	    try:
-		fp = open(pn, 'r')
-		filename = pn
-		break
-	    except IOError:
-		fp = None
+        for pc in sys.path:
+            pn = os.path.join(pc, filename)
+            try:
+                fp = open(pn, 'r')
+                filename = pn
+                break
+            except IOError:
+                fp = None
     if fp == None:
-	raise error, 'Cannot find forms file ' + filename
+        raise error, 'Cannot find forms file ' + filename
     return fp, filename
 
 #
@@ -194,12 +194,12 @@
     # First read the magic header line
     datum = _parse_1_line(file)
     if datum <> ('Magic', 12321):
-	raise error, 'Not a forms definition file'
+        raise error, 'Not a forms definition file'
     # Now skip until we know number of forms
     while 1:
-	datum = _parse_1_line(file)
-	if type(datum) == type(()) and datum[0] == 'Numberofforms':
-	    break
+        datum = _parse_1_line(file)
+        if type(datum) == type(()) and datum[0] == 'Numberofforms':
+            break
     return datum[1]
 #
 # Internal: parse fd form, or skip if name doesn't match.
@@ -208,17 +208,17 @@
 def _parse_fd_form(file, name):
     datum = _parse_1_line(file)
     if datum <> FORMLINE:
-	raise error, 'Missing === FORM === line'
+        raise error, 'Missing === FORM === line'
     form = _parse_object(file)
     if form.Name == name or name == None:
-	objs = []
-	for j in range(form.Numberofobjects):
-	    obj = _parse_object(file)
-	    objs.append(obj)
-	return (form, objs)
+        objs = []
+        for j in range(form.Numberofobjects):
+            obj = _parse_object(file)
+            objs.append(obj)
+        return (form, objs)
     else:
-	for j in range(form.Numberofobjects):
-	    _skip_object(file)
+        for j in range(form.Numberofobjects):
+            _skip_object(file)
     return None
 
 #
@@ -226,21 +226,21 @@
 #
 class _newobj:
     def add(self, name, value):
-	self.__dict__[name] = value
+        self.__dict__[name] = value
     def make(self, dict):
-	for name in dict.keys():
-	    self.add(name, dict[name])
+        for name in dict.keys():
+            self.add(name, dict[name])
 
 #
 # Internal parsing routines.
 #
 def _parse_string(str):
     if '\\' in str:
-	s = '\'' + str + '\''
-	try:
-	    return eval(s)
-	except:
-	    pass
+        s = '\'' + str + '\''
+        try:
+            return eval(s)
+        except:
+            pass
     return str
 
 def _parse_num(str):
@@ -250,19 +250,19 @@
     slist = string.split(str)
     nlist = []
     for i in slist:
-	nlist.append(_parse_num(i))
+        nlist.append(_parse_num(i))
     return nlist
 
 # This dictionary maps item names to parsing routines.
 # If no routine is given '_parse_num' is default.
 _parse_func = { \
-	'Name':		_parse_string, \
-	'Box':		_parse_numlist, \
-	'Colors':	_parse_numlist, \
-	'Label':	_parse_string, \
-	'Name':		_parse_string, \
-	'Callback':	_parse_string, \
-	'Argument':	_parse_string }
+        'Name':         _parse_string, \
+        'Box':          _parse_numlist, \
+        'Colors':       _parse_numlist, \
+        'Label':        _parse_string, \
+        'Name':         _parse_string, \
+        'Callback':     _parse_string, \
+        'Argument':     _parse_string }
 
 # This function parses a line, and returns either
 # a string or a tuple (name,value)
@@ -273,51 +273,51 @@
 def _parse_line(line):
     match = prog.match(line)
     if not match:
-	return line
+        return line
     name, value = match.group(1, 2)
     if name[0] == 'N':
-	    name = string.join(string.split(name),'')
-	    name = string.lower(name)
+            name = string.join(string.split(name),'')
+            name = string.lower(name)
     name = string.capitalize(name)
     try:
-	pf = _parse_func[name]
+        pf = _parse_func[name]
     except KeyError:
-	pf = _parse_num
+        pf = _parse_num
     value = pf(value)
     return (name, value)
 
 def _readline(file):
     line = file.readline()
     if not line:
-    	raise EOFError
+        raise EOFError
     return line[:-1]
-	
+        
 def _parse_1_line(file):
     line = _readline(file)
     while line == '':
-	line = _readline(file)
+        line = _readline(file)
     return _parse_line(line)
 
 def _skip_object(file):
     line = ''
     while not line in (SPLITLINE, FORMLINE, ENDLINE):
-	pos = file.tell()
-	line = _readline(file)
+        pos = file.tell()
+        line = _readline(file)
     if line == FORMLINE:
-	file.seek(pos)
+        file.seek(pos)
 
 def _parse_object(file):
     obj = _newobj()
     while 1:
-	pos = file.tell()
-	datum = _parse_1_line(file)
-	if datum in (SPLITLINE, FORMLINE, ENDLINE):
-	    if datum == FORMLINE:
-		file.seek(pos)
-	    return obj
-	if type(datum) <> type(()) or len(datum) <> 2:
-	    raise error, 'Parse error, illegal line in object: '+datum
-	obj.add(datum[0], datum[1])
+        pos = file.tell()
+        datum = _parse_1_line(file)
+        if datum in (SPLITLINE, FORMLINE, ENDLINE):
+            if datum == FORMLINE:
+                file.seek(pos)
+            return obj
+        if type(datum) <> type(()) or len(datum) <> 2:
+            raise error, 'Parse error, illegal line in object: '+datum
+        obj.add(datum[0], datum[1])
 
 #################################################################
 #   Part 2 - High-level object/form creation routines            #
@@ -330,7 +330,7 @@
     form = create_form(fdata)
     exec 'inst.'+fdata.Name+' = form\n'
     for odata in odatalist:
-	create_object_instance(inst, form, odata)
+        create_object_instance(inst, form, odata)
 
 #
 # External - Merge a form into an existing form in an instance
@@ -339,9 +339,9 @@
 def merge_full_form(inst, form, (fdata, odatalist)):
     exec 'inst.'+fdata.Name+' = form\n'
     if odatalist[0].Class <> FL.BOX:
-	raise error, 'merge_full_form() expects FL.BOX as first obj'
+        raise error, 'merge_full_form() expects FL.BOX as first obj'
     for odata in odatalist[1:]:
-	create_object_instance(inst, form, odata)
+        create_object_instance(inst, form, odata)
 
 
 #################################################################
@@ -362,7 +362,7 @@
 def create_object(form, odata):
     obj = _create_object(form, odata)
     if odata.Callback:
-	raise error, 'Creating free object with callback'
+        raise error, 'Creating free object with callback'
     return obj
 #
 # External create_object_instance - Create object in an instance.
@@ -370,25 +370,25 @@
 def create_object_instance(inst, form, odata):
     obj = _create_object(form, odata)
     if odata.Callback:
-	cbfunc = eval('inst.'+odata.Callback)
-	obj.set_call_back(cbfunc, odata.Argument)
+        cbfunc = eval('inst.'+odata.Callback)
+        obj.set_call_back(cbfunc, odata.Argument)
     if odata.Name:
-	exec 'inst.' + odata.Name + ' = obj\n'
+        exec 'inst.' + odata.Name + ' = obj\n'
 #
 # Internal _create_object: Create the object and fill options
 #
 def _create_object(form, odata):
     crfunc = _select_crfunc(form, odata.Class)
     obj = crfunc(odata.Type, odata.Box[0], odata.Box[1], odata.Box[2], \
-	    odata.Box[3], odata.Label)
+            odata.Box[3], odata.Label)
     if not odata.Class in (FL.BEGIN_GROUP, FL.END_GROUP):
-	obj.boxtype = odata.Boxtype
-	obj.col1 = odata.Colors[0]
-	obj.col2 = odata.Colors[1]
-	obj.align = odata.Alignment
-	obj.lstyle = odata.Style
-	obj.lsize = odata.Size
-	obj.lcol = odata.Lcol
+        obj.boxtype = odata.Boxtype
+        obj.col1 = odata.Colors[0]
+        obj.col2 = odata.Colors[1]
+        obj.align = odata.Alignment
+        obj.lstyle = odata.Style
+        obj.lsize = odata.Size
+        obj.lcol = odata.Lcol
     return obj
 #
 # Internal crfunc: helper function that returns correct create function
@@ -416,35 +416,35 @@
     elif cl == FL.TEXT: return fm.add_text
     elif cl == FL.TIMER: return fm.add_timer
     else:
-	raise error, 'Unknown object type: ' + `cl`
+        raise error, 'Unknown object type: ' + `cl`
 
 
 def test():
     import time
     t0 = time.time()
     if len(sys.argv) == 2:
-	forms = parse_forms(sys.argv[1])
-	t1 = time.time()
-	print 'parse time:', 0.001*(t1-t0), 'sec.'
-	keys = forms.keys()
-	keys.sort()
-	for i in keys:
-	    _printform(forms[i])
+        forms = parse_forms(sys.argv[1])
+        t1 = time.time()
+        print 'parse time:', 0.001*(t1-t0), 'sec.'
+        keys = forms.keys()
+        keys.sort()
+        for i in keys:
+            _printform(forms[i])
     elif len(sys.argv) == 3:
-	form = parse_form(sys.argv[1], sys.argv[2])
-	t1 = time.time()
-	print 'parse time:', round(t1-t0, 3), 'sec.'
-	_printform(form)
+        form = parse_form(sys.argv[1], sys.argv[2])
+        t1 = time.time()
+        print 'parse time:', round(t1-t0, 3), 'sec.'
+        _printform(form)
     else:
-	print 'Usage: test fdfile [form]'
+        print 'Usage: test fdfile [form]'
 
 def _printform(form):
     f = form[0]
     objs = form[1]
     print 'Form ', f.Name, ', size: ', f.Width, f.Height, ' Nobj ', f.Numberofobjects
     for i in objs:
-	print '  Obj ', i.Name, ' type ', i.Class, i.Type
-	print '    Box ', i.Box, ' btype ', i.Boxtype
-	print '    Label ', i.Label, ' size/style/col/align ', i.Size,i.Style, i.Lcol, i.Alignment
-	print '    cols ', i.Colors
-	print '    cback ', i.Callback, i.Argument
+        print '  Obj ', i.Name, ' type ', i.Class, i.Type
+        print '    Box ', i.Box, ' btype ', i.Boxtype
+        print '    Label ', i.Label, ' size/style/col/align ', i.Size,i.Style, i.Lcol, i.Alignment
+        print '    cols ', i.Colors
+        print '    cback ', i.Callback, i.Argument