diff --git a/.gitattributes b/.gitattributes
index 73ac29a4bc433c2c708ebdb95b8fd2d3cf49cedc..b5396faf6e02981a88a2ddebeca0a3e47418c532 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -4939,61 +4939,4 @@ SubSystems/Online_Cobalt/validation/validate eol=lf
 SubSystems/SAS_Tools/CMakeLists.txt -text
 /jenkins_make -text
 /lofar_config.h.cmake -text
-support/tools/BaseSimGUI/images/4.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/5.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/8.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Antenna01.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Copy24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Cut16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Cut24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Help16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/New16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/New24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Open16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Open24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Paste16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Paste24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Print16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Print24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Properties16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Save16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Save24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/SaveAs16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/SaveAs24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Stop16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Stop24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Zoom16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/Zoom24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/ZoomIn16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/ZoomIn24.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/b1.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/closeAllWindows16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/copy16.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/edit.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/mpan.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/mzoom.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/on.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/openfile.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/pan.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/select.gif -text svneol=unset#unset
-support/tools/BaseSimGUI/images/tb1.jpg -text svneol=unset#unset
-support/tools/BaseSimGUI/images/zoom.gif -text svneol=unset#unset
-support/tools/TreeBrowser/description_init.html -text
-support/tools/TreeBrowser/images/ftv2blank.png -text
-support/tools/TreeBrowser/images/ftv2doc.png -text
-support/tools/TreeBrowser/images/ftv2folderclosed.png -text
-support/tools/TreeBrowser/images/ftv2folderopen.png -text
-support/tools/TreeBrowser/images/ftv2lastnode.png -text
-support/tools/TreeBrowser/images/ftv2mlastnode.png -text
-support/tools/TreeBrowser/images/ftv2mnode.png -text
-support/tools/TreeBrowser/images/ftv2node.png -text
-support/tools/TreeBrowser/images/ftv2plastnode.png -text
-support/tools/TreeBrowser/images/ftv2pnode.png -text
-support/tools/TreeBrowser/images/ftv2vertline.png -text
-support/tools/TreeBrowser/images/lofar_back.gif -text
-support/tools/TreeBrowser/images/openordner.png -text
-support/tools/TreeBrowser/index.html -text
-support/tools/TreeBrowser/links_init.html -text
-support/tools/TreeBrowser/scripts/make_links.php -text
-support/tools/TreeBrowser/scripts/makepage.php -text
 support/tools/lofstorman -text
diff --git a/support/tools/BaseSimGUI/BaseSimGUI.html b/support/tools/BaseSimGUI/BaseSimGUI.html
deleted file mode 100644
index e2fefef20a0689b56bc511e79d44ece18161a587..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/BaseSimGUI.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<HTML>
-<HEAD>
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
-<TITLE>JBuilder Project BaseSimGUI.jpx</TITLE>
-</HEAD>
-<BODY>
-<H1>Project Notes</H1>
-<HR>
-<FONT SIZE=+1>
-<STRONG>Project: </STRONG>BaseSim GUI<BR>
-<STRONG>Author: </STRONG>Robbert Dam<BR>
-<STRONG>Company: </STRONG>Astron<BR>
-<STRONG>Description: </STRONG>Visualization of BaseSim/LofarSim functional end-to-end
-simulations<BR>
-
-<HR>
-<STRONG>Things to do... </STRONG><BR>
-</FONT>
-<UL>
-<!-- Edit this section to keep track of your to do items -->
-<LI>Create menu for opening/closing, changing view modus, etc.
-<LI>Create toolbar
-</UL>
-</BODY>
-</HTML>
diff --git a/support/tools/BaseSimGUI/BaseSimGUI.jpx b/support/tools/BaseSimGUI/BaseSimGUI.jpx
deleted file mode 100644
index 98ee07bbeca2480de5e990545fe209756d3b2bd4..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/BaseSimGUI.jpx
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--JBuilder XML Project-->
-<project>
-  <property category="idl" name="ProcessIDL" value="false" />
-  <property category="runtime.0" name="RunnableType" value="com.borland.jbuilder.runtime.ApplicationRunner" />
-  <property category="runtime.0" name="application.class" value="org.astron.basesim.Main" />
-  <property category="runtime.0" name="appserver.ejbJarsSaved" value="1" />
-  <property category="runtime.0" name="appserver.parameters" value="-jts -jns -jss -jdb" />
-  <property category="runtime.0" name="appserver.servername" value="ejbcontainer" />
-  <property category="runtime.0" name="appserver.vmparameters" value="" />
-  <property category="runtime.0" name="jsprunner.docbase" value="." />
-  <property category="runtime.0" name="jsprunner.jspfile" value="../../../../../opt/jbuilder4/bin" />
-  <property category="sys" name="AuthorLabel" value="@author" />
-  <property category="sys" name="BackupPath" value="bak" />
-  <property category="sys" name="CheckStable" value="1" />
-  <property category="sys" name="Company" value="ASTRON" />
-  <property category="sys" name="CompanyLabel" value="Company:" />
-  <property category="sys" name="Copyright" value="Copyright (c) 2001" />
-  <property category="sys" name="CopyrightLabel" value="Copyright:" />
-  <property category="sys" name="DefaultPackage" value="org.astron.basesim.def" />
-  <property category="sys" name="Description" value="" />
-  <property category="sys" name="DescriptionLabel" value="Description:" />
-  <property category="sys" name="DocPath" value="doc" />
-  <property category="sys" name="ExcludeClassEnabled" value="0" />
-  <property category="sys" name="JDK" value="java 1.3.0-C" />
-  <property category="sys" name="LastTag" value="0" />
-  <property category="sys" name="Libraries" value="Kiwi;XML Parser for Java" />
-  <property category="sys" name="MakeStable" value="0" />
-  <property category="sys" name="OutPath" value="classes" />
-  <property category="sys" name="SourcePath" value="src" />
-  <property category="sys" name="Title" value="" />
-  <property category="sys" name="TitleLabel" value="Title:" />
-  <property category="sys" name="Version" value="1.0" />
-  <property category="sys" name="VersionLabel" value="@version" />
-  <property category="sys" name="WorkingDirectory" value="." />
-  <node type="Package" name="org" />
-  <file path="basesim.dtd" />
-  <file path="basesim.xml" />
-  <file path="classMap.cfg" />
-  <file path="corr.xml" />
-  <file path="demo.xml" />
-  <file path="src/org/astron/lofarsim/DHFreq.java" />
-  <file path="src/org/astron/basesim/JTestGraph.java" />
-  <file path="notes.txt" />
-  <file path="../LOFARSim/output.xml" />
-  <file path="simple.xml" />
-  <file path="simple2.xml" />
-  <file path="simple3.xml" />
-  <file path="test1.xml" />
-  <file path="test2.xml" />
-  <file path="test3.xml" />
-  <file path="test5.xml" />
-  <file path="test6.xml" />
-  <file path="worklog.txt" />
-</project>
-
diff --git a/support/tools/BaseSimGUI/BaseSimGUI.jpx.local b/support/tools/BaseSimGUI/BaseSimGUI.jpx.local
deleted file mode 100644
index beee6921b6ca51ad3b180ee778ae270bde323e03..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/BaseSimGUI.jpx.local
+++ /dev/null
@@ -1,28 +0,0 @@
-debug.Breakpoints.1[0]=1  027 org.astron.basesim.JBaseSim36 src/org/astron/basesim/JBaseSim.java3  3901  10  1  10  1  10  1  0 -1
-debug.NoTracingClasses.1[0]=23 com.borland.datastore.*1  1 -1
-debug.NoTracingClasses.10[0]=15 com.visigenic.*1  1 -1
-debug.NoTracingClasses.11[0]=6  java.*1  1 -1
-debug.NoTracingClasses.12[0]=7  javax.*1  1 -1
-debug.NoTracingClasses.13[0]=9  org.omg.*1  1 -1
-debug.NoTracingClasses.14[0]=5  sun.*1  1 -1
-debug.NoTracingClasses.2[0]=21 com.borland.dbswing.*1  1 -1
-debug.NoTracingClasses.3[0]=16 com.borland.dx.*1  1 -1
-debug.NoTracingClasses.4[0]=16 com.borland.jb.*1  1 -1
-debug.NoTracingClasses.5[0]=18 com.borland.jbcl.*1  1 -1
-debug.NoTracingClasses.6[0]=30 com.borland.jbuilder.runtime.*1  1 -1
-debug.NoTracingClasses.7[0]=17 com.borland.sql.*1  1 -1
-debug.NoTracingClasses.8[0]=21 com.inprise.vbroker.*1  1 -1
-debug.NoTracingClasses.9[0]=9  com.sun.*1  1 -1
-debug.Watches.1[0]=1  14  node10 expression -1
-editor.search.file_filter_history.1[0]=*.java
-editor.search.path_history.1[0]=C:\WINNT\Profiles\rdam\jbproject\BaseSimGUI
-editor.search.path_history.2[0]=/data/home/rdam/projects/BaseSimGUI/src
-history.files.active[0]=src/org/astron/basesim/Main.java
-history.files.open.1[0]=src/org/astron/basesim/Main.java,F;465,16163
-history.files.open.2[0]=src/org/astron/basesim/GraphStep.java,F;85,2922
-history.files.open.3[0]=src/org/astron/basesim/GraphSimul.java,F;55,1945
-history.files.open.4[0]=src/org/astron/basesim/LayoutSimul.java,F;273,9958
-history.files.open.5[0]=src/org/astron/basesim/DimensionController.java,F;37,1714
-history.files.open.6[0]=src/org/astron/basesim/GraphDiagram.java,F;39,1920
-history.files.open.7[0]=src/org/astron/basesim/JBaseSim.java,F;582,19626
-sys.Author[0]=Robbert Dam
diff --git a/support/tools/BaseSimGUI/Makefile b/support/tools/BaseSimGUI/Makefile
deleted file mode 100644
index 9544fd957089a586488f8e04a5a5e8ee8d7418cf..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-all: Main.class
-
-include jarpath.include
-
-Main.class:
-	javac -deprecation src/org/astron/lofarsim/*.java \
-		-classpath $(SAXJAR):$(KIWIJAR) \
-		-sourcepath src \
-		-d classes
-	javac -deprecation src/org/astron/basesim/Main.java \
-		-classpath $(SAXJAR):$(KIWIJAR) \
-		-sourcepath src \
-		-d classes
diff --git a/support/tools/BaseSimGUI/RunBaseSimGUI b/support/tools/BaseSimGUI/RunBaseSimGUI
deleted file mode 100755
index 0e25b0bc104f0736fb3e4b2b9100764b493b104a..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/RunBaseSimGUI
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-# Get paths to required jars
-. ./jarpath.include
-
-# start BaseSim GUI
-java -classpath $SAXJAR:$KIWIJAR:classes org/astron/basesim/Main
diff --git a/support/tools/BaseSimGUI/basesim.cfg b/support/tools/BaseSimGUI/basesim.cfg
deleted file mode 100644
index fb3d3c004ced5ba741d035d1b9a7ee2c0140d0f5..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/basesim.cfg
+++ /dev/null
@@ -1,7 +0,0 @@
-#Fri Mar 15 16:10:53 CET 2002
-toolTipDismissDelay=2000
-lastSavePath=C\:\\demo2.xml
-xmlParser=org.apache.xerces.parsers.SAXParser
-enableStdout=true
-toolTipReshowDelay=1
-lastOpenPath=/data/home/rdam/projects/LOFAR/support/tools/BaseSimGUI/lib.xml
diff --git a/support/tools/BaseSimGUI/basesim.dtd b/support/tools/BaseSimGUI/basesim.dtd
deleted file mode 100644
index 01bbadde36b9c873bbdc4468088d2e12aec1c0a2..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/basesim.dtd
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml encoding="UTF-8"?>
-<!ELEMENT   basesim     (simul+)>
-<!ELEMENT   simul       (workholder,(simul|step|exstep)*,connect*)>
-<!ELEMENT   step        (workholder)>
-<!ELEMENT   exstep      EMPTY>
-<!ELEMENT   workholder  (dataholder*)>
-<!ELEMENT   dataholder  EMPTY>
-<!ELEMENT   connect     EMPTY>
-
-<!ATTLIST   workholder
-                name    CDATA           #IMPLIED
-                class   CDATA           #IMPLIED>
-
-<!ATTLIST   simul
-		name	CDATA		#REQUIRED
-  		node	CDATA		#IMPLIED>
-
-<!ATTLIST   step
-                name    CDATA           #REQUIRED
-                node    CDATA           #IMPLIED>
-
-<!ATTLIST   exstep
-                name    CDATA           #REQUIRED
-                exname  CDATA           #REQUIRED
-                node    CDATA           #IMPLIED
-                src     CDATA           #REQUIRED>
-
-<!ATTLIST   dataholder
-                name    CDATA           #IMPLIED
-		type	(in|out)	#REQUIRED>
-
-<!ATTLIST   connect
-                src     CDATA           #REQUIRED
-                dest    CDATA           #REQUIRED
-                rate    CDATA           #IMPLIED
-                class   CDATA           #IMPLIED>
diff --git a/support/tools/BaseSimGUI/classMap.cfg b/support/tools/BaseSimGUI/classMap.cfg
deleted file mode 100644
index 9e43ca25e693036f95f3130b641ed61f9d4dcc04..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/classMap.cfg
+++ /dev/null
@@ -1,44 +0,0 @@
-# classMap.cfg
-#
-# Here you can map your C++ WorkHolders/DataHolders to a corresponding
-# Java class that will visualize the object. DataHolders should map to
-# classes inherited from GraphDataHolder and should start with
-# DH. WorkHolders should map to classes inherited from GraphWorkHolder
-# and should start with WH.
-# ------------------------------------------------------------------------------
-
-#-- DataHolder class map
-
-DH_Beam       = org.astron.lofarsim.DHBeam
-DH_BeamBand   = org.astron.lofarsim.DHBeamBand
-DH_BeamT      = org.astron.lofarsim.DHBeamT
-DH_Corr       = org.astron.lofarsim.DHCorr
-DH_Empty      = org.astron.basesim.def.DHEmpty
-DH_FreqT      = org.astron.lofarsim.DHFreqT
-
-#-- WorkHolder class map
-
-WH_Antenna    = org.astron.lofarsim.WHAntenna
-WH_Beam       = org.astron.lofarsim.WHBeam
-WH_CPInput    = org.astron.lofarsim.WHCPInput
-WH_Controller = org.astron.lofarsim.WHController
-WH_Convolve   = org.astron.lofarsim.WHConvolve
-WH_Corr       = org.astron.lofarsim.WHCorr
-WH_DataProc   = org.astron.lofarsim.WHDataProc
-WH_FFT        = org.astron.lofarsim.WHFFT
-WH_Integrator = org.astron.lofarsim.WHIntegrator
-WH_MakeMS     = org.astron.lofarsim.WHMakeMS
-WH_Station    = org.astron.lofarsim.WHStation
-WH_TransB     = org.astron.lofarsim.WHTransB
-WH_TransF     = org.astron.lofarsim.WHTransF
-
-#-- TransportHolder class map
-
-TH_Mem        = org.astron.basesim.def.ConMem
-TH_MPI        = org.astron.basesim.def.ConMPI
-TH_Corba      = org.astron.basesim.def.ConCorba
-
-#-- Simul/Step class map
-
-exsimul       = org.astron.basesim.GraphSimul
-exstep        = org.astron.basesim.GraphStep
diff --git a/support/tools/BaseSimGUI/demo1.xml b/support/tools/BaseSimGUI/demo1.xml
deleted file mode 100644
index c44e73f8be1e8f54498526f445c4daecb4bd986c..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/demo1.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE basesim SYSTEM "basesim.dtd">
-<basesim>
-  <simul name="mySimul">
-
-    <!-- WorkHolder definition; only one WH per Simul -->
-    <workholder name="wh1">
-      <dataholder name = "dh1" type="in"/>
-      <dataholder name = "dh2" type="out"/>
-    </workholder>
-
-    <step name="myStep1">
-        <workholder name="myWorkHolder" class="WH_Antenna">
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh2" type="out"/>
-	</workholder>
-    </step>
-
-    <step name="myStep2">
-        <workholder name="myWorkHolder" class="WH_Antenna">
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh2" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh2" type="out"/>
-	</workholder>
-    </step>
-
-    <step name="myStep3">
-        <workholder name="myWorkHolder" class="WH_Antenna">
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh2" type="out"/>
-	</workholder>
-    </step>
-
-    <step name="myStep4">
-        <workholder name="myWorkHolder" class="WH_Antenna">
-		<dataholder name="dh1" type="in"/>
-		<dataholder name="dh2" type="out"/>
-	</workholder>
-    </step>
-
-    <step name="myStep5">
-        <workholder name="myWorkHolder" class="WH_Antenna">
-		<dataholder name="dh2" type="in"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-		<dataholder name="dh1" type="out"/>
-	</workholder>
-    </step>
-    
-    <connect src="myStep5" dest="myStep2"/>
-    <connect src="myStep2" dest="myStep3"/>
-    <connect src="myStep3" dest="myStep4"/>
-    <connect src="myStep5" dest="myStep1"/>
-    <connect src="myStep1" dest="myStep3"/>
-
-    <connect src=".dh1" dest="myStep5.dh2"/>
-    <connect src="myStep4.dh2" dest=".dh2"/>
-    
-
-  </simul>
-</basesim>
diff --git a/support/tools/BaseSimGUI/demo2.xml b/support/tools/BaseSimGUI/demo2.xml
deleted file mode 100644
index 7e002a7a0129d21edcca228b07daf5925609a5c1..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/demo2.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE basesim SYSTEM "basesim.dtd">
-<basesim>
-  <simul name="mySimul">
-
-    <!-- WorkHolder definition; only one WH per Simul -->
-    <workholder name="wh1">
-      <dataholder name = "dh1" type="in"/>
-      <dataholder name = "dh2" type="out"/>
-    </workholder>
-
-    <exstep name="simul1" exname="mySimul" src="lib.xml"/>
-    <exstep name="simul2" exname="mySimul" src="lib.xml"/>
-    <exstep name="simul3" exname="mySimul" src="lib.xml"/>
-    <exstep name="simul4" exname="mySimul" src="lib.xml"/>
-
-    <connect src="simul1" dest="simul2"/>
-    <connect src="simul3" dest="simul4"/>
-  </simul>
-</basesim>
diff --git a/support/tools/BaseSimGUI/error.xml b/support/tools/BaseSimGUI/error.xml
deleted file mode 100644
index d03a7676b93f0fdb2b81348b90f1b417941fdc66..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/error.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE basesim SYSTEM "basesim.dtd">
-<basesim>
-  <simul name="mySimul">
-
-    <!-- WorkHolder definition; only one WH per Simul -->
-    <workholder name="wh1">
-      <dataholder name = "dh1" type="in"/>
-      <dataholder name = "dh2" type="out"/>
-    </workholder>
-
-
-    <exstep name="myExStep" exname="mySimul" src="c:\emptySimul.xml"/>
-
-  </simul>
-</basesim>
diff --git a/support/tools/BaseSimGUI/images/4.gif b/support/tools/BaseSimGUI/images/4.gif
deleted file mode 100644
index 771d3e163a0b464510454c0ec1209c204eb241ca..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/4.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/5.gif b/support/tools/BaseSimGUI/images/5.gif
deleted file mode 100644
index 5433ba00551a65dc8273a951dd371ac0e7daf769..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/5.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/8.gif b/support/tools/BaseSimGUI/images/8.gif
deleted file mode 100644
index 621d19ed0e77471b13a8ac4a481c65eb93b0d1e2..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/8.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Antenna01.gif b/support/tools/BaseSimGUI/images/Antenna01.gif
deleted file mode 100644
index d2b0938889905a0b07e295ec0af36662c1b97c8a..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Antenna01.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Copy24.gif b/support/tools/BaseSimGUI/images/Copy24.gif
deleted file mode 100644
index c665d0713e15fdff54a8ba7fcdfee29bb46590fc..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Copy24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Cut16.gif b/support/tools/BaseSimGUI/images/Cut16.gif
deleted file mode 100644
index 14b73a8577fa6d300ddf6ea8b1f999ee214f822f..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Cut16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Cut24.gif b/support/tools/BaseSimGUI/images/Cut24.gif
deleted file mode 100644
index 5c37d3aff1d65cbc155ac690ce2aeb172095a797..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Cut24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Help16.gif b/support/tools/BaseSimGUI/images/Help16.gif
deleted file mode 100644
index dc5c2d310def06e1a13b61de3724a682dd4002d2..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Help16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/New16.gif b/support/tools/BaseSimGUI/images/New16.gif
deleted file mode 100644
index 3513dfddbb9402244b189c1886e738051f83b256..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/New16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/New24.gif b/support/tools/BaseSimGUI/images/New24.gif
deleted file mode 100644
index 1cc488d4524a8f74b5586883fe8d6ab2c91bcb05..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/New24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Open16.gif b/support/tools/BaseSimGUI/images/Open16.gif
deleted file mode 100644
index fabd5676f96cf46b62fe3c91fce204c2339b64ea..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Open16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Open24.gif b/support/tools/BaseSimGUI/images/Open24.gif
deleted file mode 100644
index 2086bc296307753867ddb03be7f1a1bfc94d43e3..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Open24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Paste16.gif b/support/tools/BaseSimGUI/images/Paste16.gif
deleted file mode 100644
index f118c7eab8c450001b762d80446f6b7b9f5222c3..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Paste16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Paste24.gif b/support/tools/BaseSimGUI/images/Paste24.gif
deleted file mode 100644
index 26cc4c58bf99f3b0d1d0c4cc95a26416d757f7cf..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Paste24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Print16.gif b/support/tools/BaseSimGUI/images/Print16.gif
deleted file mode 100644
index 7eb82995443204d47572a2f849620dc8e491084b..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Print16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Print24.gif b/support/tools/BaseSimGUI/images/Print24.gif
deleted file mode 100644
index e6b4fb177c737f574e63baa93bf34f85ce95a0f9..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Print24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Properties16.gif b/support/tools/BaseSimGUI/images/Properties16.gif
deleted file mode 100644
index c0c3d43260a7eacc37e7d22d03919e8261bb7186..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Properties16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Save16.gif b/support/tools/BaseSimGUI/images/Save16.gif
deleted file mode 100644
index 954f1accde64db9e98e9a6e528b459f3027b018c..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Save16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Save24.gif b/support/tools/BaseSimGUI/images/Save24.gif
deleted file mode 100644
index bfa98a8df0a1b7634dccb78b9ba0c6bb7e26de5b..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Save24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/SaveAs16.gif b/support/tools/BaseSimGUI/images/SaveAs16.gif
deleted file mode 100644
index 8d3929c8aa7d56483d4d3b218e840ca56506561a..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/SaveAs16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/SaveAs24.gif b/support/tools/BaseSimGUI/images/SaveAs24.gif
deleted file mode 100644
index 97eb6fa30d304cb61883d56f73b1f399b419ab1c..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/SaveAs24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Stop16.gif b/support/tools/BaseSimGUI/images/Stop16.gif
deleted file mode 100644
index 064202bf39f5f0a44c3088bf3fd599dcb1fece5c..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Stop16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Stop24.gif b/support/tools/BaseSimGUI/images/Stop24.gif
deleted file mode 100644
index 90515c8acf860707391fa4744957e56ead156313..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Stop24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Zoom16.gif b/support/tools/BaseSimGUI/images/Zoom16.gif
deleted file mode 100644
index 9e488969a627368b6d64dd45c677ed60a2e08bed..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Zoom16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/Zoom24.gif b/support/tools/BaseSimGUI/images/Zoom24.gif
deleted file mode 100644
index 86ae8631b136131f8f6e26ec43ec389e23f6d32a..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/Zoom24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/ZoomIn16.gif b/support/tools/BaseSimGUI/images/ZoomIn16.gif
deleted file mode 100644
index 2329426e4817c9edf7f8db004d72cc096d0888e0..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/ZoomIn16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/ZoomIn24.gif b/support/tools/BaseSimGUI/images/ZoomIn24.gif
deleted file mode 100644
index dbd44778a3db23e9b0cd4754a3980c57eed59b91..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/ZoomIn24.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/b1.gif b/support/tools/BaseSimGUI/images/b1.gif
deleted file mode 100644
index cee9d34e6791f7baffe0692a093465f565ed27c8..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/b1.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/closeAllWindows16.gif b/support/tools/BaseSimGUI/images/closeAllWindows16.gif
deleted file mode 100644
index a27c20fbb7712b28078f2b87815a400052f07949..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/closeAllWindows16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/copy16.gif b/support/tools/BaseSimGUI/images/copy16.gif
deleted file mode 100644
index fa986813a821559ca5120bf8dfaa3c38cd474190..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/copy16.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/edit.gif b/support/tools/BaseSimGUI/images/edit.gif
deleted file mode 100644
index 3d52e037ffb49b15c4e61364e177040095c000aa..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/edit.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/mpan.gif b/support/tools/BaseSimGUI/images/mpan.gif
deleted file mode 100644
index 82fb3824eac2bcf857b2bf282827980c434bc7c9..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/mpan.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/mzoom.gif b/support/tools/BaseSimGUI/images/mzoom.gif
deleted file mode 100644
index 2ac1f91a1a17880d225496a42966048df00d0d21..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/mzoom.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/on.gif b/support/tools/BaseSimGUI/images/on.gif
deleted file mode 100644
index 1d17b38d0f22e427546b09a7f64d51ee3cddc8ae..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/on.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/openfile.gif b/support/tools/BaseSimGUI/images/openfile.gif
deleted file mode 100644
index 0e367cba07b93cfe40716144b5d43fa9a743768c..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/openfile.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/pan.gif b/support/tools/BaseSimGUI/images/pan.gif
deleted file mode 100644
index ddef4de1c5e4f3f0b45b41b41e96b7a18b0229f5..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/pan.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/select.gif b/support/tools/BaseSimGUI/images/select.gif
deleted file mode 100644
index cb788e3b8dfbf27724c1676d692174d6c691dfc7..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/select.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/tb1.jpg b/support/tools/BaseSimGUI/images/tb1.jpg
deleted file mode 100644
index 1a791b0f1d71fad80f57933fd43730219ec07df6..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/tb1.jpg and /dev/null differ
diff --git a/support/tools/BaseSimGUI/images/zoom.gif b/support/tools/BaseSimGUI/images/zoom.gif
deleted file mode 100644
index 7cfe0407c2567151754d42a301559f2f61d696d6..0000000000000000000000000000000000000000
Binary files a/support/tools/BaseSimGUI/images/zoom.gif and /dev/null differ
diff --git a/support/tools/BaseSimGUI/jarpath.include b/support/tools/BaseSimGUI/jarpath.include
deleted file mode 100644
index d82607c49e4022366ad3a2309573608b04a7acfd..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/jarpath.include
+++ /dev/null
@@ -1,2 +0,0 @@
-SAXJAR=../../../../IMPORT/libraries/sax/xerces.jar
-KIWIJAR=../../../../IMPORT/libraries/kiwi/kiwi-1.3.1/kiwi.jar
diff --git a/support/tools/BaseSimGUI/lib.xml b/support/tools/BaseSimGUI/lib.xml
deleted file mode 100644
index 370749ca928713b1eee2cc5502dd73bfe2309c99..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/lib.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE basesim SYSTEM "basesim.dtd">
-<basesim>
-  <simul name="mySimul">
-
-    <!-- WorkHolder definition; only one WH per Simul -->
-    <workholder name="wh1">
-      <dataholder name = "dh1" type="in"/>
-      <dataholder name = "dh2" type="in"/>
-      <dataholder name = "dh3" type="in"/>
-      <dataholder name = "dh4" type="out"/>
-      <dataholder name = "dh5" type="out"/>
-      <dataholder name = "dh6" type="out"/>
-    </workholder>
-
-
-    <exstep name="myExStep1" exname="mySimul" src="demo1.xml" node="1"/>
-    <exstep name="myExStep2" exname="mySimul" src="demo1.xml" node="1"/>
-    <exstep name="myExStep3" exname="mySimul" src="demo1.xml" node="1"/>
-    <exstep name="myExStep4" exname="mySimul" src="demo1.xml" node="2"/>
-    <exstep name="myExStep5" exname="mySimul" src="demo1.xml" node="2"/>
-    <exstep name="myExStep6" exname="mySimul" src="demo1.xml" node="2"/>
-
-    <connect src="myExStep1" dest="myExStep4"/>
-    <connect src="myExStep2" dest="myExStep5"/>
-    <connect src="myExStep3" dest="myExStep6"/>
-
-    <connect src=".dh1" dest="myExStep1.dh1"/>
-    <connect src=".dh2" dest="myExStep2.dh1"/>
-    <connect src=".dh3" dest="myExStep3.dh1"/>
-    <connect src="myExStep4.dh2" dest=".dh4"/>
-    <connect src="myExStep5.dh2" dest=".dh5"/>
-    <connect src="myExStep6.dh2" dest=".dh6"/>
-
-  </simul>
-</basesim>
diff --git a/support/tools/BaseSimGUI/out.xml b/support/tools/BaseSimGUI/out.xml
deleted file mode 100644
index c35073f03e2a896ee81d866cf5219c7554f32b25..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/out.xml
+++ /dev/null
@@ -1,5331 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE basesim SYSTEM "basesim.dtd">
-<basesim>
-    <simul name="LofarSim0" node="node 0">
-        <workholder class="WH_Empty">
-            <dataholder name="dh1" class="DH_Empty" type="input"/>
-            <dataholder name="dh2" class="DH_Empty" type="output"/>
-        </workholder>
-        <simul name="Lofar_Station_03" node="node 1">
-            <workholder class="WH_Station">
-                <dataholder name="dh4" class="DH_Antenna" type="input"/>
-                <dataholder name="dh5" class="DH_Antenna" type="input"/>
-                <dataholder name="dh6" class="DH_Antenna" type="input"/>
-                <dataholder name="dh7" class="DH_Antenna" type="input"/>
-                <dataholder name="dh8" class="DH_beam" connect="dh2712" type="output"/>
-            </workholder>
-            <step name="Antenna_09" node="node 1">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh10" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh11" class="DH_Antenna" connect="dh22" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_112" node="node 1">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh13" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh14" class="DH_Antenna" connect="dh25" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_215" node="node 1">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh16" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh17" class="DH_Antenna" connect="dh28" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_318" node="node 1">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh19" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh20" class="DH_Antenna" connect="dh31" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_021" node="node 1">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh22" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh23" class="DH_freq" connect="dh34" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_124" node="node 1">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh25" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh26" class="DH_freq" connect="dh35" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_227" node="node 1">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh28" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh29" class="DH_freq" connect="dh36" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_330" node="node 1">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh31" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh32" class="DH_freq" connect="dh37" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeF_0_833" node="node 1">
-                <workholder class="WH_TransF">
-                    <dataholder name="dh34" class="DH_freq" type="input"/>
-                    <dataholder name="dh35" class="DH_freq" type="input"/>
-                    <dataholder name="dh36" class="DH_freq" type="input"/>
-                    <dataholder name="dh37" class="DH_freq" type="input"/>
-                    <dataholder name="dh38" class="DH_freqT" connect="dh167" type="output"/>
-                    <dataholder name="dh39" class="DH_freqT" connect="dh170" type="output"/>
-                    <dataholder name="dh40" class="DH_freqT" connect="dh173" type="output"/>
-                    <dataholder name="dh41" class="DH_freqT" connect="dh176" type="output"/>
-                    <dataholder name="dh42" class="DH_freqT" connect="dh179" type="output"/>
-                    <dataholder name="dh43" class="DH_freqT" connect="dh182" type="output"/>
-                    <dataholder name="dh44" class="DH_freqT" connect="dh185" type="output"/>
-                    <dataholder name="dh45" class="DH_freqT" connect="dh188" type="output"/>
-                    <dataholder name="dh46" class="DH_freqT" connect="dh191" type="output"/>
-                    <dataholder name="dh47" class="DH_freqT" connect="dh194" type="output"/>
-                    <dataholder name="dh48" class="DH_freqT" connect="dh197" type="output"/>
-                    <dataholder name="dh49" class="DH_freqT" connect="dh200" type="output"/>
-                    <dataholder name="dh50" class="DH_freqT" connect="dh203" type="output"/>
-                    <dataholder name="dh51" class="DH_freqT" connect="dh206" type="output"/>
-                    <dataholder name="dh52" class="DH_freqT" connect="dh209" type="output"/>
-                    <dataholder name="dh53" class="DH_freqT" connect="dh212" type="output"/>
-                    <dataholder name="dh54" class="DH_freqT" connect="dh215" type="output"/>
-                    <dataholder name="dh55" class="DH_freqT" connect="dh218" type="output"/>
-                    <dataholder name="dh56" class="DH_freqT" connect="dh221" type="output"/>
-                    <dataholder name="dh57" class="DH_freqT" connect="dh224" type="output"/>
-                    <dataholder name="dh58" class="DH_freqT" connect="dh227" type="output"/>
-                    <dataholder name="dh59" class="DH_freqT" connect="dh230" type="output"/>
-                    <dataholder name="dh60" class="DH_freqT" connect="dh233" type="output"/>
-                    <dataholder name="dh61" class="DH_freqT" connect="dh236" type="output"/>
-                    <dataholder name="dh62" class="DH_freqT" connect="dh239" type="output"/>
-                    <dataholder name="dh63" class="DH_freqT" connect="dh242" type="output"/>
-                    <dataholder name="dh64" class="DH_freqT" connect="dh245" type="output"/>
-                    <dataholder name="dh65" class="DH_freqT" connect="dh248" type="output"/>
-                    <dataholder name="dh66" class="DH_freqT" connect="dh251" type="output"/>
-                    <dataholder name="dh67" class="DH_freqT" connect="dh254" type="output"/>
-                    <dataholder name="dh68" class="DH_freqT" connect="dh257" type="output"/>
-                    <dataholder name="dh69" class="DH_freqT" connect="dh260" type="output"/>
-                    <dataholder name="dh70" class="DH_freqT" connect="dh263" type="output"/>
-                    <dataholder name="dh71" class="DH_freqT" connect="dh266" type="output"/>
-                    <dataholder name="dh72" class="DH_freqT" connect="dh269" type="output"/>
-                    <dataholder name="dh73" class="DH_freqT" connect="dh272" type="output"/>
-                    <dataholder name="dh74" class="DH_freqT" connect="dh275" type="output"/>
-                    <dataholder name="dh75" class="DH_freqT" connect="dh278" type="output"/>
-                    <dataholder name="dh76" class="DH_freqT" connect="dh281" type="output"/>
-                    <dataholder name="dh77" class="DH_freqT" connect="dh284" type="output"/>
-                    <dataholder name="dh78" class="DH_freqT" connect="dh287" type="output"/>
-                    <dataholder name="dh79" class="DH_freqT" connect="dh290" type="output"/>
-                    <dataholder name="dh80" class="DH_freqT" connect="dh293" type="output"/>
-                    <dataholder name="dh81" class="DH_freqT" connect="dh296" type="output"/>
-                    <dataholder name="dh82" class="DH_freqT" connect="dh299" type="output"/>
-                    <dataholder name="dh83" class="DH_freqT" connect="dh302" type="output"/>
-                    <dataholder name="dh84" class="DH_freqT" connect="dh305" type="output"/>
-                    <dataholder name="dh85" class="DH_freqT" connect="dh308" type="output"/>
-                    <dataholder name="dh86" class="DH_freqT" connect="dh311" type="output"/>
-                    <dataholder name="dh87" class="DH_freqT" connect="dh314" type="output"/>
-                    <dataholder name="dh88" class="DH_freqT" connect="dh317" type="output"/>
-                    <dataholder name="dh89" class="DH_freqT" connect="dh320" type="output"/>
-                    <dataholder name="dh90" class="DH_freqT" connect="dh323" type="output"/>
-                    <dataholder name="dh91" class="DH_freqT" connect="dh326" type="output"/>
-                    <dataholder name="dh92" class="DH_freqT" connect="dh329" type="output"/>
-                    <dataholder name="dh93" class="DH_freqT" connect="dh332" type="output"/>
-                    <dataholder name="dh94" class="DH_freqT" connect="dh335" type="output"/>
-                    <dataholder name="dh95" class="DH_freqT" connect="dh338" type="output"/>
-                    <dataholder name="dh96" class="DH_freqT" connect="dh341" type="output"/>
-                    <dataholder name="dh97" class="DH_freqT" connect="dh344" type="output"/>
-                    <dataholder name="dh98" class="DH_freqT" connect="dh347" type="output"/>
-                    <dataholder name="dh99" class="DH_freqT" connect="dh350" type="output"/>
-                    <dataholder name="dh100" class="DH_freqT" connect="dh353" type="output"/>
-                    <dataholder name="dh101" class="DH_freqT" connect="dh356" type="output"/>
-                    <dataholder name="dh102" class="DH_freqT" connect="dh359" type="output"/>
-                    <dataholder name="dh103" class="DH_freqT" connect="dh362" type="output"/>
-                    <dataholder name="dh104" class="DH_freqT" connect="dh365" type="output"/>
-                    <dataholder name="dh105" class="DH_freqT" connect="dh368" type="output"/>
-                    <dataholder name="dh106" class="DH_freqT" connect="dh371" type="output"/>
-                    <dataholder name="dh107" class="DH_freqT" connect="dh374" type="output"/>
-                    <dataholder name="dh108" class="DH_freqT" connect="dh377" type="output"/>
-                    <dataholder name="dh109" class="DH_freqT" connect="dh380" type="output"/>
-                    <dataholder name="dh110" class="DH_freqT" connect="dh383" type="output"/>
-                    <dataholder name="dh111" class="DH_freqT" connect="dh386" type="output"/>
-                    <dataholder name="dh112" class="DH_freqT" connect="dh389" type="output"/>
-                    <dataholder name="dh113" class="DH_freqT" connect="dh392" type="output"/>
-                    <dataholder name="dh114" class="DH_freqT" connect="dh395" type="output"/>
-                    <dataholder name="dh115" class="DH_freqT" connect="dh398" type="output"/>
-                    <dataholder name="dh116" class="DH_freqT" connect="dh401" type="output"/>
-                    <dataholder name="dh117" class="DH_freqT" connect="dh404" type="output"/>
-                    <dataholder name="dh118" class="DH_freqT" connect="dh407" type="output"/>
-                    <dataholder name="dh119" class="DH_freqT" connect="dh410" type="output"/>
-                    <dataholder name="dh120" class="DH_freqT" connect="dh413" type="output"/>
-                    <dataholder name="dh121" class="DH_freqT" connect="dh416" type="output"/>
-                    <dataholder name="dh122" class="DH_freqT" connect="dh419" type="output"/>
-                    <dataholder name="dh123" class="DH_freqT" connect="dh422" type="output"/>
-                    <dataholder name="dh124" class="DH_freqT" connect="dh425" type="output"/>
-                    <dataholder name="dh125" class="DH_freqT" connect="dh428" type="output"/>
-                    <dataholder name="dh126" class="DH_freqT" connect="dh431" type="output"/>
-                    <dataholder name="dh127" class="DH_freqT" connect="dh434" type="output"/>
-                    <dataholder name="dh128" class="DH_freqT" connect="dh437" type="output"/>
-                    <dataholder name="dh129" class="DH_freqT" connect="dh440" type="output"/>
-                    <dataholder name="dh130" class="DH_freqT" connect="dh443" type="output"/>
-                    <dataholder name="dh131" class="DH_freqT" connect="dh446" type="output"/>
-                    <dataholder name="dh132" class="DH_freqT" connect="dh449" type="output"/>
-                    <dataholder name="dh133" class="DH_freqT" connect="dh452" type="output"/>
-                    <dataholder name="dh134" class="DH_freqT" connect="dh455" type="output"/>
-                    <dataholder name="dh135" class="DH_freqT" connect="dh458" type="output"/>
-                    <dataholder name="dh136" class="DH_freqT" connect="dh461" type="output"/>
-                    <dataholder name="dh137" class="DH_freqT" connect="dh464" type="output"/>
-                    <dataholder name="dh138" class="DH_freqT" connect="dh467" type="output"/>
-                    <dataholder name="dh139" class="DH_freqT" connect="dh470" type="output"/>
-                    <dataholder name="dh140" class="DH_freqT" connect="dh473" type="output"/>
-                    <dataholder name="dh141" class="DH_freqT" connect="dh476" type="output"/>
-                    <dataholder name="dh142" class="DH_freqT" connect="dh479" type="output"/>
-                    <dataholder name="dh143" class="DH_freqT" connect="dh482" type="output"/>
-                    <dataholder name="dh144" class="DH_freqT" connect="dh485" type="output"/>
-                    <dataholder name="dh145" class="DH_freqT" connect="dh488" type="output"/>
-                    <dataholder name="dh146" class="DH_freqT" connect="dh491" type="output"/>
-                    <dataholder name="dh147" class="DH_freqT" connect="dh494" type="output"/>
-                    <dataholder name="dh148" class="DH_freqT" connect="dh497" type="output"/>
-                    <dataholder name="dh149" class="DH_freqT" connect="dh500" type="output"/>
-                    <dataholder name="dh150" class="DH_freqT" connect="dh503" type="output"/>
-                    <dataholder name="dh151" class="DH_freqT" connect="dh506" type="output"/>
-                    <dataholder name="dh152" class="DH_freqT" connect="dh509" type="output"/>
-                    <dataholder name="dh153" class="DH_freqT" connect="dh512" type="output"/>
-                    <dataholder name="dh154" class="DH_freqT" connect="dh515" type="output"/>
-                    <dataholder name="dh155" class="DH_freqT" connect="dh518" type="output"/>
-                    <dataholder name="dh156" class="DH_freqT" connect="dh521" type="output"/>
-                    <dataholder name="dh157" class="DH_freqT" connect="dh524" type="output"/>
-                    <dataholder name="dh158" class="DH_freqT" connect="dh527" type="output"/>
-                    <dataholder name="dh159" class="DH_freqT" connect="dh530" type="output"/>
-                    <dataholder name="dh160" class="DH_freqT" connect="dh533" type="output"/>
-                    <dataholder name="dh161" class="DH_freqT" connect="dh536" type="output"/>
-                    <dataholder name="dh162" class="DH_freqT" connect="dh539" type="output"/>
-                    <dataholder name="dh163" class="DH_freqT" connect="dh542" type="output"/>
-                    <dataholder name="dh164" class="DH_freqT" connect="dh545" type="output"/>
-                    <dataholder name="dh165" class="DH_freqT" connect="dh548" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_0166" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh167" class="DH_freqT" type="input"/>
-                    <dataholder name="dh168" class="DH_beamT" connect="dh551" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1169" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh170" class="DH_freqT" type="input"/>
-                    <dataholder name="dh171" class="DH_beamT" connect="dh552" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_2172" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh173" class="DH_freqT" type="input"/>
-                    <dataholder name="dh174" class="DH_beamT" connect="dh553" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_3175" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh176" class="DH_freqT" type="input"/>
-                    <dataholder name="dh177" class="DH_beamT" connect="dh554" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_4178" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh179" class="DH_freqT" type="input"/>
-                    <dataholder name="dh180" class="DH_beamT" connect="dh555" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_5181" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh182" class="DH_freqT" type="input"/>
-                    <dataholder name="dh183" class="DH_beamT" connect="dh556" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_6184" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh185" class="DH_freqT" type="input"/>
-                    <dataholder name="dh186" class="DH_beamT" connect="dh557" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_7187" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh188" class="DH_freqT" type="input"/>
-                    <dataholder name="dh189" class="DH_beamT" connect="dh558" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_8190" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh191" class="DH_freqT" type="input"/>
-                    <dataholder name="dh192" class="DH_beamT" connect="dh559" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_9193" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh194" class="DH_freqT" type="input"/>
-                    <dataholder name="dh195" class="DH_beamT" connect="dh560" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_10196" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh197" class="DH_freqT" type="input"/>
-                    <dataholder name="dh198" class="DH_beamT" connect="dh561" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_11199" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh200" class="DH_freqT" type="input"/>
-                    <dataholder name="dh201" class="DH_beamT" connect="dh562" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_12202" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh203" class="DH_freqT" type="input"/>
-                    <dataholder name="dh204" class="DH_beamT" connect="dh563" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_13205" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh206" class="DH_freqT" type="input"/>
-                    <dataholder name="dh207" class="DH_beamT" connect="dh564" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_14208" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh209" class="DH_freqT" type="input"/>
-                    <dataholder name="dh210" class="DH_beamT" connect="dh565" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_15211" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh212" class="DH_freqT" type="input"/>
-                    <dataholder name="dh213" class="DH_beamT" connect="dh566" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_16214" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh215" class="DH_freqT" type="input"/>
-                    <dataholder name="dh216" class="DH_beamT" connect="dh567" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_17217" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh218" class="DH_freqT" type="input"/>
-                    <dataholder name="dh219" class="DH_beamT" connect="dh568" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_18220" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh221" class="DH_freqT" type="input"/>
-                    <dataholder name="dh222" class="DH_beamT" connect="dh569" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_19223" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh224" class="DH_freqT" type="input"/>
-                    <dataholder name="dh225" class="DH_beamT" connect="dh570" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_20226" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh227" class="DH_freqT" type="input"/>
-                    <dataholder name="dh228" class="DH_beamT" connect="dh571" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_21229" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh230" class="DH_freqT" type="input"/>
-                    <dataholder name="dh231" class="DH_beamT" connect="dh572" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_22232" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh233" class="DH_freqT" type="input"/>
-                    <dataholder name="dh234" class="DH_beamT" connect="dh573" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_23235" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh236" class="DH_freqT" type="input"/>
-                    <dataholder name="dh237" class="DH_beamT" connect="dh574" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_24238" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh239" class="DH_freqT" type="input"/>
-                    <dataholder name="dh240" class="DH_beamT" connect="dh575" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_25241" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh242" class="DH_freqT" type="input"/>
-                    <dataholder name="dh243" class="DH_beamT" connect="dh576" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_26244" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh245" class="DH_freqT" type="input"/>
-                    <dataholder name="dh246" class="DH_beamT" connect="dh577" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_27247" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh248" class="DH_freqT" type="input"/>
-                    <dataholder name="dh249" class="DH_beamT" connect="dh578" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_28250" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh251" class="DH_freqT" type="input"/>
-                    <dataholder name="dh252" class="DH_beamT" connect="dh579" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_29253" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh254" class="DH_freqT" type="input"/>
-                    <dataholder name="dh255" class="DH_beamT" connect="dh580" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_30256" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh257" class="DH_freqT" type="input"/>
-                    <dataholder name="dh258" class="DH_beamT" connect="dh581" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_31259" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh260" class="DH_freqT" type="input"/>
-                    <dataholder name="dh261" class="DH_beamT" connect="dh582" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_32262" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh263" class="DH_freqT" type="input"/>
-                    <dataholder name="dh264" class="DH_beamT" connect="dh583" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_33265" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh266" class="DH_freqT" type="input"/>
-                    <dataholder name="dh267" class="DH_beamT" connect="dh584" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_34268" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh269" class="DH_freqT" type="input"/>
-                    <dataholder name="dh270" class="DH_beamT" connect="dh585" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_35271" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh272" class="DH_freqT" type="input"/>
-                    <dataholder name="dh273" class="DH_beamT" connect="dh586" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_36274" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh275" class="DH_freqT" type="input"/>
-                    <dataholder name="dh276" class="DH_beamT" connect="dh587" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_37277" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh278" class="DH_freqT" type="input"/>
-                    <dataholder name="dh279" class="DH_beamT" connect="dh588" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_38280" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh281" class="DH_freqT" type="input"/>
-                    <dataholder name="dh282" class="DH_beamT" connect="dh589" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_39283" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh284" class="DH_freqT" type="input"/>
-                    <dataholder name="dh285" class="DH_beamT" connect="dh590" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_40286" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh287" class="DH_freqT" type="input"/>
-                    <dataholder name="dh288" class="DH_beamT" connect="dh591" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_41289" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh290" class="DH_freqT" type="input"/>
-                    <dataholder name="dh291" class="DH_beamT" connect="dh592" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_42292" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh293" class="DH_freqT" type="input"/>
-                    <dataholder name="dh294" class="DH_beamT" connect="dh593" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_43295" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh296" class="DH_freqT" type="input"/>
-                    <dataholder name="dh297" class="DH_beamT" connect="dh594" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_44298" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh299" class="DH_freqT" type="input"/>
-                    <dataholder name="dh300" class="DH_beamT" connect="dh595" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_45301" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh302" class="DH_freqT" type="input"/>
-                    <dataholder name="dh303" class="DH_beamT" connect="dh596" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_46304" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh305" class="DH_freqT" type="input"/>
-                    <dataholder name="dh306" class="DH_beamT" connect="dh597" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_47307" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh308" class="DH_freqT" type="input"/>
-                    <dataholder name="dh309" class="DH_beamT" connect="dh598" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_48310" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh311" class="DH_freqT" type="input"/>
-                    <dataholder name="dh312" class="DH_beamT" connect="dh599" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_49313" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh314" class="DH_freqT" type="input"/>
-                    <dataholder name="dh315" class="DH_beamT" connect="dh600" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_50316" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh317" class="DH_freqT" type="input"/>
-                    <dataholder name="dh318" class="DH_beamT" connect="dh601" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_51319" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh320" class="DH_freqT" type="input"/>
-                    <dataholder name="dh321" class="DH_beamT" connect="dh602" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_52322" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh323" class="DH_freqT" type="input"/>
-                    <dataholder name="dh324" class="DH_beamT" connect="dh603" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_53325" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh326" class="DH_freqT" type="input"/>
-                    <dataholder name="dh327" class="DH_beamT" connect="dh604" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_54328" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh329" class="DH_freqT" type="input"/>
-                    <dataholder name="dh330" class="DH_beamT" connect="dh605" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_55331" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh332" class="DH_freqT" type="input"/>
-                    <dataholder name="dh333" class="DH_beamT" connect="dh606" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_56334" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh335" class="DH_freqT" type="input"/>
-                    <dataholder name="dh336" class="DH_beamT" connect="dh607" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_57337" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh338" class="DH_freqT" type="input"/>
-                    <dataholder name="dh339" class="DH_beamT" connect="dh608" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_58340" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh341" class="DH_freqT" type="input"/>
-                    <dataholder name="dh342" class="DH_beamT" connect="dh609" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_59343" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh344" class="DH_freqT" type="input"/>
-                    <dataholder name="dh345" class="DH_beamT" connect="dh610" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_60346" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh347" class="DH_freqT" type="input"/>
-                    <dataholder name="dh348" class="DH_beamT" connect="dh611" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_61349" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh350" class="DH_freqT" type="input"/>
-                    <dataholder name="dh351" class="DH_beamT" connect="dh612" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_62352" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh353" class="DH_freqT" type="input"/>
-                    <dataholder name="dh354" class="DH_beamT" connect="dh613" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_63355" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh356" class="DH_freqT" type="input"/>
-                    <dataholder name="dh357" class="DH_beamT" connect="dh614" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_64358" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh359" class="DH_freqT" type="input"/>
-                    <dataholder name="dh360" class="DH_beamT" connect="dh615" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_65361" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh362" class="DH_freqT" type="input"/>
-                    <dataholder name="dh363" class="DH_beamT" connect="dh616" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_66364" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh365" class="DH_freqT" type="input"/>
-                    <dataholder name="dh366" class="DH_beamT" connect="dh617" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_67367" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh368" class="DH_freqT" type="input"/>
-                    <dataholder name="dh369" class="DH_beamT" connect="dh618" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_68370" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh371" class="DH_freqT" type="input"/>
-                    <dataholder name="dh372" class="DH_beamT" connect="dh619" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_69373" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh374" class="DH_freqT" type="input"/>
-                    <dataholder name="dh375" class="DH_beamT" connect="dh620" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_70376" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh377" class="DH_freqT" type="input"/>
-                    <dataholder name="dh378" class="DH_beamT" connect="dh621" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_71379" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh380" class="DH_freqT" type="input"/>
-                    <dataholder name="dh381" class="DH_beamT" connect="dh622" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_72382" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh383" class="DH_freqT" type="input"/>
-                    <dataholder name="dh384" class="DH_beamT" connect="dh623" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_73385" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh386" class="DH_freqT" type="input"/>
-                    <dataholder name="dh387" class="DH_beamT" connect="dh624" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_74388" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh389" class="DH_freqT" type="input"/>
-                    <dataholder name="dh390" class="DH_beamT" connect="dh625" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_75391" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh392" class="DH_freqT" type="input"/>
-                    <dataholder name="dh393" class="DH_beamT" connect="dh626" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_76394" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh395" class="DH_freqT" type="input"/>
-                    <dataholder name="dh396" class="DH_beamT" connect="dh627" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_77397" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh398" class="DH_freqT" type="input"/>
-                    <dataholder name="dh399" class="DH_beamT" connect="dh628" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_78400" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh401" class="DH_freqT" type="input"/>
-                    <dataholder name="dh402" class="DH_beamT" connect="dh629" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_79403" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh404" class="DH_freqT" type="input"/>
-                    <dataholder name="dh405" class="DH_beamT" connect="dh630" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_80406" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh407" class="DH_freqT" type="input"/>
-                    <dataholder name="dh408" class="DH_beamT" connect="dh631" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_81409" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh410" class="DH_freqT" type="input"/>
-                    <dataholder name="dh411" class="DH_beamT" connect="dh632" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_82412" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh413" class="DH_freqT" type="input"/>
-                    <dataholder name="dh414" class="DH_beamT" connect="dh633" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_83415" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh416" class="DH_freqT" type="input"/>
-                    <dataholder name="dh417" class="DH_beamT" connect="dh634" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_84418" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh419" class="DH_freqT" type="input"/>
-                    <dataholder name="dh420" class="DH_beamT" connect="dh635" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_85421" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh422" class="DH_freqT" type="input"/>
-                    <dataholder name="dh423" class="DH_beamT" connect="dh636" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_86424" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh425" class="DH_freqT" type="input"/>
-                    <dataholder name="dh426" class="DH_beamT" connect="dh637" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_87427" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh428" class="DH_freqT" type="input"/>
-                    <dataholder name="dh429" class="DH_beamT" connect="dh638" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_88430" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh431" class="DH_freqT" type="input"/>
-                    <dataholder name="dh432" class="DH_beamT" connect="dh639" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_89433" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh434" class="DH_freqT" type="input"/>
-                    <dataholder name="dh435" class="DH_beamT" connect="dh640" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_90436" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh437" class="DH_freqT" type="input"/>
-                    <dataholder name="dh438" class="DH_beamT" connect="dh641" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_91439" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh440" class="DH_freqT" type="input"/>
-                    <dataholder name="dh441" class="DH_beamT" connect="dh642" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_92442" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh443" class="DH_freqT" type="input"/>
-                    <dataholder name="dh444" class="DH_beamT" connect="dh643" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_93445" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh446" class="DH_freqT" type="input"/>
-                    <dataholder name="dh447" class="DH_beamT" connect="dh644" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_94448" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh449" class="DH_freqT" type="input"/>
-                    <dataholder name="dh450" class="DH_beamT" connect="dh645" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_95451" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh452" class="DH_freqT" type="input"/>
-                    <dataholder name="dh453" class="DH_beamT" connect="dh646" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_96454" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh455" class="DH_freqT" type="input"/>
-                    <dataholder name="dh456" class="DH_beamT" connect="dh647" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_97457" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh458" class="DH_freqT" type="input"/>
-                    <dataholder name="dh459" class="DH_beamT" connect="dh648" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_98460" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh461" class="DH_freqT" type="input"/>
-                    <dataholder name="dh462" class="DH_beamT" connect="dh649" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_99463" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh464" class="DH_freqT" type="input"/>
-                    <dataholder name="dh465" class="DH_beamT" connect="dh650" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_100466" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh467" class="DH_freqT" type="input"/>
-                    <dataholder name="dh468" class="DH_beamT" connect="dh651" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_101469" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh470" class="DH_freqT" type="input"/>
-                    <dataholder name="dh471" class="DH_beamT" connect="dh652" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_102472" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh473" class="DH_freqT" type="input"/>
-                    <dataholder name="dh474" class="DH_beamT" connect="dh653" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_103475" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh476" class="DH_freqT" type="input"/>
-                    <dataholder name="dh477" class="DH_beamT" connect="dh654" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_104478" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh479" class="DH_freqT" type="input"/>
-                    <dataholder name="dh480" class="DH_beamT" connect="dh655" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_105481" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh482" class="DH_freqT" type="input"/>
-                    <dataholder name="dh483" class="DH_beamT" connect="dh656" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_106484" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh485" class="DH_freqT" type="input"/>
-                    <dataholder name="dh486" class="DH_beamT" connect="dh657" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_107487" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh488" class="DH_freqT" type="input"/>
-                    <dataholder name="dh489" class="DH_beamT" connect="dh658" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_108490" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh491" class="DH_freqT" type="input"/>
-                    <dataholder name="dh492" class="DH_beamT" connect="dh659" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_109493" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh494" class="DH_freqT" type="input"/>
-                    <dataholder name="dh495" class="DH_beamT" connect="dh660" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_110496" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh497" class="DH_freqT" type="input"/>
-                    <dataholder name="dh498" class="DH_beamT" connect="dh661" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_111499" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh500" class="DH_freqT" type="input"/>
-                    <dataholder name="dh501" class="DH_beamT" connect="dh662" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_112502" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh503" class="DH_freqT" type="input"/>
-                    <dataholder name="dh504" class="DH_beamT" connect="dh663" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_113505" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh506" class="DH_freqT" type="input"/>
-                    <dataholder name="dh507" class="DH_beamT" connect="dh664" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_114508" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh509" class="DH_freqT" type="input"/>
-                    <dataholder name="dh510" class="DH_beamT" connect="dh665" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_115511" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh512" class="DH_freqT" type="input"/>
-                    <dataholder name="dh513" class="DH_beamT" connect="dh666" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_116514" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh515" class="DH_freqT" type="input"/>
-                    <dataholder name="dh516" class="DH_beamT" connect="dh667" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_117517" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh518" class="DH_freqT" type="input"/>
-                    <dataholder name="dh519" class="DH_beamT" connect="dh668" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_118520" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh521" class="DH_freqT" type="input"/>
-                    <dataholder name="dh522" class="DH_beamT" connect="dh669" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_119523" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh524" class="DH_freqT" type="input"/>
-                    <dataholder name="dh525" class="DH_beamT" connect="dh670" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_120526" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh527" class="DH_freqT" type="input"/>
-                    <dataholder name="dh528" class="DH_beamT" connect="dh671" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_121529" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh530" class="DH_freqT" type="input"/>
-                    <dataholder name="dh531" class="DH_beamT" connect="dh672" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_122532" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh533" class="DH_freqT" type="input"/>
-                    <dataholder name="dh534" class="DH_beamT" connect="dh673" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_123535" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh536" class="DH_freqT" type="input"/>
-                    <dataholder name="dh537" class="DH_beamT" connect="dh674" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_124538" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh539" class="DH_freqT" type="input"/>
-                    <dataholder name="dh540" class="DH_beamT" connect="dh675" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_125541" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh542" class="DH_freqT" type="input"/>
-                    <dataholder name="dh543" class="DH_beamT" connect="dh676" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_126544" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh545" class="DH_freqT" type="input"/>
-                    <dataholder name="dh546" class="DH_beamT" connect="dh677" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_127547" node="node 1">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh548" class="DH_freqT" type="input"/>
-                    <dataholder name="dh549" class="DH_beamT" connect="dh678" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeB_137550" node="node 1">
-                <workholder class="WH_TransB">
-                    <dataholder name="dh551" class="DH_beamT" type="input"/>
-                    <dataholder name="dh552" class="DH_beamT" type="input"/>
-                    <dataholder name="dh553" class="DH_beamT" type="input"/>
-                    <dataholder name="dh554" class="DH_beamT" type="input"/>
-                    <dataholder name="dh555" class="DH_beamT" type="input"/>
-                    <dataholder name="dh556" class="DH_beamT" type="input"/>
-                    <dataholder name="dh557" class="DH_beamT" type="input"/>
-                    <dataholder name="dh558" class="DH_beamT" type="input"/>
-                    <dataholder name="dh559" class="DH_beamT" type="input"/>
-                    <dataholder name="dh560" class="DH_beamT" type="input"/>
-                    <dataholder name="dh561" class="DH_beamT" type="input"/>
-                    <dataholder name="dh562" class="DH_beamT" type="input"/>
-                    <dataholder name="dh563" class="DH_beamT" type="input"/>
-                    <dataholder name="dh564" class="DH_beamT" type="input"/>
-                    <dataholder name="dh565" class="DH_beamT" type="input"/>
-                    <dataholder name="dh566" class="DH_beamT" type="input"/>
-                    <dataholder name="dh567" class="DH_beamT" type="input"/>
-                    <dataholder name="dh568" class="DH_beamT" type="input"/>
-                    <dataholder name="dh569" class="DH_beamT" type="input"/>
-                    <dataholder name="dh570" class="DH_beamT" type="input"/>
-                    <dataholder name="dh571" class="DH_beamT" type="input"/>
-                    <dataholder name="dh572" class="DH_beamT" type="input"/>
-                    <dataholder name="dh573" class="DH_beamT" type="input"/>
-                    <dataholder name="dh574" class="DH_beamT" type="input"/>
-                    <dataholder name="dh575" class="DH_beamT" type="input"/>
-                    <dataholder name="dh576" class="DH_beamT" type="input"/>
-                    <dataholder name="dh577" class="DH_beamT" type="input"/>
-                    <dataholder name="dh578" class="DH_beamT" type="input"/>
-                    <dataholder name="dh579" class="DH_beamT" type="input"/>
-                    <dataholder name="dh580" class="DH_beamT" type="input"/>
-                    <dataholder name="dh581" class="DH_beamT" type="input"/>
-                    <dataholder name="dh582" class="DH_beamT" type="input"/>
-                    <dataholder name="dh583" class="DH_beamT" type="input"/>
-                    <dataholder name="dh584" class="DH_beamT" type="input"/>
-                    <dataholder name="dh585" class="DH_beamT" type="input"/>
-                    <dataholder name="dh586" class="DH_beamT" type="input"/>
-                    <dataholder name="dh587" class="DH_beamT" type="input"/>
-                    <dataholder name="dh588" class="DH_beamT" type="input"/>
-                    <dataholder name="dh589" class="DH_beamT" type="input"/>
-                    <dataholder name="dh590" class="DH_beamT" type="input"/>
-                    <dataholder name="dh591" class="DH_beamT" type="input"/>
-                    <dataholder name="dh592" class="DH_beamT" type="input"/>
-                    <dataholder name="dh593" class="DH_beamT" type="input"/>
-                    <dataholder name="dh594" class="DH_beamT" type="input"/>
-                    <dataholder name="dh595" class="DH_beamT" type="input"/>
-                    <dataholder name="dh596" class="DH_beamT" type="input"/>
-                    <dataholder name="dh597" class="DH_beamT" type="input"/>
-                    <dataholder name="dh598" class="DH_beamT" type="input"/>
-                    <dataholder name="dh599" class="DH_beamT" type="input"/>
-                    <dataholder name="dh600" class="DH_beamT" type="input"/>
-                    <dataholder name="dh601" class="DH_beamT" type="input"/>
-                    <dataholder name="dh602" class="DH_beamT" type="input"/>
-                    <dataholder name="dh603" class="DH_beamT" type="input"/>
-                    <dataholder name="dh604" class="DH_beamT" type="input"/>
-                    <dataholder name="dh605" class="DH_beamT" type="input"/>
-                    <dataholder name="dh606" class="DH_beamT" type="input"/>
-                    <dataholder name="dh607" class="DH_beamT" type="input"/>
-                    <dataholder name="dh608" class="DH_beamT" type="input"/>
-                    <dataholder name="dh609" class="DH_beamT" type="input"/>
-                    <dataholder name="dh610" class="DH_beamT" type="input"/>
-                    <dataholder name="dh611" class="DH_beamT" type="input"/>
-                    <dataholder name="dh612" class="DH_beamT" type="input"/>
-                    <dataholder name="dh613" class="DH_beamT" type="input"/>
-                    <dataholder name="dh614" class="DH_beamT" type="input"/>
-                    <dataholder name="dh615" class="DH_beamT" type="input"/>
-                    <dataholder name="dh616" class="DH_beamT" type="input"/>
-                    <dataholder name="dh617" class="DH_beamT" type="input"/>
-                    <dataholder name="dh618" class="DH_beamT" type="input"/>
-                    <dataholder name="dh619" class="DH_beamT" type="input"/>
-                    <dataholder name="dh620" class="DH_beamT" type="input"/>
-                    <dataholder name="dh621" class="DH_beamT" type="input"/>
-                    <dataholder name="dh622" class="DH_beamT" type="input"/>
-                    <dataholder name="dh623" class="DH_beamT" type="input"/>
-                    <dataholder name="dh624" class="DH_beamT" type="input"/>
-                    <dataholder name="dh625" class="DH_beamT" type="input"/>
-                    <dataholder name="dh626" class="DH_beamT" type="input"/>
-                    <dataholder name="dh627" class="DH_beamT" type="input"/>
-                    <dataholder name="dh628" class="DH_beamT" type="input"/>
-                    <dataholder name="dh629" class="DH_beamT" type="input"/>
-                    <dataholder name="dh630" class="DH_beamT" type="input"/>
-                    <dataholder name="dh631" class="DH_beamT" type="input"/>
-                    <dataholder name="dh632" class="DH_beamT" type="input"/>
-                    <dataholder name="dh633" class="DH_beamT" type="input"/>
-                    <dataholder name="dh634" class="DH_beamT" type="input"/>
-                    <dataholder name="dh635" class="DH_beamT" type="input"/>
-                    <dataholder name="dh636" class="DH_beamT" type="input"/>
-                    <dataholder name="dh637" class="DH_beamT" type="input"/>
-                    <dataholder name="dh638" class="DH_beamT" type="input"/>
-                    <dataholder name="dh639" class="DH_beamT" type="input"/>
-                    <dataholder name="dh640" class="DH_beamT" type="input"/>
-                    <dataholder name="dh641" class="DH_beamT" type="input"/>
-                    <dataholder name="dh642" class="DH_beamT" type="input"/>
-                    <dataholder name="dh643" class="DH_beamT" type="input"/>
-                    <dataholder name="dh644" class="DH_beamT" type="input"/>
-                    <dataholder name="dh645" class="DH_beamT" type="input"/>
-                    <dataholder name="dh646" class="DH_beamT" type="input"/>
-                    <dataholder name="dh647" class="DH_beamT" type="input"/>
-                    <dataholder name="dh648" class="DH_beamT" type="input"/>
-                    <dataholder name="dh649" class="DH_beamT" type="input"/>
-                    <dataholder name="dh650" class="DH_beamT" type="input"/>
-                    <dataholder name="dh651" class="DH_beamT" type="input"/>
-                    <dataholder name="dh652" class="DH_beamT" type="input"/>
-                    <dataholder name="dh653" class="DH_beamT" type="input"/>
-                    <dataholder name="dh654" class="DH_beamT" type="input"/>
-                    <dataholder name="dh655" class="DH_beamT" type="input"/>
-                    <dataholder name="dh656" class="DH_beamT" type="input"/>
-                    <dataholder name="dh657" class="DH_beamT" type="input"/>
-                    <dataholder name="dh658" class="DH_beamT" type="input"/>
-                    <dataholder name="dh659" class="DH_beamT" type="input"/>
-                    <dataholder name="dh660" class="DH_beamT" type="input"/>
-                    <dataholder name="dh661" class="DH_beamT" type="input"/>
-                    <dataholder name="dh662" class="DH_beamT" type="input"/>
-                    <dataholder name="dh663" class="DH_beamT" type="input"/>
-                    <dataholder name="dh664" class="DH_beamT" type="input"/>
-                    <dataholder name="dh665" class="DH_beamT" type="input"/>
-                    <dataholder name="dh666" class="DH_beamT" type="input"/>
-                    <dataholder name="dh667" class="DH_beamT" type="input"/>
-                    <dataholder name="dh668" class="DH_beamT" type="input"/>
-                    <dataholder name="dh669" class="DH_beamT" type="input"/>
-                    <dataholder name="dh670" class="DH_beamT" type="input"/>
-                    <dataholder name="dh671" class="DH_beamT" type="input"/>
-                    <dataholder name="dh672" class="DH_beamT" type="input"/>
-                    <dataholder name="dh673" class="DH_beamT" type="input"/>
-                    <dataholder name="dh674" class="DH_beamT" type="input"/>
-                    <dataholder name="dh675" class="DH_beamT" type="input"/>
-                    <dataholder name="dh676" class="DH_beamT" type="input"/>
-                    <dataholder name="dh677" class="DH_beamT" type="input"/>
-                    <dataholder name="dh678" class="DH_beamT" type="input"/>
-                    <dataholder name="dh679" class="DH_beam" connect="dh8" type="output"/>
-                </workholder>
-            </step>
-        </simul>
-        <simul name="Lofar_Station_1680" node="node 2">
-            <workholder class="WH_Station">
-                <dataholder name="dh681" class="DH_Antenna" type="input"/>
-                <dataholder name="dh682" class="DH_Antenna" type="input"/>
-                <dataholder name="dh683" class="DH_Antenna" type="input"/>
-                <dataholder name="dh684" class="DH_Antenna" type="input"/>
-                <dataholder name="dh685" class="DH_beam" connect="dh2713" type="output"/>
-            </workholder>
-            <step name="Antenna_0686" node="node 2">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh687" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh688" class="DH_Antenna" connect="dh699" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_1689" node="node 2">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh690" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh691" class="DH_Antenna" connect="dh702" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_2692" node="node 2">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh693" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh694" class="DH_Antenna" connect="dh705" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_3695" node="node 2">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh696" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh697" class="DH_Antenna" connect="dh708" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_0698" node="node 2">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh699" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh700" class="DH_freq" connect="dh711" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_1701" node="node 2">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh702" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh703" class="DH_freq" connect="dh712" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_2704" node="node 2">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh705" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh706" class="DH_freq" connect="dh713" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_3707" node="node 2">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh708" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh709" class="DH_freq" connect="dh714" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeF_1_8710" node="node 2">
-                <workholder class="WH_TransF">
-                    <dataholder name="dh711" class="DH_freq" type="input"/>
-                    <dataholder name="dh712" class="DH_freq" type="input"/>
-                    <dataholder name="dh713" class="DH_freq" type="input"/>
-                    <dataholder name="dh714" class="DH_freq" type="input"/>
-                    <dataholder name="dh715" class="DH_freqT" connect="dh844" type="output"/>
-                    <dataholder name="dh716" class="DH_freqT" connect="dh847" type="output"/>
-                    <dataholder name="dh717" class="DH_freqT" connect="dh850" type="output"/>
-                    <dataholder name="dh718" class="DH_freqT" connect="dh853" type="output"/>
-                    <dataholder name="dh719" class="DH_freqT" connect="dh856" type="output"/>
-                    <dataholder name="dh720" class="DH_freqT" connect="dh859" type="output"/>
-                    <dataholder name="dh721" class="DH_freqT" connect="dh862" type="output"/>
-                    <dataholder name="dh722" class="DH_freqT" connect="dh865" type="output"/>
-                    <dataholder name="dh723" class="DH_freqT" connect="dh868" type="output"/>
-                    <dataholder name="dh724" class="DH_freqT" connect="dh871" type="output"/>
-                    <dataholder name="dh725" class="DH_freqT" connect="dh874" type="output"/>
-                    <dataholder name="dh726" class="DH_freqT" connect="dh877" type="output"/>
-                    <dataholder name="dh727" class="DH_freqT" connect="dh880" type="output"/>
-                    <dataholder name="dh728" class="DH_freqT" connect="dh883" type="output"/>
-                    <dataholder name="dh729" class="DH_freqT" connect="dh886" type="output"/>
-                    <dataholder name="dh730" class="DH_freqT" connect="dh889" type="output"/>
-                    <dataholder name="dh731" class="DH_freqT" connect="dh892" type="output"/>
-                    <dataholder name="dh732" class="DH_freqT" connect="dh895" type="output"/>
-                    <dataholder name="dh733" class="DH_freqT" connect="dh898" type="output"/>
-                    <dataholder name="dh734" class="DH_freqT" connect="dh901" type="output"/>
-                    <dataholder name="dh735" class="DH_freqT" connect="dh904" type="output"/>
-                    <dataholder name="dh736" class="DH_freqT" connect="dh907" type="output"/>
-                    <dataholder name="dh737" class="DH_freqT" connect="dh910" type="output"/>
-                    <dataholder name="dh738" class="DH_freqT" connect="dh913" type="output"/>
-                    <dataholder name="dh739" class="DH_freqT" connect="dh916" type="output"/>
-                    <dataholder name="dh740" class="DH_freqT" connect="dh919" type="output"/>
-                    <dataholder name="dh741" class="DH_freqT" connect="dh922" type="output"/>
-                    <dataholder name="dh742" class="DH_freqT" connect="dh925" type="output"/>
-                    <dataholder name="dh743" class="DH_freqT" connect="dh928" type="output"/>
-                    <dataholder name="dh744" class="DH_freqT" connect="dh931" type="output"/>
-                    <dataholder name="dh745" class="DH_freqT" connect="dh934" type="output"/>
-                    <dataholder name="dh746" class="DH_freqT" connect="dh937" type="output"/>
-                    <dataholder name="dh747" class="DH_freqT" connect="dh940" type="output"/>
-                    <dataholder name="dh748" class="DH_freqT" connect="dh943" type="output"/>
-                    <dataholder name="dh749" class="DH_freqT" connect="dh946" type="output"/>
-                    <dataholder name="dh750" class="DH_freqT" connect="dh949" type="output"/>
-                    <dataholder name="dh751" class="DH_freqT" connect="dh952" type="output"/>
-                    <dataholder name="dh752" class="DH_freqT" connect="dh955" type="output"/>
-                    <dataholder name="dh753" class="DH_freqT" connect="dh958" type="output"/>
-                    <dataholder name="dh754" class="DH_freqT" connect="dh961" type="output"/>
-                    <dataholder name="dh755" class="DH_freqT" connect="dh964" type="output"/>
-                    <dataholder name="dh756" class="DH_freqT" connect="dh967" type="output"/>
-                    <dataholder name="dh757" class="DH_freqT" connect="dh970" type="output"/>
-                    <dataholder name="dh758" class="DH_freqT" connect="dh973" type="output"/>
-                    <dataholder name="dh759" class="DH_freqT" connect="dh976" type="output"/>
-                    <dataholder name="dh760" class="DH_freqT" connect="dh979" type="output"/>
-                    <dataholder name="dh761" class="DH_freqT" connect="dh982" type="output"/>
-                    <dataholder name="dh762" class="DH_freqT" connect="dh985" type="output"/>
-                    <dataholder name="dh763" class="DH_freqT" connect="dh988" type="output"/>
-                    <dataholder name="dh764" class="DH_freqT" connect="dh991" type="output"/>
-                    <dataholder name="dh765" class="DH_freqT" connect="dh994" type="output"/>
-                    <dataholder name="dh766" class="DH_freqT" connect="dh997" type="output"/>
-                    <dataholder name="dh767" class="DH_freqT" connect="dh1000" type="output"/>
-                    <dataholder name="dh768" class="DH_freqT" connect="dh1003" type="output"/>
-                    <dataholder name="dh769" class="DH_freqT" connect="dh1006" type="output"/>
-                    <dataholder name="dh770" class="DH_freqT" connect="dh1009" type="output"/>
-                    <dataholder name="dh771" class="DH_freqT" connect="dh1012" type="output"/>
-                    <dataholder name="dh772" class="DH_freqT" connect="dh1015" type="output"/>
-                    <dataholder name="dh773" class="DH_freqT" connect="dh1018" type="output"/>
-                    <dataholder name="dh774" class="DH_freqT" connect="dh1021" type="output"/>
-                    <dataholder name="dh775" class="DH_freqT" connect="dh1024" type="output"/>
-                    <dataholder name="dh776" class="DH_freqT" connect="dh1027" type="output"/>
-                    <dataholder name="dh777" class="DH_freqT" connect="dh1030" type="output"/>
-                    <dataholder name="dh778" class="DH_freqT" connect="dh1033" type="output"/>
-                    <dataholder name="dh779" class="DH_freqT" connect="dh1036" type="output"/>
-                    <dataholder name="dh780" class="DH_freqT" connect="dh1039" type="output"/>
-                    <dataholder name="dh781" class="DH_freqT" connect="dh1042" type="output"/>
-                    <dataholder name="dh782" class="DH_freqT" connect="dh1045" type="output"/>
-                    <dataholder name="dh783" class="DH_freqT" connect="dh1048" type="output"/>
-                    <dataholder name="dh784" class="DH_freqT" connect="dh1051" type="output"/>
-                    <dataholder name="dh785" class="DH_freqT" connect="dh1054" type="output"/>
-                    <dataholder name="dh786" class="DH_freqT" connect="dh1057" type="output"/>
-                    <dataholder name="dh787" class="DH_freqT" connect="dh1060" type="output"/>
-                    <dataholder name="dh788" class="DH_freqT" connect="dh1063" type="output"/>
-                    <dataholder name="dh789" class="DH_freqT" connect="dh1066" type="output"/>
-                    <dataholder name="dh790" class="DH_freqT" connect="dh1069" type="output"/>
-                    <dataholder name="dh791" class="DH_freqT" connect="dh1072" type="output"/>
-                    <dataholder name="dh792" class="DH_freqT" connect="dh1075" type="output"/>
-                    <dataholder name="dh793" class="DH_freqT" connect="dh1078" type="output"/>
-                    <dataholder name="dh794" class="DH_freqT" connect="dh1081" type="output"/>
-                    <dataholder name="dh795" class="DH_freqT" connect="dh1084" type="output"/>
-                    <dataholder name="dh796" class="DH_freqT" connect="dh1087" type="output"/>
-                    <dataholder name="dh797" class="DH_freqT" connect="dh1090" type="output"/>
-                    <dataholder name="dh798" class="DH_freqT" connect="dh1093" type="output"/>
-                    <dataholder name="dh799" class="DH_freqT" connect="dh1096" type="output"/>
-                    <dataholder name="dh800" class="DH_freqT" connect="dh1099" type="output"/>
-                    <dataholder name="dh801" class="DH_freqT" connect="dh1102" type="output"/>
-                    <dataholder name="dh802" class="DH_freqT" connect="dh1105" type="output"/>
-                    <dataholder name="dh803" class="DH_freqT" connect="dh1108" type="output"/>
-                    <dataholder name="dh804" class="DH_freqT" connect="dh1111" type="output"/>
-                    <dataholder name="dh805" class="DH_freqT" connect="dh1114" type="output"/>
-                    <dataholder name="dh806" class="DH_freqT" connect="dh1117" type="output"/>
-                    <dataholder name="dh807" class="DH_freqT" connect="dh1120" type="output"/>
-                    <dataholder name="dh808" class="DH_freqT" connect="dh1123" type="output"/>
-                    <dataholder name="dh809" class="DH_freqT" connect="dh1126" type="output"/>
-                    <dataholder name="dh810" class="DH_freqT" connect="dh1129" type="output"/>
-                    <dataholder name="dh811" class="DH_freqT" connect="dh1132" type="output"/>
-                    <dataholder name="dh812" class="DH_freqT" connect="dh1135" type="output"/>
-                    <dataholder name="dh813" class="DH_freqT" connect="dh1138" type="output"/>
-                    <dataholder name="dh814" class="DH_freqT" connect="dh1141" type="output"/>
-                    <dataholder name="dh815" class="DH_freqT" connect="dh1144" type="output"/>
-                    <dataholder name="dh816" class="DH_freqT" connect="dh1147" type="output"/>
-                    <dataholder name="dh817" class="DH_freqT" connect="dh1150" type="output"/>
-                    <dataholder name="dh818" class="DH_freqT" connect="dh1153" type="output"/>
-                    <dataholder name="dh819" class="DH_freqT" connect="dh1156" type="output"/>
-                    <dataholder name="dh820" class="DH_freqT" connect="dh1159" type="output"/>
-                    <dataholder name="dh821" class="DH_freqT" connect="dh1162" type="output"/>
-                    <dataholder name="dh822" class="DH_freqT" connect="dh1165" type="output"/>
-                    <dataholder name="dh823" class="DH_freqT" connect="dh1168" type="output"/>
-                    <dataholder name="dh824" class="DH_freqT" connect="dh1171" type="output"/>
-                    <dataholder name="dh825" class="DH_freqT" connect="dh1174" type="output"/>
-                    <dataholder name="dh826" class="DH_freqT" connect="dh1177" type="output"/>
-                    <dataholder name="dh827" class="DH_freqT" connect="dh1180" type="output"/>
-                    <dataholder name="dh828" class="DH_freqT" connect="dh1183" type="output"/>
-                    <dataholder name="dh829" class="DH_freqT" connect="dh1186" type="output"/>
-                    <dataholder name="dh830" class="DH_freqT" connect="dh1189" type="output"/>
-                    <dataholder name="dh831" class="DH_freqT" connect="dh1192" type="output"/>
-                    <dataholder name="dh832" class="DH_freqT" connect="dh1195" type="output"/>
-                    <dataholder name="dh833" class="DH_freqT" connect="dh1198" type="output"/>
-                    <dataholder name="dh834" class="DH_freqT" connect="dh1201" type="output"/>
-                    <dataholder name="dh835" class="DH_freqT" connect="dh1204" type="output"/>
-                    <dataholder name="dh836" class="DH_freqT" connect="dh1207" type="output"/>
-                    <dataholder name="dh837" class="DH_freqT" connect="dh1210" type="output"/>
-                    <dataholder name="dh838" class="DH_freqT" connect="dh1213" type="output"/>
-                    <dataholder name="dh839" class="DH_freqT" connect="dh1216" type="output"/>
-                    <dataholder name="dh840" class="DH_freqT" connect="dh1219" type="output"/>
-                    <dataholder name="dh841" class="DH_freqT" connect="dh1222" type="output"/>
-                    <dataholder name="dh842" class="DH_freqT" connect="dh1225" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_0843" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh844" class="DH_freqT" type="input"/>
-                    <dataholder name="dh845" class="DH_beamT" connect="dh1228" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1846" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh847" class="DH_freqT" type="input"/>
-                    <dataholder name="dh848" class="DH_beamT" connect="dh1229" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_2849" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh850" class="DH_freqT" type="input"/>
-                    <dataholder name="dh851" class="DH_beamT" connect="dh1230" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_3852" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh853" class="DH_freqT" type="input"/>
-                    <dataholder name="dh854" class="DH_beamT" connect="dh1231" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_4855" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh856" class="DH_freqT" type="input"/>
-                    <dataholder name="dh857" class="DH_beamT" connect="dh1232" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_5858" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh859" class="DH_freqT" type="input"/>
-                    <dataholder name="dh860" class="DH_beamT" connect="dh1233" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_6861" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh862" class="DH_freqT" type="input"/>
-                    <dataholder name="dh863" class="DH_beamT" connect="dh1234" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_7864" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh865" class="DH_freqT" type="input"/>
-                    <dataholder name="dh866" class="DH_beamT" connect="dh1235" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_8867" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh868" class="DH_freqT" type="input"/>
-                    <dataholder name="dh869" class="DH_beamT" connect="dh1236" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_9870" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh871" class="DH_freqT" type="input"/>
-                    <dataholder name="dh872" class="DH_beamT" connect="dh1237" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_10873" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh874" class="DH_freqT" type="input"/>
-                    <dataholder name="dh875" class="DH_beamT" connect="dh1238" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_11876" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh877" class="DH_freqT" type="input"/>
-                    <dataholder name="dh878" class="DH_beamT" connect="dh1239" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_12879" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh880" class="DH_freqT" type="input"/>
-                    <dataholder name="dh881" class="DH_beamT" connect="dh1240" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_13882" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh883" class="DH_freqT" type="input"/>
-                    <dataholder name="dh884" class="DH_beamT" connect="dh1241" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_14885" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh886" class="DH_freqT" type="input"/>
-                    <dataholder name="dh887" class="DH_beamT" connect="dh1242" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_15888" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh889" class="DH_freqT" type="input"/>
-                    <dataholder name="dh890" class="DH_beamT" connect="dh1243" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_16891" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh892" class="DH_freqT" type="input"/>
-                    <dataholder name="dh893" class="DH_beamT" connect="dh1244" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_17894" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh895" class="DH_freqT" type="input"/>
-                    <dataholder name="dh896" class="DH_beamT" connect="dh1245" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_18897" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh898" class="DH_freqT" type="input"/>
-                    <dataholder name="dh899" class="DH_beamT" connect="dh1246" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_19900" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh901" class="DH_freqT" type="input"/>
-                    <dataholder name="dh902" class="DH_beamT" connect="dh1247" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_20903" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh904" class="DH_freqT" type="input"/>
-                    <dataholder name="dh905" class="DH_beamT" connect="dh1248" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_21906" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh907" class="DH_freqT" type="input"/>
-                    <dataholder name="dh908" class="DH_beamT" connect="dh1249" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_22909" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh910" class="DH_freqT" type="input"/>
-                    <dataholder name="dh911" class="DH_beamT" connect="dh1250" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_23912" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh913" class="DH_freqT" type="input"/>
-                    <dataholder name="dh914" class="DH_beamT" connect="dh1251" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_24915" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh916" class="DH_freqT" type="input"/>
-                    <dataholder name="dh917" class="DH_beamT" connect="dh1252" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_25918" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh919" class="DH_freqT" type="input"/>
-                    <dataholder name="dh920" class="DH_beamT" connect="dh1253" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_26921" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh922" class="DH_freqT" type="input"/>
-                    <dataholder name="dh923" class="DH_beamT" connect="dh1254" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_27924" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh925" class="DH_freqT" type="input"/>
-                    <dataholder name="dh926" class="DH_beamT" connect="dh1255" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_28927" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh928" class="DH_freqT" type="input"/>
-                    <dataholder name="dh929" class="DH_beamT" connect="dh1256" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_29930" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh931" class="DH_freqT" type="input"/>
-                    <dataholder name="dh932" class="DH_beamT" connect="dh1257" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_30933" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh934" class="DH_freqT" type="input"/>
-                    <dataholder name="dh935" class="DH_beamT" connect="dh1258" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_31936" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh937" class="DH_freqT" type="input"/>
-                    <dataholder name="dh938" class="DH_beamT" connect="dh1259" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_32939" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh940" class="DH_freqT" type="input"/>
-                    <dataholder name="dh941" class="DH_beamT" connect="dh1260" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_33942" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh943" class="DH_freqT" type="input"/>
-                    <dataholder name="dh944" class="DH_beamT" connect="dh1261" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_34945" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh946" class="DH_freqT" type="input"/>
-                    <dataholder name="dh947" class="DH_beamT" connect="dh1262" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_35948" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh949" class="DH_freqT" type="input"/>
-                    <dataholder name="dh950" class="DH_beamT" connect="dh1263" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_36951" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh952" class="DH_freqT" type="input"/>
-                    <dataholder name="dh953" class="DH_beamT" connect="dh1264" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_37954" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh955" class="DH_freqT" type="input"/>
-                    <dataholder name="dh956" class="DH_beamT" connect="dh1265" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_38957" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh958" class="DH_freqT" type="input"/>
-                    <dataholder name="dh959" class="DH_beamT" connect="dh1266" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_39960" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh961" class="DH_freqT" type="input"/>
-                    <dataholder name="dh962" class="DH_beamT" connect="dh1267" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_40963" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh964" class="DH_freqT" type="input"/>
-                    <dataholder name="dh965" class="DH_beamT" connect="dh1268" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_41966" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh967" class="DH_freqT" type="input"/>
-                    <dataholder name="dh968" class="DH_beamT" connect="dh1269" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_42969" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh970" class="DH_freqT" type="input"/>
-                    <dataholder name="dh971" class="DH_beamT" connect="dh1270" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_43972" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh973" class="DH_freqT" type="input"/>
-                    <dataholder name="dh974" class="DH_beamT" connect="dh1271" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_44975" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh976" class="DH_freqT" type="input"/>
-                    <dataholder name="dh977" class="DH_beamT" connect="dh1272" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_45978" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh979" class="DH_freqT" type="input"/>
-                    <dataholder name="dh980" class="DH_beamT" connect="dh1273" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_46981" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh982" class="DH_freqT" type="input"/>
-                    <dataholder name="dh983" class="DH_beamT" connect="dh1274" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_47984" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh985" class="DH_freqT" type="input"/>
-                    <dataholder name="dh986" class="DH_beamT" connect="dh1275" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_48987" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh988" class="DH_freqT" type="input"/>
-                    <dataholder name="dh989" class="DH_beamT" connect="dh1276" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_49990" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh991" class="DH_freqT" type="input"/>
-                    <dataholder name="dh992" class="DH_beamT" connect="dh1277" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_50993" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh994" class="DH_freqT" type="input"/>
-                    <dataholder name="dh995" class="DH_beamT" connect="dh1278" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_51996" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh997" class="DH_freqT" type="input"/>
-                    <dataholder name="dh998" class="DH_beamT" connect="dh1279" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_52999" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1000" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1001" class="DH_beamT" connect="dh1280" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_531002" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1003" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1004" class="DH_beamT" connect="dh1281" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_541005" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1006" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1007" class="DH_beamT" connect="dh1282" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_551008" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1009" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1010" class="DH_beamT" connect="dh1283" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_561011" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1012" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1013" class="DH_beamT" connect="dh1284" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_571014" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1015" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1016" class="DH_beamT" connect="dh1285" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_581017" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1018" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1019" class="DH_beamT" connect="dh1286" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_591020" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1021" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1022" class="DH_beamT" connect="dh1287" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_601023" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1024" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1025" class="DH_beamT" connect="dh1288" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_611026" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1027" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1028" class="DH_beamT" connect="dh1289" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_621029" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1030" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1031" class="DH_beamT" connect="dh1290" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_631032" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1033" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1034" class="DH_beamT" connect="dh1291" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_641035" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1036" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1037" class="DH_beamT" connect="dh1292" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_651038" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1039" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1040" class="DH_beamT" connect="dh1293" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_661041" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1042" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1043" class="DH_beamT" connect="dh1294" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_671044" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1045" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1046" class="DH_beamT" connect="dh1295" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_681047" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1048" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1049" class="DH_beamT" connect="dh1296" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_691050" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1051" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1052" class="DH_beamT" connect="dh1297" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_701053" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1054" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1055" class="DH_beamT" connect="dh1298" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_711056" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1057" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1058" class="DH_beamT" connect="dh1299" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_721059" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1060" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1061" class="DH_beamT" connect="dh1300" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_731062" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1063" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1064" class="DH_beamT" connect="dh1301" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_741065" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1066" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1067" class="DH_beamT" connect="dh1302" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_751068" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1069" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1070" class="DH_beamT" connect="dh1303" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_761071" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1072" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1073" class="DH_beamT" connect="dh1304" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_771074" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1075" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1076" class="DH_beamT" connect="dh1305" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_781077" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1078" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1079" class="DH_beamT" connect="dh1306" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_791080" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1081" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1082" class="DH_beamT" connect="dh1307" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_801083" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1084" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1085" class="DH_beamT" connect="dh1308" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_811086" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1087" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1088" class="DH_beamT" connect="dh1309" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_821089" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1090" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1091" class="DH_beamT" connect="dh1310" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_831092" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1093" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1094" class="DH_beamT" connect="dh1311" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_841095" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1096" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1097" class="DH_beamT" connect="dh1312" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_851098" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1099" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1100" class="DH_beamT" connect="dh1313" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_861101" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1102" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1103" class="DH_beamT" connect="dh1314" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_871104" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1105" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1106" class="DH_beamT" connect="dh1315" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_881107" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1108" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1109" class="DH_beamT" connect="dh1316" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_891110" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1111" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1112" class="DH_beamT" connect="dh1317" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_901113" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1114" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1115" class="DH_beamT" connect="dh1318" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_911116" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1117" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1118" class="DH_beamT" connect="dh1319" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_921119" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1120" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1121" class="DH_beamT" connect="dh1320" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_931122" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1123" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1124" class="DH_beamT" connect="dh1321" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_941125" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1126" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1127" class="DH_beamT" connect="dh1322" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_951128" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1129" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1130" class="DH_beamT" connect="dh1323" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_961131" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1132" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1133" class="DH_beamT" connect="dh1324" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_971134" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1135" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1136" class="DH_beamT" connect="dh1325" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_981137" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1138" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1139" class="DH_beamT" connect="dh1326" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_991140" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1141" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1142" class="DH_beamT" connect="dh1327" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1001143" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1144" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1145" class="DH_beamT" connect="dh1328" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1011146" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1147" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1148" class="DH_beamT" connect="dh1329" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1021149" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1150" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1151" class="DH_beamT" connect="dh1330" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1031152" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1153" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1154" class="DH_beamT" connect="dh1331" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1041155" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1156" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1157" class="DH_beamT" connect="dh1332" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1051158" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1159" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1160" class="DH_beamT" connect="dh1333" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1061161" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1162" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1163" class="DH_beamT" connect="dh1334" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1071164" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1165" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1166" class="DH_beamT" connect="dh1335" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1081167" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1168" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1169" class="DH_beamT" connect="dh1336" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1091170" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1171" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1172" class="DH_beamT" connect="dh1337" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1101173" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1174" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1175" class="DH_beamT" connect="dh1338" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1111176" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1177" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1178" class="DH_beamT" connect="dh1339" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1121179" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1180" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1181" class="DH_beamT" connect="dh1340" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1131182" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1183" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1184" class="DH_beamT" connect="dh1341" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1141185" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1186" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1187" class="DH_beamT" connect="dh1342" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1151188" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1189" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1190" class="DH_beamT" connect="dh1343" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1161191" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1192" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1193" class="DH_beamT" connect="dh1344" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1171194" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1195" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1196" class="DH_beamT" connect="dh1345" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1181197" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1198" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1199" class="DH_beamT" connect="dh1346" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1191200" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1201" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1202" class="DH_beamT" connect="dh1347" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1201203" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1204" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1205" class="DH_beamT" connect="dh1348" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1211206" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1207" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1208" class="DH_beamT" connect="dh1349" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1221209" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1210" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1211" class="DH_beamT" connect="dh1350" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1231212" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1213" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1214" class="DH_beamT" connect="dh1351" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1241215" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1216" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1217" class="DH_beamT" connect="dh1352" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1251218" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1219" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1220" class="DH_beamT" connect="dh1353" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1261221" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1222" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1223" class="DH_beamT" connect="dh1354" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1271224" node="node 2">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1225" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1226" class="DH_beamT" connect="dh1355" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeB_1371227" node="node 2">
-                <workholder class="WH_TransB">
-                    <dataholder name="dh1228" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1229" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1230" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1231" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1232" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1233" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1234" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1235" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1236" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1237" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1238" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1239" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1240" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1241" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1242" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1243" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1244" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1245" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1246" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1247" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1248" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1249" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1250" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1251" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1252" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1253" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1254" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1255" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1256" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1257" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1258" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1259" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1260" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1261" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1262" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1263" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1264" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1265" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1266" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1267" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1268" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1269" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1270" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1271" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1272" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1273" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1274" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1275" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1276" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1277" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1278" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1279" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1280" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1281" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1282" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1283" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1284" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1285" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1286" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1287" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1288" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1289" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1290" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1291" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1292" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1293" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1294" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1295" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1296" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1297" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1298" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1299" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1300" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1301" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1302" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1303" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1304" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1305" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1306" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1307" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1308" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1309" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1310" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1311" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1312" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1313" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1314" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1315" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1316" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1317" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1318" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1319" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1320" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1321" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1322" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1323" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1324" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1325" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1326" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1327" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1328" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1329" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1330" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1331" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1332" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1333" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1334" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1335" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1336" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1337" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1338" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1339" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1340" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1341" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1342" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1343" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1344" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1345" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1346" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1347" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1348" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1349" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1350" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1351" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1352" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1353" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1354" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1355" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1356" class="DH_beam" connect="dh685" type="output"/>
-                </workholder>
-            </step>
-        </simul>
-        <simul name="Lofar_Station_21357" node="node 3">
-            <workholder class="WH_Station">
-                <dataholder name="dh1358" class="DH_Antenna" type="input"/>
-                <dataholder name="dh1359" class="DH_Antenna" type="input"/>
-                <dataholder name="dh1360" class="DH_Antenna" type="input"/>
-                <dataholder name="dh1361" class="DH_Antenna" type="input"/>
-                <dataholder name="dh1362" class="DH_beam" connect="dh2714" type="output"/>
-            </workholder>
-            <step name="Antenna_01363" node="node 3">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh1364" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1365" class="DH_Antenna" connect="dh1376" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_11366" node="node 3">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh1367" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1368" class="DH_Antenna" connect="dh1379" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_21369" node="node 3">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh1370" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1371" class="DH_Antenna" connect="dh1382" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_31372" node="node 3">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh1373" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1374" class="DH_Antenna" connect="dh1385" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_01375" node="node 3">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh1376" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1377" class="DH_freq" connect="dh1388" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_11378" node="node 3">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh1379" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1380" class="DH_freq" connect="dh1389" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_21381" node="node 3">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh1382" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1383" class="DH_freq" connect="dh1390" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_31384" node="node 3">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh1385" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh1386" class="DH_freq" connect="dh1391" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeF_2_81387" node="node 3">
-                <workholder class="WH_TransF">
-                    <dataholder name="dh1388" class="DH_freq" type="input"/>
-                    <dataholder name="dh1389" class="DH_freq" type="input"/>
-                    <dataholder name="dh1390" class="DH_freq" type="input"/>
-                    <dataholder name="dh1391" class="DH_freq" type="input"/>
-                    <dataholder name="dh1392" class="DH_freqT" connect="dh1521" type="output"/>
-                    <dataholder name="dh1393" class="DH_freqT" connect="dh1524" type="output"/>
-                    <dataholder name="dh1394" class="DH_freqT" connect="dh1527" type="output"/>
-                    <dataholder name="dh1395" class="DH_freqT" connect="dh1530" type="output"/>
-                    <dataholder name="dh1396" class="DH_freqT" connect="dh1533" type="output"/>
-                    <dataholder name="dh1397" class="DH_freqT" connect="dh1536" type="output"/>
-                    <dataholder name="dh1398" class="DH_freqT" connect="dh1539" type="output"/>
-                    <dataholder name="dh1399" class="DH_freqT" connect="dh1542" type="output"/>
-                    <dataholder name="dh1400" class="DH_freqT" connect="dh1545" type="output"/>
-                    <dataholder name="dh1401" class="DH_freqT" connect="dh1548" type="output"/>
-                    <dataholder name="dh1402" class="DH_freqT" connect="dh1551" type="output"/>
-                    <dataholder name="dh1403" class="DH_freqT" connect="dh1554" type="output"/>
-                    <dataholder name="dh1404" class="DH_freqT" connect="dh1557" type="output"/>
-                    <dataholder name="dh1405" class="DH_freqT" connect="dh1560" type="output"/>
-                    <dataholder name="dh1406" class="DH_freqT" connect="dh1563" type="output"/>
-                    <dataholder name="dh1407" class="DH_freqT" connect="dh1566" type="output"/>
-                    <dataholder name="dh1408" class="DH_freqT" connect="dh1569" type="output"/>
-                    <dataholder name="dh1409" class="DH_freqT" connect="dh1572" type="output"/>
-                    <dataholder name="dh1410" class="DH_freqT" connect="dh1575" type="output"/>
-                    <dataholder name="dh1411" class="DH_freqT" connect="dh1578" type="output"/>
-                    <dataholder name="dh1412" class="DH_freqT" connect="dh1581" type="output"/>
-                    <dataholder name="dh1413" class="DH_freqT" connect="dh1584" type="output"/>
-                    <dataholder name="dh1414" class="DH_freqT" connect="dh1587" type="output"/>
-                    <dataholder name="dh1415" class="DH_freqT" connect="dh1590" type="output"/>
-                    <dataholder name="dh1416" class="DH_freqT" connect="dh1593" type="output"/>
-                    <dataholder name="dh1417" class="DH_freqT" connect="dh1596" type="output"/>
-                    <dataholder name="dh1418" class="DH_freqT" connect="dh1599" type="output"/>
-                    <dataholder name="dh1419" class="DH_freqT" connect="dh1602" type="output"/>
-                    <dataholder name="dh1420" class="DH_freqT" connect="dh1605" type="output"/>
-                    <dataholder name="dh1421" class="DH_freqT" connect="dh1608" type="output"/>
-                    <dataholder name="dh1422" class="DH_freqT" connect="dh1611" type="output"/>
-                    <dataholder name="dh1423" class="DH_freqT" connect="dh1614" type="output"/>
-                    <dataholder name="dh1424" class="DH_freqT" connect="dh1617" type="output"/>
-                    <dataholder name="dh1425" class="DH_freqT" connect="dh1620" type="output"/>
-                    <dataholder name="dh1426" class="DH_freqT" connect="dh1623" type="output"/>
-                    <dataholder name="dh1427" class="DH_freqT" connect="dh1626" type="output"/>
-                    <dataholder name="dh1428" class="DH_freqT" connect="dh1629" type="output"/>
-                    <dataholder name="dh1429" class="DH_freqT" connect="dh1632" type="output"/>
-                    <dataholder name="dh1430" class="DH_freqT" connect="dh1635" type="output"/>
-                    <dataholder name="dh1431" class="DH_freqT" connect="dh1638" type="output"/>
-                    <dataholder name="dh1432" class="DH_freqT" connect="dh1641" type="output"/>
-                    <dataholder name="dh1433" class="DH_freqT" connect="dh1644" type="output"/>
-                    <dataholder name="dh1434" class="DH_freqT" connect="dh1647" type="output"/>
-                    <dataholder name="dh1435" class="DH_freqT" connect="dh1650" type="output"/>
-                    <dataholder name="dh1436" class="DH_freqT" connect="dh1653" type="output"/>
-                    <dataholder name="dh1437" class="DH_freqT" connect="dh1656" type="output"/>
-                    <dataholder name="dh1438" class="DH_freqT" connect="dh1659" type="output"/>
-                    <dataholder name="dh1439" class="DH_freqT" connect="dh1662" type="output"/>
-                    <dataholder name="dh1440" class="DH_freqT" connect="dh1665" type="output"/>
-                    <dataholder name="dh1441" class="DH_freqT" connect="dh1668" type="output"/>
-                    <dataholder name="dh1442" class="DH_freqT" connect="dh1671" type="output"/>
-                    <dataholder name="dh1443" class="DH_freqT" connect="dh1674" type="output"/>
-                    <dataholder name="dh1444" class="DH_freqT" connect="dh1677" type="output"/>
-                    <dataholder name="dh1445" class="DH_freqT" connect="dh1680" type="output"/>
-                    <dataholder name="dh1446" class="DH_freqT" connect="dh1683" type="output"/>
-                    <dataholder name="dh1447" class="DH_freqT" connect="dh1686" type="output"/>
-                    <dataholder name="dh1448" class="DH_freqT" connect="dh1689" type="output"/>
-                    <dataholder name="dh1449" class="DH_freqT" connect="dh1692" type="output"/>
-                    <dataholder name="dh1450" class="DH_freqT" connect="dh1695" type="output"/>
-                    <dataholder name="dh1451" class="DH_freqT" connect="dh1698" type="output"/>
-                    <dataholder name="dh1452" class="DH_freqT" connect="dh1701" type="output"/>
-                    <dataholder name="dh1453" class="DH_freqT" connect="dh1704" type="output"/>
-                    <dataholder name="dh1454" class="DH_freqT" connect="dh1707" type="output"/>
-                    <dataholder name="dh1455" class="DH_freqT" connect="dh1710" type="output"/>
-                    <dataholder name="dh1456" class="DH_freqT" connect="dh1713" type="output"/>
-                    <dataholder name="dh1457" class="DH_freqT" connect="dh1716" type="output"/>
-                    <dataholder name="dh1458" class="DH_freqT" connect="dh1719" type="output"/>
-                    <dataholder name="dh1459" class="DH_freqT" connect="dh1722" type="output"/>
-                    <dataholder name="dh1460" class="DH_freqT" connect="dh1725" type="output"/>
-                    <dataholder name="dh1461" class="DH_freqT" connect="dh1728" type="output"/>
-                    <dataholder name="dh1462" class="DH_freqT" connect="dh1731" type="output"/>
-                    <dataholder name="dh1463" class="DH_freqT" connect="dh1734" type="output"/>
-                    <dataholder name="dh1464" class="DH_freqT" connect="dh1737" type="output"/>
-                    <dataholder name="dh1465" class="DH_freqT" connect="dh1740" type="output"/>
-                    <dataholder name="dh1466" class="DH_freqT" connect="dh1743" type="output"/>
-                    <dataholder name="dh1467" class="DH_freqT" connect="dh1746" type="output"/>
-                    <dataholder name="dh1468" class="DH_freqT" connect="dh1749" type="output"/>
-                    <dataholder name="dh1469" class="DH_freqT" connect="dh1752" type="output"/>
-                    <dataholder name="dh1470" class="DH_freqT" connect="dh1755" type="output"/>
-                    <dataholder name="dh1471" class="DH_freqT" connect="dh1758" type="output"/>
-                    <dataholder name="dh1472" class="DH_freqT" connect="dh1761" type="output"/>
-                    <dataholder name="dh1473" class="DH_freqT" connect="dh1764" type="output"/>
-                    <dataholder name="dh1474" class="DH_freqT" connect="dh1767" type="output"/>
-                    <dataholder name="dh1475" class="DH_freqT" connect="dh1770" type="output"/>
-                    <dataholder name="dh1476" class="DH_freqT" connect="dh1773" type="output"/>
-                    <dataholder name="dh1477" class="DH_freqT" connect="dh1776" type="output"/>
-                    <dataholder name="dh1478" class="DH_freqT" connect="dh1779" type="output"/>
-                    <dataholder name="dh1479" class="DH_freqT" connect="dh1782" type="output"/>
-                    <dataholder name="dh1480" class="DH_freqT" connect="dh1785" type="output"/>
-                    <dataholder name="dh1481" class="DH_freqT" connect="dh1788" type="output"/>
-                    <dataholder name="dh1482" class="DH_freqT" connect="dh1791" type="output"/>
-                    <dataholder name="dh1483" class="DH_freqT" connect="dh1794" type="output"/>
-                    <dataholder name="dh1484" class="DH_freqT" connect="dh1797" type="output"/>
-                    <dataholder name="dh1485" class="DH_freqT" connect="dh1800" type="output"/>
-                    <dataholder name="dh1486" class="DH_freqT" connect="dh1803" type="output"/>
-                    <dataholder name="dh1487" class="DH_freqT" connect="dh1806" type="output"/>
-                    <dataholder name="dh1488" class="DH_freqT" connect="dh1809" type="output"/>
-                    <dataholder name="dh1489" class="DH_freqT" connect="dh1812" type="output"/>
-                    <dataholder name="dh1490" class="DH_freqT" connect="dh1815" type="output"/>
-                    <dataholder name="dh1491" class="DH_freqT" connect="dh1818" type="output"/>
-                    <dataholder name="dh1492" class="DH_freqT" connect="dh1821" type="output"/>
-                    <dataholder name="dh1493" class="DH_freqT" connect="dh1824" type="output"/>
-                    <dataholder name="dh1494" class="DH_freqT" connect="dh1827" type="output"/>
-                    <dataholder name="dh1495" class="DH_freqT" connect="dh1830" type="output"/>
-                    <dataholder name="dh1496" class="DH_freqT" connect="dh1833" type="output"/>
-                    <dataholder name="dh1497" class="DH_freqT" connect="dh1836" type="output"/>
-                    <dataholder name="dh1498" class="DH_freqT" connect="dh1839" type="output"/>
-                    <dataholder name="dh1499" class="DH_freqT" connect="dh1842" type="output"/>
-                    <dataholder name="dh1500" class="DH_freqT" connect="dh1845" type="output"/>
-                    <dataholder name="dh1501" class="DH_freqT" connect="dh1848" type="output"/>
-                    <dataholder name="dh1502" class="DH_freqT" connect="dh1851" type="output"/>
-                    <dataholder name="dh1503" class="DH_freqT" connect="dh1854" type="output"/>
-                    <dataholder name="dh1504" class="DH_freqT" connect="dh1857" type="output"/>
-                    <dataholder name="dh1505" class="DH_freqT" connect="dh1860" type="output"/>
-                    <dataholder name="dh1506" class="DH_freqT" connect="dh1863" type="output"/>
-                    <dataholder name="dh1507" class="DH_freqT" connect="dh1866" type="output"/>
-                    <dataholder name="dh1508" class="DH_freqT" connect="dh1869" type="output"/>
-                    <dataholder name="dh1509" class="DH_freqT" connect="dh1872" type="output"/>
-                    <dataholder name="dh1510" class="DH_freqT" connect="dh1875" type="output"/>
-                    <dataholder name="dh1511" class="DH_freqT" connect="dh1878" type="output"/>
-                    <dataholder name="dh1512" class="DH_freqT" connect="dh1881" type="output"/>
-                    <dataholder name="dh1513" class="DH_freqT" connect="dh1884" type="output"/>
-                    <dataholder name="dh1514" class="DH_freqT" connect="dh1887" type="output"/>
-                    <dataholder name="dh1515" class="DH_freqT" connect="dh1890" type="output"/>
-                    <dataholder name="dh1516" class="DH_freqT" connect="dh1893" type="output"/>
-                    <dataholder name="dh1517" class="DH_freqT" connect="dh1896" type="output"/>
-                    <dataholder name="dh1518" class="DH_freqT" connect="dh1899" type="output"/>
-                    <dataholder name="dh1519" class="DH_freqT" connect="dh1902" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_01520" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1521" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1522" class="DH_beamT" connect="dh1905" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_11523" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1524" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1525" class="DH_beamT" connect="dh1906" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_21526" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1527" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1528" class="DH_beamT" connect="dh1907" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_31529" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1530" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1531" class="DH_beamT" connect="dh1908" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_41532" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1533" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1534" class="DH_beamT" connect="dh1909" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_51535" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1536" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1537" class="DH_beamT" connect="dh1910" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_61538" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1539" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1540" class="DH_beamT" connect="dh1911" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_71541" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1542" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1543" class="DH_beamT" connect="dh1912" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_81544" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1545" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1546" class="DH_beamT" connect="dh1913" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_91547" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1548" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1549" class="DH_beamT" connect="dh1914" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_101550" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1551" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1552" class="DH_beamT" connect="dh1915" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_111553" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1554" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1555" class="DH_beamT" connect="dh1916" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_121556" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1557" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1558" class="DH_beamT" connect="dh1917" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_131559" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1560" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1561" class="DH_beamT" connect="dh1918" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_141562" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1563" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1564" class="DH_beamT" connect="dh1919" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_151565" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1566" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1567" class="DH_beamT" connect="dh1920" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_161568" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1569" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1570" class="DH_beamT" connect="dh1921" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_171571" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1572" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1573" class="DH_beamT" connect="dh1922" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_181574" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1575" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1576" class="DH_beamT" connect="dh1923" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_191577" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1578" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1579" class="DH_beamT" connect="dh1924" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_201580" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1581" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1582" class="DH_beamT" connect="dh1925" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_211583" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1584" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1585" class="DH_beamT" connect="dh1926" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_221586" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1587" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1588" class="DH_beamT" connect="dh1927" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_231589" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1590" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1591" class="DH_beamT" connect="dh1928" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_241592" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1593" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1594" class="DH_beamT" connect="dh1929" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_251595" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1596" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1597" class="DH_beamT" connect="dh1930" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_261598" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1599" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1600" class="DH_beamT" connect="dh1931" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_271601" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1602" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1603" class="DH_beamT" connect="dh1932" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_281604" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1605" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1606" class="DH_beamT" connect="dh1933" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_291607" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1608" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1609" class="DH_beamT" connect="dh1934" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_301610" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1611" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1612" class="DH_beamT" connect="dh1935" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_311613" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1614" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1615" class="DH_beamT" connect="dh1936" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_321616" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1617" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1618" class="DH_beamT" connect="dh1937" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_331619" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1620" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1621" class="DH_beamT" connect="dh1938" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_341622" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1623" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1624" class="DH_beamT" connect="dh1939" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_351625" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1626" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1627" class="DH_beamT" connect="dh1940" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_361628" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1629" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1630" class="DH_beamT" connect="dh1941" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_371631" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1632" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1633" class="DH_beamT" connect="dh1942" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_381634" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1635" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1636" class="DH_beamT" connect="dh1943" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_391637" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1638" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1639" class="DH_beamT" connect="dh1944" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_401640" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1641" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1642" class="DH_beamT" connect="dh1945" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_411643" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1644" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1645" class="DH_beamT" connect="dh1946" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_421646" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1647" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1648" class="DH_beamT" connect="dh1947" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_431649" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1650" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1651" class="DH_beamT" connect="dh1948" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_441652" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1653" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1654" class="DH_beamT" connect="dh1949" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_451655" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1656" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1657" class="DH_beamT" connect="dh1950" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_461658" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1659" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1660" class="DH_beamT" connect="dh1951" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_471661" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1662" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1663" class="DH_beamT" connect="dh1952" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_481664" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1665" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1666" class="DH_beamT" connect="dh1953" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_491667" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1668" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1669" class="DH_beamT" connect="dh1954" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_501670" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1671" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1672" class="DH_beamT" connect="dh1955" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_511673" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1674" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1675" class="DH_beamT" connect="dh1956" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_521676" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1677" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1678" class="DH_beamT" connect="dh1957" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_531679" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1680" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1681" class="DH_beamT" connect="dh1958" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_541682" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1683" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1684" class="DH_beamT" connect="dh1959" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_551685" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1686" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1687" class="DH_beamT" connect="dh1960" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_561688" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1689" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1690" class="DH_beamT" connect="dh1961" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_571691" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1692" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1693" class="DH_beamT" connect="dh1962" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_581694" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1695" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1696" class="DH_beamT" connect="dh1963" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_591697" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1698" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1699" class="DH_beamT" connect="dh1964" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_601700" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1701" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1702" class="DH_beamT" connect="dh1965" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_611703" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1704" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1705" class="DH_beamT" connect="dh1966" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_621706" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1707" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1708" class="DH_beamT" connect="dh1967" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_631709" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1710" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1711" class="DH_beamT" connect="dh1968" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_641712" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1713" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1714" class="DH_beamT" connect="dh1969" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_651715" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1716" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1717" class="DH_beamT" connect="dh1970" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_661718" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1719" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1720" class="DH_beamT" connect="dh1971" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_671721" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1722" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1723" class="DH_beamT" connect="dh1972" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_681724" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1725" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1726" class="DH_beamT" connect="dh1973" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_691727" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1728" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1729" class="DH_beamT" connect="dh1974" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_701730" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1731" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1732" class="DH_beamT" connect="dh1975" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_711733" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1734" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1735" class="DH_beamT" connect="dh1976" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_721736" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1737" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1738" class="DH_beamT" connect="dh1977" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_731739" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1740" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1741" class="DH_beamT" connect="dh1978" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_741742" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1743" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1744" class="DH_beamT" connect="dh1979" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_751745" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1746" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1747" class="DH_beamT" connect="dh1980" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_761748" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1749" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1750" class="DH_beamT" connect="dh1981" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_771751" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1752" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1753" class="DH_beamT" connect="dh1982" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_781754" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1755" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1756" class="DH_beamT" connect="dh1983" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_791757" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1758" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1759" class="DH_beamT" connect="dh1984" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_801760" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1761" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1762" class="DH_beamT" connect="dh1985" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_811763" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1764" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1765" class="DH_beamT" connect="dh1986" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_821766" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1767" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1768" class="DH_beamT" connect="dh1987" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_831769" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1770" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1771" class="DH_beamT" connect="dh1988" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_841772" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1773" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1774" class="DH_beamT" connect="dh1989" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_851775" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1776" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1777" class="DH_beamT" connect="dh1990" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_861778" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1779" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1780" class="DH_beamT" connect="dh1991" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_871781" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1782" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1783" class="DH_beamT" connect="dh1992" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_881784" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1785" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1786" class="DH_beamT" connect="dh1993" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_891787" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1788" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1789" class="DH_beamT" connect="dh1994" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_901790" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1791" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1792" class="DH_beamT" connect="dh1995" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_911793" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1794" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1795" class="DH_beamT" connect="dh1996" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_921796" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1797" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1798" class="DH_beamT" connect="dh1997" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_931799" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1800" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1801" class="DH_beamT" connect="dh1998" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_941802" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1803" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1804" class="DH_beamT" connect="dh1999" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_951805" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1806" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1807" class="DH_beamT" connect="dh2000" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_961808" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1809" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1810" class="DH_beamT" connect="dh2001" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_971811" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1812" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1813" class="DH_beamT" connect="dh2002" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_981814" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1815" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1816" class="DH_beamT" connect="dh2003" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_991817" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1818" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1819" class="DH_beamT" connect="dh2004" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1001820" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1821" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1822" class="DH_beamT" connect="dh2005" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1011823" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1824" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1825" class="DH_beamT" connect="dh2006" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1021826" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1827" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1828" class="DH_beamT" connect="dh2007" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1031829" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1830" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1831" class="DH_beamT" connect="dh2008" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1041832" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1833" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1834" class="DH_beamT" connect="dh2009" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1051835" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1836" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1837" class="DH_beamT" connect="dh2010" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1061838" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1839" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1840" class="DH_beamT" connect="dh2011" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1071841" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1842" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1843" class="DH_beamT" connect="dh2012" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1081844" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1845" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1846" class="DH_beamT" connect="dh2013" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1091847" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1848" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1849" class="DH_beamT" connect="dh2014" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1101850" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1851" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1852" class="DH_beamT" connect="dh2015" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1111853" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1854" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1855" class="DH_beamT" connect="dh2016" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1121856" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1857" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1858" class="DH_beamT" connect="dh2017" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1131859" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1860" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1861" class="DH_beamT" connect="dh2018" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1141862" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1863" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1864" class="DH_beamT" connect="dh2019" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1151865" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1866" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1867" class="DH_beamT" connect="dh2020" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1161868" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1869" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1870" class="DH_beamT" connect="dh2021" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1171871" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1872" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1873" class="DH_beamT" connect="dh2022" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1181874" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1875" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1876" class="DH_beamT" connect="dh2023" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1191877" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1878" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1879" class="DH_beamT" connect="dh2024" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1201880" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1881" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1882" class="DH_beamT" connect="dh2025" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1211883" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1884" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1885" class="DH_beamT" connect="dh2026" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1221886" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1887" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1888" class="DH_beamT" connect="dh2027" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1231889" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1890" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1891" class="DH_beamT" connect="dh2028" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1241892" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1893" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1894" class="DH_beamT" connect="dh2029" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1251895" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1896" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1897" class="DH_beamT" connect="dh2030" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1261898" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1899" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1900" class="DH_beamT" connect="dh2031" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1271901" node="node 3">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh1902" class="DH_freqT" type="input"/>
-                    <dataholder name="dh1903" class="DH_beamT" connect="dh2032" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeB_1371904" node="node 3">
-                <workholder class="WH_TransB">
-                    <dataholder name="dh1905" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1906" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1907" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1908" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1909" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1910" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1911" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1912" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1913" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1914" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1915" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1916" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1917" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1918" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1919" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1920" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1921" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1922" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1923" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1924" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1925" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1926" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1927" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1928" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1929" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1930" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1931" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1932" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1933" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1934" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1935" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1936" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1937" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1938" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1939" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1940" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1941" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1942" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1943" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1944" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1945" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1946" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1947" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1948" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1949" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1950" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1951" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1952" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1953" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1954" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1955" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1956" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1957" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1958" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1959" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1960" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1961" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1962" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1963" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1964" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1965" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1966" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1967" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1968" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1969" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1970" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1971" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1972" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1973" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1974" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1975" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1976" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1977" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1978" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1979" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1980" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1981" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1982" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1983" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1984" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1985" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1986" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1987" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1988" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1989" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1990" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1991" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1992" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1993" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1994" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1995" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1996" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1997" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1998" class="DH_beamT" type="input"/>
-                    <dataholder name="dh1999" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2000" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2001" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2002" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2003" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2004" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2005" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2006" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2007" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2008" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2009" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2010" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2011" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2012" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2013" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2014" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2015" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2016" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2017" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2018" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2019" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2020" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2021" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2022" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2023" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2024" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2025" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2026" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2027" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2028" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2029" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2030" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2031" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2032" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2033" class="DH_beam" connect="dh1362" type="output"/>
-                </workholder>
-            </step>
-        </simul>
-        <simul name="Lofar_Station_32034" node="node 4">
-            <workholder class="WH_Station">
-                <dataholder name="dh2035" class="DH_Antenna" type="input"/>
-                <dataholder name="dh2036" class="DH_Antenna" type="input"/>
-                <dataholder name="dh2037" class="DH_Antenna" type="input"/>
-                <dataholder name="dh2038" class="DH_Antenna" type="input"/>
-                <dataholder name="dh2039" class="DH_beam" connect="dh2715" type="output"/>
-            </workholder>
-            <step name="Antenna_02040" node="node 4">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh2041" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2042" class="DH_Antenna" connect="dh2053" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_12043" node="node 4">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh2044" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2045" class="DH_Antenna" connect="dh2056" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_22046" node="node 4">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh2047" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2048" class="DH_Antenna" connect="dh2059" type="output"/>
-                </workholder>
-            </step>
-            <step name="Antenna_32049" node="node 4">
-                <workholder class="WH_Antenna">
-                    <dataholder name="dh2050" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2051" class="DH_Antenna" connect="dh2062" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_02052" node="node 4">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh2053" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2054" class="DH_freq" connect="dh2065" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_12055" node="node 4">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh2056" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2057" class="DH_freq" connect="dh2066" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_22058" node="node 4">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh2059" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2060" class="DH_freq" connect="dh2067" type="output"/>
-                </workholder>
-            </step>
-            <step name="FFT_32061" node="node 4">
-                <workholder class="WH_FFT">
-                    <dataholder name="dh2062" class="DH_Antenna" type="input"/>
-                    <dataholder name="dh2063" class="DH_freq" connect="dh2068" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeF_3_82064" node="node 4">
-                <workholder class="WH_TransF">
-                    <dataholder name="dh2065" class="DH_freq" type="input"/>
-                    <dataholder name="dh2066" class="DH_freq" type="input"/>
-                    <dataholder name="dh2067" class="DH_freq" type="input"/>
-                    <dataholder name="dh2068" class="DH_freq" type="input"/>
-                    <dataholder name="dh2069" class="DH_freqT" connect="dh2198" type="output"/>
-                    <dataholder name="dh2070" class="DH_freqT" connect="dh2201" type="output"/>
-                    <dataholder name="dh2071" class="DH_freqT" connect="dh2204" type="output"/>
-                    <dataholder name="dh2072" class="DH_freqT" connect="dh2207" type="output"/>
-                    <dataholder name="dh2073" class="DH_freqT" connect="dh2210" type="output"/>
-                    <dataholder name="dh2074" class="DH_freqT" connect="dh2213" type="output"/>
-                    <dataholder name="dh2075" class="DH_freqT" connect="dh2216" type="output"/>
-                    <dataholder name="dh2076" class="DH_freqT" connect="dh2219" type="output"/>
-                    <dataholder name="dh2077" class="DH_freqT" connect="dh2222" type="output"/>
-                    <dataholder name="dh2078" class="DH_freqT" connect="dh2225" type="output"/>
-                    <dataholder name="dh2079" class="DH_freqT" connect="dh2228" type="output"/>
-                    <dataholder name="dh2080" class="DH_freqT" connect="dh2231" type="output"/>
-                    <dataholder name="dh2081" class="DH_freqT" connect="dh2234" type="output"/>
-                    <dataholder name="dh2082" class="DH_freqT" connect="dh2237" type="output"/>
-                    <dataholder name="dh2083" class="DH_freqT" connect="dh2240" type="output"/>
-                    <dataholder name="dh2084" class="DH_freqT" connect="dh2243" type="output"/>
-                    <dataholder name="dh2085" class="DH_freqT" connect="dh2246" type="output"/>
-                    <dataholder name="dh2086" class="DH_freqT" connect="dh2249" type="output"/>
-                    <dataholder name="dh2087" class="DH_freqT" connect="dh2252" type="output"/>
-                    <dataholder name="dh2088" class="DH_freqT" connect="dh2255" type="output"/>
-                    <dataholder name="dh2089" class="DH_freqT" connect="dh2258" type="output"/>
-                    <dataholder name="dh2090" class="DH_freqT" connect="dh2261" type="output"/>
-                    <dataholder name="dh2091" class="DH_freqT" connect="dh2264" type="output"/>
-                    <dataholder name="dh2092" class="DH_freqT" connect="dh2267" type="output"/>
-                    <dataholder name="dh2093" class="DH_freqT" connect="dh2270" type="output"/>
-                    <dataholder name="dh2094" class="DH_freqT" connect="dh2273" type="output"/>
-                    <dataholder name="dh2095" class="DH_freqT" connect="dh2276" type="output"/>
-                    <dataholder name="dh2096" class="DH_freqT" connect="dh2279" type="output"/>
-                    <dataholder name="dh2097" class="DH_freqT" connect="dh2282" type="output"/>
-                    <dataholder name="dh2098" class="DH_freqT" connect="dh2285" type="output"/>
-                    <dataholder name="dh2099" class="DH_freqT" connect="dh2288" type="output"/>
-                    <dataholder name="dh2100" class="DH_freqT" connect="dh2291" type="output"/>
-                    <dataholder name="dh2101" class="DH_freqT" connect="dh2294" type="output"/>
-                    <dataholder name="dh2102" class="DH_freqT" connect="dh2297" type="output"/>
-                    <dataholder name="dh2103" class="DH_freqT" connect="dh2300" type="output"/>
-                    <dataholder name="dh2104" class="DH_freqT" connect="dh2303" type="output"/>
-                    <dataholder name="dh2105" class="DH_freqT" connect="dh2306" type="output"/>
-                    <dataholder name="dh2106" class="DH_freqT" connect="dh2309" type="output"/>
-                    <dataholder name="dh2107" class="DH_freqT" connect="dh2312" type="output"/>
-                    <dataholder name="dh2108" class="DH_freqT" connect="dh2315" type="output"/>
-                    <dataholder name="dh2109" class="DH_freqT" connect="dh2318" type="output"/>
-                    <dataholder name="dh2110" class="DH_freqT" connect="dh2321" type="output"/>
-                    <dataholder name="dh2111" class="DH_freqT" connect="dh2324" type="output"/>
-                    <dataholder name="dh2112" class="DH_freqT" connect="dh2327" type="output"/>
-                    <dataholder name="dh2113" class="DH_freqT" connect="dh2330" type="output"/>
-                    <dataholder name="dh2114" class="DH_freqT" connect="dh2333" type="output"/>
-                    <dataholder name="dh2115" class="DH_freqT" connect="dh2336" type="output"/>
-                    <dataholder name="dh2116" class="DH_freqT" connect="dh2339" type="output"/>
-                    <dataholder name="dh2117" class="DH_freqT" connect="dh2342" type="output"/>
-                    <dataholder name="dh2118" class="DH_freqT" connect="dh2345" type="output"/>
-                    <dataholder name="dh2119" class="DH_freqT" connect="dh2348" type="output"/>
-                    <dataholder name="dh2120" class="DH_freqT" connect="dh2351" type="output"/>
-                    <dataholder name="dh2121" class="DH_freqT" connect="dh2354" type="output"/>
-                    <dataholder name="dh2122" class="DH_freqT" connect="dh2357" type="output"/>
-                    <dataholder name="dh2123" class="DH_freqT" connect="dh2360" type="output"/>
-                    <dataholder name="dh2124" class="DH_freqT" connect="dh2363" type="output"/>
-                    <dataholder name="dh2125" class="DH_freqT" connect="dh2366" type="output"/>
-                    <dataholder name="dh2126" class="DH_freqT" connect="dh2369" type="output"/>
-                    <dataholder name="dh2127" class="DH_freqT" connect="dh2372" type="output"/>
-                    <dataholder name="dh2128" class="DH_freqT" connect="dh2375" type="output"/>
-                    <dataholder name="dh2129" class="DH_freqT" connect="dh2378" type="output"/>
-                    <dataholder name="dh2130" class="DH_freqT" connect="dh2381" type="output"/>
-                    <dataholder name="dh2131" class="DH_freqT" connect="dh2384" type="output"/>
-                    <dataholder name="dh2132" class="DH_freqT" connect="dh2387" type="output"/>
-                    <dataholder name="dh2133" class="DH_freqT" connect="dh2390" type="output"/>
-                    <dataholder name="dh2134" class="DH_freqT" connect="dh2393" type="output"/>
-                    <dataholder name="dh2135" class="DH_freqT" connect="dh2396" type="output"/>
-                    <dataholder name="dh2136" class="DH_freqT" connect="dh2399" type="output"/>
-                    <dataholder name="dh2137" class="DH_freqT" connect="dh2402" type="output"/>
-                    <dataholder name="dh2138" class="DH_freqT" connect="dh2405" type="output"/>
-                    <dataholder name="dh2139" class="DH_freqT" connect="dh2408" type="output"/>
-                    <dataholder name="dh2140" class="DH_freqT" connect="dh2411" type="output"/>
-                    <dataholder name="dh2141" class="DH_freqT" connect="dh2414" type="output"/>
-                    <dataholder name="dh2142" class="DH_freqT" connect="dh2417" type="output"/>
-                    <dataholder name="dh2143" class="DH_freqT" connect="dh2420" type="output"/>
-                    <dataholder name="dh2144" class="DH_freqT" connect="dh2423" type="output"/>
-                    <dataholder name="dh2145" class="DH_freqT" connect="dh2426" type="output"/>
-                    <dataholder name="dh2146" class="DH_freqT" connect="dh2429" type="output"/>
-                    <dataholder name="dh2147" class="DH_freqT" connect="dh2432" type="output"/>
-                    <dataholder name="dh2148" class="DH_freqT" connect="dh2435" type="output"/>
-                    <dataholder name="dh2149" class="DH_freqT" connect="dh2438" type="output"/>
-                    <dataholder name="dh2150" class="DH_freqT" connect="dh2441" type="output"/>
-                    <dataholder name="dh2151" class="DH_freqT" connect="dh2444" type="output"/>
-                    <dataholder name="dh2152" class="DH_freqT" connect="dh2447" type="output"/>
-                    <dataholder name="dh2153" class="DH_freqT" connect="dh2450" type="output"/>
-                    <dataholder name="dh2154" class="DH_freqT" connect="dh2453" type="output"/>
-                    <dataholder name="dh2155" class="DH_freqT" connect="dh2456" type="output"/>
-                    <dataholder name="dh2156" class="DH_freqT" connect="dh2459" type="output"/>
-                    <dataholder name="dh2157" class="DH_freqT" connect="dh2462" type="output"/>
-                    <dataholder name="dh2158" class="DH_freqT" connect="dh2465" type="output"/>
-                    <dataholder name="dh2159" class="DH_freqT" connect="dh2468" type="output"/>
-                    <dataholder name="dh2160" class="DH_freqT" connect="dh2471" type="output"/>
-                    <dataholder name="dh2161" class="DH_freqT" connect="dh2474" type="output"/>
-                    <dataholder name="dh2162" class="DH_freqT" connect="dh2477" type="output"/>
-                    <dataholder name="dh2163" class="DH_freqT" connect="dh2480" type="output"/>
-                    <dataholder name="dh2164" class="DH_freqT" connect="dh2483" type="output"/>
-                    <dataholder name="dh2165" class="DH_freqT" connect="dh2486" type="output"/>
-                    <dataholder name="dh2166" class="DH_freqT" connect="dh2489" type="output"/>
-                    <dataholder name="dh2167" class="DH_freqT" connect="dh2492" type="output"/>
-                    <dataholder name="dh2168" class="DH_freqT" connect="dh2495" type="output"/>
-                    <dataholder name="dh2169" class="DH_freqT" connect="dh2498" type="output"/>
-                    <dataholder name="dh2170" class="DH_freqT" connect="dh2501" type="output"/>
-                    <dataholder name="dh2171" class="DH_freqT" connect="dh2504" type="output"/>
-                    <dataholder name="dh2172" class="DH_freqT" connect="dh2507" type="output"/>
-                    <dataholder name="dh2173" class="DH_freqT" connect="dh2510" type="output"/>
-                    <dataholder name="dh2174" class="DH_freqT" connect="dh2513" type="output"/>
-                    <dataholder name="dh2175" class="DH_freqT" connect="dh2516" type="output"/>
-                    <dataholder name="dh2176" class="DH_freqT" connect="dh2519" type="output"/>
-                    <dataholder name="dh2177" class="DH_freqT" connect="dh2522" type="output"/>
-                    <dataholder name="dh2178" class="DH_freqT" connect="dh2525" type="output"/>
-                    <dataholder name="dh2179" class="DH_freqT" connect="dh2528" type="output"/>
-                    <dataholder name="dh2180" class="DH_freqT" connect="dh2531" type="output"/>
-                    <dataholder name="dh2181" class="DH_freqT" connect="dh2534" type="output"/>
-                    <dataholder name="dh2182" class="DH_freqT" connect="dh2537" type="output"/>
-                    <dataholder name="dh2183" class="DH_freqT" connect="dh2540" type="output"/>
-                    <dataholder name="dh2184" class="DH_freqT" connect="dh2543" type="output"/>
-                    <dataholder name="dh2185" class="DH_freqT" connect="dh2546" type="output"/>
-                    <dataholder name="dh2186" class="DH_freqT" connect="dh2549" type="output"/>
-                    <dataholder name="dh2187" class="DH_freqT" connect="dh2552" type="output"/>
-                    <dataholder name="dh2188" class="DH_freqT" connect="dh2555" type="output"/>
-                    <dataholder name="dh2189" class="DH_freqT" connect="dh2558" type="output"/>
-                    <dataholder name="dh2190" class="DH_freqT" connect="dh2561" type="output"/>
-                    <dataholder name="dh2191" class="DH_freqT" connect="dh2564" type="output"/>
-                    <dataholder name="dh2192" class="DH_freqT" connect="dh2567" type="output"/>
-                    <dataholder name="dh2193" class="DH_freqT" connect="dh2570" type="output"/>
-                    <dataholder name="dh2194" class="DH_freqT" connect="dh2573" type="output"/>
-                    <dataholder name="dh2195" class="DH_freqT" connect="dh2576" type="output"/>
-                    <dataholder name="dh2196" class="DH_freqT" connect="dh2579" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_02197" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2198" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2199" class="DH_beamT" connect="dh2582" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_12200" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2201" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2202" class="DH_beamT" connect="dh2583" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_22203" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2204" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2205" class="DH_beamT" connect="dh2584" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_32206" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2207" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2208" class="DH_beamT" connect="dh2585" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_42209" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2210" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2211" class="DH_beamT" connect="dh2586" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_52212" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2213" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2214" class="DH_beamT" connect="dh2587" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_62215" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2216" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2217" class="DH_beamT" connect="dh2588" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_72218" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2219" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2220" class="DH_beamT" connect="dh2589" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_82221" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2222" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2223" class="DH_beamT" connect="dh2590" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_92224" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2225" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2226" class="DH_beamT" connect="dh2591" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_102227" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2228" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2229" class="DH_beamT" connect="dh2592" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_112230" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2231" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2232" class="DH_beamT" connect="dh2593" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_122233" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2234" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2235" class="DH_beamT" connect="dh2594" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_132236" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2237" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2238" class="DH_beamT" connect="dh2595" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_142239" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2240" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2241" class="DH_beamT" connect="dh2596" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_152242" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2243" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2244" class="DH_beamT" connect="dh2597" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_162245" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2246" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2247" class="DH_beamT" connect="dh2598" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_172248" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2249" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2250" class="DH_beamT" connect="dh2599" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_182251" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2252" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2253" class="DH_beamT" connect="dh2600" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_192254" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2255" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2256" class="DH_beamT" connect="dh2601" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_202257" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2258" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2259" class="DH_beamT" connect="dh2602" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_212260" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2261" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2262" class="DH_beamT" connect="dh2603" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_222263" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2264" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2265" class="DH_beamT" connect="dh2604" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_232266" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2267" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2268" class="DH_beamT" connect="dh2605" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_242269" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2270" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2271" class="DH_beamT" connect="dh2606" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_252272" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2273" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2274" class="DH_beamT" connect="dh2607" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_262275" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2276" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2277" class="DH_beamT" connect="dh2608" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_272278" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2279" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2280" class="DH_beamT" connect="dh2609" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_282281" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2282" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2283" class="DH_beamT" connect="dh2610" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_292284" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2285" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2286" class="DH_beamT" connect="dh2611" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_302287" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2288" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2289" class="DH_beamT" connect="dh2612" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_312290" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2291" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2292" class="DH_beamT" connect="dh2613" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_322293" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2294" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2295" class="DH_beamT" connect="dh2614" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_332296" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2297" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2298" class="DH_beamT" connect="dh2615" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_342299" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2300" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2301" class="DH_beamT" connect="dh2616" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_352302" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2303" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2304" class="DH_beamT" connect="dh2617" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_362305" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2306" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2307" class="DH_beamT" connect="dh2618" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_372308" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2309" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2310" class="DH_beamT" connect="dh2619" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_382311" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2312" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2313" class="DH_beamT" connect="dh2620" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_392314" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2315" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2316" class="DH_beamT" connect="dh2621" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_402317" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2318" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2319" class="DH_beamT" connect="dh2622" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_412320" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2321" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2322" class="DH_beamT" connect="dh2623" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_422323" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2324" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2325" class="DH_beamT" connect="dh2624" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_432326" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2327" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2328" class="DH_beamT" connect="dh2625" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_442329" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2330" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2331" class="DH_beamT" connect="dh2626" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_452332" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2333" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2334" class="DH_beamT" connect="dh2627" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_462335" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2336" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2337" class="DH_beamT" connect="dh2628" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_472338" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2339" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2340" class="DH_beamT" connect="dh2629" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_482341" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2342" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2343" class="DH_beamT" connect="dh2630" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_492344" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2345" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2346" class="DH_beamT" connect="dh2631" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_502347" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2348" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2349" class="DH_beamT" connect="dh2632" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_512350" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2351" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2352" class="DH_beamT" connect="dh2633" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_522353" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2354" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2355" class="DH_beamT" connect="dh2634" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_532356" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2357" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2358" class="DH_beamT" connect="dh2635" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_542359" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2360" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2361" class="DH_beamT" connect="dh2636" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_552362" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2363" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2364" class="DH_beamT" connect="dh2637" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_562365" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2366" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2367" class="DH_beamT" connect="dh2638" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_572368" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2369" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2370" class="DH_beamT" connect="dh2639" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_582371" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2372" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2373" class="DH_beamT" connect="dh2640" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_592374" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2375" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2376" class="DH_beamT" connect="dh2641" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_602377" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2378" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2379" class="DH_beamT" connect="dh2642" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_612380" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2381" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2382" class="DH_beamT" connect="dh2643" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_622383" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2384" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2385" class="DH_beamT" connect="dh2644" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_632386" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2387" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2388" class="DH_beamT" connect="dh2645" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_642389" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2390" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2391" class="DH_beamT" connect="dh2646" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_652392" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2393" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2394" class="DH_beamT" connect="dh2647" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_662395" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2396" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2397" class="DH_beamT" connect="dh2648" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_672398" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2399" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2400" class="DH_beamT" connect="dh2649" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_682401" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2402" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2403" class="DH_beamT" connect="dh2650" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_692404" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2405" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2406" class="DH_beamT" connect="dh2651" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_702407" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2408" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2409" class="DH_beamT" connect="dh2652" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_712410" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2411" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2412" class="DH_beamT" connect="dh2653" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_722413" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2414" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2415" class="DH_beamT" connect="dh2654" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_732416" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2417" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2418" class="DH_beamT" connect="dh2655" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_742419" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2420" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2421" class="DH_beamT" connect="dh2656" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_752422" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2423" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2424" class="DH_beamT" connect="dh2657" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_762425" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2426" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2427" class="DH_beamT" connect="dh2658" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_772428" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2429" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2430" class="DH_beamT" connect="dh2659" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_782431" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2432" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2433" class="DH_beamT" connect="dh2660" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_792434" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2435" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2436" class="DH_beamT" connect="dh2661" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_802437" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2438" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2439" class="DH_beamT" connect="dh2662" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_812440" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2441" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2442" class="DH_beamT" connect="dh2663" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_822443" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2444" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2445" class="DH_beamT" connect="dh2664" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_832446" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2447" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2448" class="DH_beamT" connect="dh2665" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_842449" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2450" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2451" class="DH_beamT" connect="dh2666" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_852452" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2453" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2454" class="DH_beamT" connect="dh2667" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_862455" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2456" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2457" class="DH_beamT" connect="dh2668" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_872458" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2459" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2460" class="DH_beamT" connect="dh2669" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_882461" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2462" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2463" class="DH_beamT" connect="dh2670" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_892464" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2465" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2466" class="DH_beamT" connect="dh2671" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_902467" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2468" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2469" class="DH_beamT" connect="dh2672" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_912470" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2471" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2472" class="DH_beamT" connect="dh2673" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_922473" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2474" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2475" class="DH_beamT" connect="dh2674" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_932476" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2477" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2478" class="DH_beamT" connect="dh2675" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_942479" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2480" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2481" class="DH_beamT" connect="dh2676" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_952482" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2483" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2484" class="DH_beamT" connect="dh2677" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_962485" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2486" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2487" class="DH_beamT" connect="dh2678" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_972488" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2489" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2490" class="DH_beamT" connect="dh2679" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_982491" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2492" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2493" class="DH_beamT" connect="dh2680" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_992494" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2495" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2496" class="DH_beamT" connect="dh2681" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1002497" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2498" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2499" class="DH_beamT" connect="dh2682" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1012500" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2501" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2502" class="DH_beamT" connect="dh2683" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1022503" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2504" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2505" class="DH_beamT" connect="dh2684" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1032506" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2507" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2508" class="DH_beamT" connect="dh2685" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1042509" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2510" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2511" class="DH_beamT" connect="dh2686" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1052512" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2513" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2514" class="DH_beamT" connect="dh2687" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1062515" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2516" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2517" class="DH_beamT" connect="dh2688" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1072518" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2519" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2520" class="DH_beamT" connect="dh2689" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1082521" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2522" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2523" class="DH_beamT" connect="dh2690" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1092524" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2525" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2526" class="DH_beamT" connect="dh2691" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1102527" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2528" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2529" class="DH_beamT" connect="dh2692" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1112530" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2531" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2532" class="DH_beamT" connect="dh2693" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1122533" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2534" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2535" class="DH_beamT" connect="dh2694" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1132536" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2537" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2538" class="DH_beamT" connect="dh2695" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1142539" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2540" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2541" class="DH_beamT" connect="dh2696" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1152542" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2543" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2544" class="DH_beamT" connect="dh2697" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1162545" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2546" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2547" class="DH_beamT" connect="dh2698" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1172548" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2549" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2550" class="DH_beamT" connect="dh2699" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1182551" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2552" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2553" class="DH_beamT" connect="dh2700" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1192554" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2555" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2556" class="DH_beamT" connect="dh2701" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1202557" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2558" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2559" class="DH_beamT" connect="dh2702" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1212560" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2561" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2562" class="DH_beamT" connect="dh2703" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1222563" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2564" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2565" class="DH_beamT" connect="dh2704" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1232566" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2567" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2568" class="DH_beamT" connect="dh2705" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1242569" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2570" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2571" class="DH_beamT" connect="dh2706" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1252572" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2573" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2574" class="DH_beamT" connect="dh2707" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1262575" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2576" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2577" class="DH_beamT" connect="dh2708" type="output"/>
-                </workholder>
-            </step>
-            <step name="BeamFormer_1272578" node="node 4">
-                <workholder class="WH_Beam">
-                    <dataholder name="dh2579" class="DH_freqT" type="input"/>
-                    <dataholder name="dh2580" class="DH_beamT" connect="dh2709" type="output"/>
-                </workholder>
-            </step>
-            <step name="TransposeB_1372581" node="node 4">
-                <workholder class="WH_TransB">
-                    <dataholder name="dh2582" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2583" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2584" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2585" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2586" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2587" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2588" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2589" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2590" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2591" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2592" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2593" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2594" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2595" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2596" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2597" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2598" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2599" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2600" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2601" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2602" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2603" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2604" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2605" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2606" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2607" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2608" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2609" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2610" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2611" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2612" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2613" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2614" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2615" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2616" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2617" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2618" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2619" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2620" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2621" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2622" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2623" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2624" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2625" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2626" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2627" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2628" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2629" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2630" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2631" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2632" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2633" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2634" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2635" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2636" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2637" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2638" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2639" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2640" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2641" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2642" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2643" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2644" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2645" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2646" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2647" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2648" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2649" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2650" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2651" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2652" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2653" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2654" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2655" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2656" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2657" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2658" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2659" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2660" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2661" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2662" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2663" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2664" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2665" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2666" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2667" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2668" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2669" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2670" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2671" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2672" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2673" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2674" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2675" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2676" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2677" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2678" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2679" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2680" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2681" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2682" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2683" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2684" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2685" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2686" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2687" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2688" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2689" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2690" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2691" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2692" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2693" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2694" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2695" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2696" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2697" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2698" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2699" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2700" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2701" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2702" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2703" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2704" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2705" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2706" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2707" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2708" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2709" class="DH_beamT" type="input"/>
-                    <dataholder name="dh2710" class="DH_beam" connect="dh2039" type="output"/>
-                </workholder>
-            </step>
-        </simul>
-        <simul name="Data Processor_4_42711" node="node 0">
-            <workholder class="WH_DataProc">
-                <dataholder name="dh2712" class="DH_beam" connect="dh2733" type="input"/>
-                <dataholder name="dh2713" class="DH_beam" connect="dh2799" type="input"/>
-                <dataholder name="dh2714" class="DH_beam" connect="dh2865" type="input"/>
-                <dataholder name="dh2715" class="DH_beam" connect="dh2931" type="input"/>
-                <dataholder name="dh2716" class="DH_Corr" type="output"/>
-                <dataholder name="dh2717" class="DH_Corr" type="output"/>
-                <dataholder name="dh2718" class="DH_Corr" type="output"/>
-                <dataholder name="dh2719" class="DH_Corr" type="output"/>
-                <dataholder name="dh2720" class="DH_Corr" type="output"/>
-                <dataholder name="dh2721" class="DH_Corr" type="output"/>
-                <dataholder name="dh2722" class="DH_Corr" type="output"/>
-                <dataholder name="dh2723" class="DH_Corr" type="output"/>
-                <dataholder name="dh2724" class="DH_Corr" type="output"/>
-                <dataholder name="dh2725" class="DH_Corr" type="output"/>
-                <dataholder name="dh2726" class="DH_Corr" type="output"/>
-                <dataholder name="dh2727" class="DH_Corr" type="output"/>
-                <dataholder name="dh2728" class="DH_Corr" type="output"/>
-                <dataholder name="dh2729" class="DH_Corr" type="output"/>
-                <dataholder name="dh2730" class="DH_Corr" type="output"/>
-                <dataholder name="dh2731" class="DH_Corr" type="output"/>
-            </workholder>
-            <step name="CPInput_02732" node="node 0">
-                <workholder class="WH_CPInput">
-                    <dataholder name="dh2733" class="DH_beam" type="input"/>
-                    <dataholder name="dh2734" class="DH_BeamBand" connect="dh2997" type="output"/>
-                    <dataholder name="dh2735" class="DH_BeamBand" connect="dh3003" type="output"/>
-                    <dataholder name="dh2736" class="DH_BeamBand" connect="dh3009" type="output"/>
-                    <dataholder name="dh2737" class="DH_BeamBand" connect="dh3015" type="output"/>
-                    <dataholder name="dh2738" class="DH_BeamBand" connect="dh3021" type="output"/>
-                    <dataholder name="dh2739" class="DH_BeamBand" connect="dh3027" type="output"/>
-                    <dataholder name="dh2740" class="DH_BeamBand" connect="dh3033" type="output"/>
-                    <dataholder name="dh2741" class="DH_BeamBand" connect="dh3039" type="output"/>
-                    <dataholder name="dh2742" class="DH_BeamBand" connect="dh3045" type="output"/>
-                    <dataholder name="dh2743" class="DH_BeamBand" connect="dh3051" type="output"/>
-                    <dataholder name="dh2744" class="DH_BeamBand" connect="dh3057" type="output"/>
-                    <dataholder name="dh2745" class="DH_BeamBand" connect="dh3063" type="output"/>
-                    <dataholder name="dh2746" class="DH_BeamBand" connect="dh3069" type="output"/>
-                    <dataholder name="dh2747" class="DH_BeamBand" connect="dh3075" type="output"/>
-                    <dataholder name="dh2748" class="DH_BeamBand" connect="dh3081" type="output"/>
-                    <dataholder name="dh2749" class="DH_BeamBand" connect="dh3087" type="output"/>
-                    <dataholder name="dh2750" class="DH_BeamBand" connect="dh3093" type="output"/>
-                    <dataholder name="dh2751" class="DH_BeamBand" connect="dh3099" type="output"/>
-                    <dataholder name="dh2752" class="DH_BeamBand" connect="dh3105" type="output"/>
-                    <dataholder name="dh2753" class="DH_BeamBand" connect="dh3111" type="output"/>
-                    <dataholder name="dh2754" class="DH_BeamBand" connect="dh3117" type="output"/>
-                    <dataholder name="dh2755" class="DH_BeamBand" connect="dh3123" type="output"/>
-                    <dataholder name="dh2756" class="DH_BeamBand" connect="dh3129" type="output"/>
-                    <dataholder name="dh2757" class="DH_BeamBand" connect="dh3135" type="output"/>
-                    <dataholder name="dh2758" class="DH_BeamBand" connect="dh3141" type="output"/>
-                    <dataholder name="dh2759" class="DH_BeamBand" connect="dh3147" type="output"/>
-                    <dataholder name="dh2760" class="DH_BeamBand" connect="dh3153" type="output"/>
-                    <dataholder name="dh2761" class="DH_BeamBand" connect="dh3159" type="output"/>
-                    <dataholder name="dh2762" class="DH_BeamBand" connect="dh3165" type="output"/>
-                    <dataholder name="dh2763" class="DH_BeamBand" connect="dh3171" type="output"/>
-                    <dataholder name="dh2764" class="DH_BeamBand" connect="dh3177" type="output"/>
-                    <dataholder name="dh2765" class="DH_BeamBand" connect="dh3183" type="output"/>
-                    <dataholder name="dh2766" class="DH_BeamBand" connect="dh3189" type="output"/>
-                    <dataholder name="dh2767" class="DH_BeamBand" connect="dh3195" type="output"/>
-                    <dataholder name="dh2768" class="DH_BeamBand" connect="dh3201" type="output"/>
-                    <dataholder name="dh2769" class="DH_BeamBand" connect="dh3207" type="output"/>
-                    <dataholder name="dh2770" class="DH_BeamBand" connect="dh3213" type="output"/>
-                    <dataholder name="dh2771" class="DH_BeamBand" connect="dh3219" type="output"/>
-                    <dataholder name="dh2772" class="DH_BeamBand" connect="dh3225" type="output"/>
-                    <dataholder name="dh2773" class="DH_BeamBand" connect="dh3231" type="output"/>
-                    <dataholder name="dh2774" class="DH_BeamBand" connect="dh3237" type="output"/>
-                    <dataholder name="dh2775" class="DH_BeamBand" connect="dh3243" type="output"/>
-                    <dataholder name="dh2776" class="DH_BeamBand" connect="dh3249" type="output"/>
-                    <dataholder name="dh2777" class="DH_BeamBand" connect="dh3255" type="output"/>
-                    <dataholder name="dh2778" class="DH_BeamBand" connect="dh3261" type="output"/>
-                    <dataholder name="dh2779" class="DH_BeamBand" connect="dh3267" type="output"/>
-                    <dataholder name="dh2780" class="DH_BeamBand" connect="dh3273" type="output"/>
-                    <dataholder name="dh2781" class="DH_BeamBand" connect="dh3279" type="output"/>
-                    <dataholder name="dh2782" class="DH_BeamBand" connect="dh3285" type="output"/>
-                    <dataholder name="dh2783" class="DH_BeamBand" connect="dh3291" type="output"/>
-                    <dataholder name="dh2784" class="DH_BeamBand" connect="dh3297" type="output"/>
-                    <dataholder name="dh2785" class="DH_BeamBand" connect="dh3303" type="output"/>
-                    <dataholder name="dh2786" class="DH_BeamBand" connect="dh3309" type="output"/>
-                    <dataholder name="dh2787" class="DH_BeamBand" connect="dh3315" type="output"/>
-                    <dataholder name="dh2788" class="DH_BeamBand" connect="dh3321" type="output"/>
-                    <dataholder name="dh2789" class="DH_BeamBand" connect="dh3327" type="output"/>
-                    <dataholder name="dh2790" class="DH_BeamBand" connect="dh3333" type="output"/>
-                    <dataholder name="dh2791" class="DH_BeamBand" connect="dh3339" type="output"/>
-                    <dataholder name="dh2792" class="DH_BeamBand" connect="dh3345" type="output"/>
-                    <dataholder name="dh2793" class="DH_BeamBand" connect="dh3351" type="output"/>
-                    <dataholder name="dh2794" class="DH_BeamBand" connect="dh3357" type="output"/>
-                    <dataholder name="dh2795" class="DH_BeamBand" connect="dh3363" type="output"/>
-                    <dataholder name="dh2796" class="DH_BeamBand" connect="dh3369" type="output"/>
-                    <dataholder name="dh2797" class="DH_BeamBand" connect="dh3375" type="output"/>
-                </workholder>
-            </step>
-            <step name="CPInput_12798" node="node 0">
-                <workholder class="WH_CPInput">
-                    <dataholder name="dh2799" class="DH_beam" type="input"/>
-                    <dataholder name="dh2800" class="DH_BeamBand" connect="dh2998" type="output"/>
-                    <dataholder name="dh2801" class="DH_BeamBand" connect="dh3004" type="output"/>
-                    <dataholder name="dh2802" class="DH_BeamBand" connect="dh3010" type="output"/>
-                    <dataholder name="dh2803" class="DH_BeamBand" connect="dh3016" type="output"/>
-                    <dataholder name="dh2804" class="DH_BeamBand" connect="dh3022" type="output"/>
-                    <dataholder name="dh2805" class="DH_BeamBand" connect="dh3028" type="output"/>
-                    <dataholder name="dh2806" class="DH_BeamBand" connect="dh3034" type="output"/>
-                    <dataholder name="dh2807" class="DH_BeamBand" connect="dh3040" type="output"/>
-                    <dataholder name="dh2808" class="DH_BeamBand" connect="dh3046" type="output"/>
-                    <dataholder name="dh2809" class="DH_BeamBand" connect="dh3052" type="output"/>
-                    <dataholder name="dh2810" class="DH_BeamBand" connect="dh3058" type="output"/>
-                    <dataholder name="dh2811" class="DH_BeamBand" connect="dh3064" type="output"/>
-                    <dataholder name="dh2812" class="DH_BeamBand" connect="dh3070" type="output"/>
-                    <dataholder name="dh2813" class="DH_BeamBand" connect="dh3076" type="output"/>
-                    <dataholder name="dh2814" class="DH_BeamBand" connect="dh3082" type="output"/>
-                    <dataholder name="dh2815" class="DH_BeamBand" connect="dh3088" type="output"/>
-                    <dataholder name="dh2816" class="DH_BeamBand" connect="dh3094" type="output"/>
-                    <dataholder name="dh2817" class="DH_BeamBand" connect="dh3100" type="output"/>
-                    <dataholder name="dh2818" class="DH_BeamBand" connect="dh3106" type="output"/>
-                    <dataholder name="dh2819" class="DH_BeamBand" connect="dh3112" type="output"/>
-                    <dataholder name="dh2820" class="DH_BeamBand" connect="dh3118" type="output"/>
-                    <dataholder name="dh2821" class="DH_BeamBand" connect="dh3124" type="output"/>
-                    <dataholder name="dh2822" class="DH_BeamBand" connect="dh3130" type="output"/>
-                    <dataholder name="dh2823" class="DH_BeamBand" connect="dh3136" type="output"/>
-                    <dataholder name="dh2824" class="DH_BeamBand" connect="dh3142" type="output"/>
-                    <dataholder name="dh2825" class="DH_BeamBand" connect="dh3148" type="output"/>
-                    <dataholder name="dh2826" class="DH_BeamBand" connect="dh3154" type="output"/>
-                    <dataholder name="dh2827" class="DH_BeamBand" connect="dh3160" type="output"/>
-                    <dataholder name="dh2828" class="DH_BeamBand" connect="dh3166" type="output"/>
-                    <dataholder name="dh2829" class="DH_BeamBand" connect="dh3172" type="output"/>
-                    <dataholder name="dh2830" class="DH_BeamBand" connect="dh3178" type="output"/>
-                    <dataholder name="dh2831" class="DH_BeamBand" connect="dh3184" type="output"/>
-                    <dataholder name="dh2832" class="DH_BeamBand" connect="dh3190" type="output"/>
-                    <dataholder name="dh2833" class="DH_BeamBand" connect="dh3196" type="output"/>
-                    <dataholder name="dh2834" class="DH_BeamBand" connect="dh3202" type="output"/>
-                    <dataholder name="dh2835" class="DH_BeamBand" connect="dh3208" type="output"/>
-                    <dataholder name="dh2836" class="DH_BeamBand" connect="dh3214" type="output"/>
-                    <dataholder name="dh2837" class="DH_BeamBand" connect="dh3220" type="output"/>
-                    <dataholder name="dh2838" class="DH_BeamBand" connect="dh3226" type="output"/>
-                    <dataholder name="dh2839" class="DH_BeamBand" connect="dh3232" type="output"/>
-                    <dataholder name="dh2840" class="DH_BeamBand" connect="dh3238" type="output"/>
-                    <dataholder name="dh2841" class="DH_BeamBand" connect="dh3244" type="output"/>
-                    <dataholder name="dh2842" class="DH_BeamBand" connect="dh3250" type="output"/>
-                    <dataholder name="dh2843" class="DH_BeamBand" connect="dh3256" type="output"/>
-                    <dataholder name="dh2844" class="DH_BeamBand" connect="dh3262" type="output"/>
-                    <dataholder name="dh2845" class="DH_BeamBand" connect="dh3268" type="output"/>
-                    <dataholder name="dh2846" class="DH_BeamBand" connect="dh3274" type="output"/>
-                    <dataholder name="dh2847" class="DH_BeamBand" connect="dh3280" type="output"/>
-                    <dataholder name="dh2848" class="DH_BeamBand" connect="dh3286" type="output"/>
-                    <dataholder name="dh2849" class="DH_BeamBand" connect="dh3292" type="output"/>
-                    <dataholder name="dh2850" class="DH_BeamBand" connect="dh3298" type="output"/>
-                    <dataholder name="dh2851" class="DH_BeamBand" connect="dh3304" type="output"/>
-                    <dataholder name="dh2852" class="DH_BeamBand" connect="dh3310" type="output"/>
-                    <dataholder name="dh2853" class="DH_BeamBand" connect="dh3316" type="output"/>
-                    <dataholder name="dh2854" class="DH_BeamBand" connect="dh3322" type="output"/>
-                    <dataholder name="dh2855" class="DH_BeamBand" connect="dh3328" type="output"/>
-                    <dataholder name="dh2856" class="DH_BeamBand" connect="dh3334" type="output"/>
-                    <dataholder name="dh2857" class="DH_BeamBand" connect="dh3340" type="output"/>
-                    <dataholder name="dh2858" class="DH_BeamBand" connect="dh3346" type="output"/>
-                    <dataholder name="dh2859" class="DH_BeamBand" connect="dh3352" type="output"/>
-                    <dataholder name="dh2860" class="DH_BeamBand" connect="dh3358" type="output"/>
-                    <dataholder name="dh2861" class="DH_BeamBand" connect="dh3364" type="output"/>
-                    <dataholder name="dh2862" class="DH_BeamBand" connect="dh3370" type="output"/>
-                    <dataholder name="dh2863" class="DH_BeamBand" connect="dh3376" type="output"/>
-                </workholder>
-            </step>
-            <step name="CPInput_22864" node="node 0">
-                <workholder class="WH_CPInput">
-                    <dataholder name="dh2865" class="DH_beam" type="input"/>
-                    <dataholder name="dh2866" class="DH_BeamBand" connect="dh2999" type="output"/>
-                    <dataholder name="dh2867" class="DH_BeamBand" connect="dh3005" type="output"/>
-                    <dataholder name="dh2868" class="DH_BeamBand" connect="dh3011" type="output"/>
-                    <dataholder name="dh2869" class="DH_BeamBand" connect="dh3017" type="output"/>
-                    <dataholder name="dh2870" class="DH_BeamBand" connect="dh3023" type="output"/>
-                    <dataholder name="dh2871" class="DH_BeamBand" connect="dh3029" type="output"/>
-                    <dataholder name="dh2872" class="DH_BeamBand" connect="dh3035" type="output"/>
-                    <dataholder name="dh2873" class="DH_BeamBand" connect="dh3041" type="output"/>
-                    <dataholder name="dh2874" class="DH_BeamBand" connect="dh3047" type="output"/>
-                    <dataholder name="dh2875" class="DH_BeamBand" connect="dh3053" type="output"/>
-                    <dataholder name="dh2876" class="DH_BeamBand" connect="dh3059" type="output"/>
-                    <dataholder name="dh2877" class="DH_BeamBand" connect="dh3065" type="output"/>
-                    <dataholder name="dh2878" class="DH_BeamBand" connect="dh3071" type="output"/>
-                    <dataholder name="dh2879" class="DH_BeamBand" connect="dh3077" type="output"/>
-                    <dataholder name="dh2880" class="DH_BeamBand" connect="dh3083" type="output"/>
-                    <dataholder name="dh2881" class="DH_BeamBand" connect="dh3089" type="output"/>
-                    <dataholder name="dh2882" class="DH_BeamBand" connect="dh3095" type="output"/>
-                    <dataholder name="dh2883" class="DH_BeamBand" connect="dh3101" type="output"/>
-                    <dataholder name="dh2884" class="DH_BeamBand" connect="dh3107" type="output"/>
-                    <dataholder name="dh2885" class="DH_BeamBand" connect="dh3113" type="output"/>
-                    <dataholder name="dh2886" class="DH_BeamBand" connect="dh3119" type="output"/>
-                    <dataholder name="dh2887" class="DH_BeamBand" connect="dh3125" type="output"/>
-                    <dataholder name="dh2888" class="DH_BeamBand" connect="dh3131" type="output"/>
-                    <dataholder name="dh2889" class="DH_BeamBand" connect="dh3137" type="output"/>
-                    <dataholder name="dh2890" class="DH_BeamBand" connect="dh3143" type="output"/>
-                    <dataholder name="dh2891" class="DH_BeamBand" connect="dh3149" type="output"/>
-                    <dataholder name="dh2892" class="DH_BeamBand" connect="dh3155" type="output"/>
-                    <dataholder name="dh2893" class="DH_BeamBand" connect="dh3161" type="output"/>
-                    <dataholder name="dh2894" class="DH_BeamBand" connect="dh3167" type="output"/>
-                    <dataholder name="dh2895" class="DH_BeamBand" connect="dh3173" type="output"/>
-                    <dataholder name="dh2896" class="DH_BeamBand" connect="dh3179" type="output"/>
-                    <dataholder name="dh2897" class="DH_BeamBand" connect="dh3185" type="output"/>
-                    <dataholder name="dh2898" class="DH_BeamBand" connect="dh3191" type="output"/>
-                    <dataholder name="dh2899" class="DH_BeamBand" connect="dh3197" type="output"/>
-                    <dataholder name="dh2900" class="DH_BeamBand" connect="dh3203" type="output"/>
-                    <dataholder name="dh2901" class="DH_BeamBand" connect="dh3209" type="output"/>
-                    <dataholder name="dh2902" class="DH_BeamBand" connect="dh3215" type="output"/>
-                    <dataholder name="dh2903" class="DH_BeamBand" connect="dh3221" type="output"/>
-                    <dataholder name="dh2904" class="DH_BeamBand" connect="dh3227" type="output"/>
-                    <dataholder name="dh2905" class="DH_BeamBand" connect="dh3233" type="output"/>
-                    <dataholder name="dh2906" class="DH_BeamBand" connect="dh3239" type="output"/>
-                    <dataholder name="dh2907" class="DH_BeamBand" connect="dh3245" type="output"/>
-                    <dataholder name="dh2908" class="DH_BeamBand" connect="dh3251" type="output"/>
-                    <dataholder name="dh2909" class="DH_BeamBand" connect="dh3257" type="output"/>
-                    <dataholder name="dh2910" class="DH_BeamBand" connect="dh3263" type="output"/>
-                    <dataholder name="dh2911" class="DH_BeamBand" connect="dh3269" type="output"/>
-                    <dataholder name="dh2912" class="DH_BeamBand" connect="dh3275" type="output"/>
-                    <dataholder name="dh2913" class="DH_BeamBand" connect="dh3281" type="output"/>
-                    <dataholder name="dh2914" class="DH_BeamBand" connect="dh3287" type="output"/>
-                    <dataholder name="dh2915" class="DH_BeamBand" connect="dh3293" type="output"/>
-                    <dataholder name="dh2916" class="DH_BeamBand" connect="dh3299" type="output"/>
-                    <dataholder name="dh2917" class="DH_BeamBand" connect="dh3305" type="output"/>
-                    <dataholder name="dh2918" class="DH_BeamBand" connect="dh3311" type="output"/>
-                    <dataholder name="dh2919" class="DH_BeamBand" connect="dh3317" type="output"/>
-                    <dataholder name="dh2920" class="DH_BeamBand" connect="dh3323" type="output"/>
-                    <dataholder name="dh2921" class="DH_BeamBand" connect="dh3329" type="output"/>
-                    <dataholder name="dh2922" class="DH_BeamBand" connect="dh3335" type="output"/>
-                    <dataholder name="dh2923" class="DH_BeamBand" connect="dh3341" type="output"/>
-                    <dataholder name="dh2924" class="DH_BeamBand" connect="dh3347" type="output"/>
-                    <dataholder name="dh2925" class="DH_BeamBand" connect="dh3353" type="output"/>
-                    <dataholder name="dh2926" class="DH_BeamBand" connect="dh3359" type="output"/>
-                    <dataholder name="dh2927" class="DH_BeamBand" connect="dh3365" type="output"/>
-                    <dataholder name="dh2928" class="DH_BeamBand" connect="dh3371" type="output"/>
-                    <dataholder name="dh2929" class="DH_BeamBand" connect="dh3377" type="output"/>
-                </workholder>
-            </step>
-            <step name="CPInput_32930" node="node 0">
-                <workholder class="WH_CPInput">
-                    <dataholder name="dh2931" class="DH_beam" type="input"/>
-                    <dataholder name="dh2932" class="DH_BeamBand" connect="dh3000" type="output"/>
-                    <dataholder name="dh2933" class="DH_BeamBand" connect="dh3006" type="output"/>
-                    <dataholder name="dh2934" class="DH_BeamBand" connect="dh3012" type="output"/>
-                    <dataholder name="dh2935" class="DH_BeamBand" connect="dh3018" type="output"/>
-                    <dataholder name="dh2936" class="DH_BeamBand" connect="dh3024" type="output"/>
-                    <dataholder name="dh2937" class="DH_BeamBand" connect="dh3030" type="output"/>
-                    <dataholder name="dh2938" class="DH_BeamBand" connect="dh3036" type="output"/>
-                    <dataholder name="dh2939" class="DH_BeamBand" connect="dh3042" type="output"/>
-                    <dataholder name="dh2940" class="DH_BeamBand" connect="dh3048" type="output"/>
-                    <dataholder name="dh2941" class="DH_BeamBand" connect="dh3054" type="output"/>
-                    <dataholder name="dh2942" class="DH_BeamBand" connect="dh3060" type="output"/>
-                    <dataholder name="dh2943" class="DH_BeamBand" connect="dh3066" type="output"/>
-                    <dataholder name="dh2944" class="DH_BeamBand" connect="dh3072" type="output"/>
-                    <dataholder name="dh2945" class="DH_BeamBand" connect="dh3078" type="output"/>
-                    <dataholder name="dh2946" class="DH_BeamBand" connect="dh3084" type="output"/>
-                    <dataholder name="dh2947" class="DH_BeamBand" connect="dh3090" type="output"/>
-                    <dataholder name="dh2948" class="DH_BeamBand" connect="dh3096" type="output"/>
-                    <dataholder name="dh2949" class="DH_BeamBand" connect="dh3102" type="output"/>
-                    <dataholder name="dh2950" class="DH_BeamBand" connect="dh3108" type="output"/>
-                    <dataholder name="dh2951" class="DH_BeamBand" connect="dh3114" type="output"/>
-                    <dataholder name="dh2952" class="DH_BeamBand" connect="dh3120" type="output"/>
-                    <dataholder name="dh2953" class="DH_BeamBand" connect="dh3126" type="output"/>
-                    <dataholder name="dh2954" class="DH_BeamBand" connect="dh3132" type="output"/>
-                    <dataholder name="dh2955" class="DH_BeamBand" connect="dh3138" type="output"/>
-                    <dataholder name="dh2956" class="DH_BeamBand" connect="dh3144" type="output"/>
-                    <dataholder name="dh2957" class="DH_BeamBand" connect="dh3150" type="output"/>
-                    <dataholder name="dh2958" class="DH_BeamBand" connect="dh3156" type="output"/>
-                    <dataholder name="dh2959" class="DH_BeamBand" connect="dh3162" type="output"/>
-                    <dataholder name="dh2960" class="DH_BeamBand" connect="dh3168" type="output"/>
-                    <dataholder name="dh2961" class="DH_BeamBand" connect="dh3174" type="output"/>
-                    <dataholder name="dh2962" class="DH_BeamBand" connect="dh3180" type="output"/>
-                    <dataholder name="dh2963" class="DH_BeamBand" connect="dh3186" type="output"/>
-                    <dataholder name="dh2964" class="DH_BeamBand" connect="dh3192" type="output"/>
-                    <dataholder name="dh2965" class="DH_BeamBand" connect="dh3198" type="output"/>
-                    <dataholder name="dh2966" class="DH_BeamBand" connect="dh3204" type="output"/>
-                    <dataholder name="dh2967" class="DH_BeamBand" connect="dh3210" type="output"/>
-                    <dataholder name="dh2968" class="DH_BeamBand" connect="dh3216" type="output"/>
-                    <dataholder name="dh2969" class="DH_BeamBand" connect="dh3222" type="output"/>
-                    <dataholder name="dh2970" class="DH_BeamBand" connect="dh3228" type="output"/>
-                    <dataholder name="dh2971" class="DH_BeamBand" connect="dh3234" type="output"/>
-                    <dataholder name="dh2972" class="DH_BeamBand" connect="dh3240" type="output"/>
-                    <dataholder name="dh2973" class="DH_BeamBand" connect="dh3246" type="output"/>
-                    <dataholder name="dh2974" class="DH_BeamBand" connect="dh3252" type="output"/>
-                    <dataholder name="dh2975" class="DH_BeamBand" connect="dh3258" type="output"/>
-                    <dataholder name="dh2976" class="DH_BeamBand" connect="dh3264" type="output"/>
-                    <dataholder name="dh2977" class="DH_BeamBand" connect="dh3270" type="output"/>
-                    <dataholder name="dh2978" class="DH_BeamBand" connect="dh3276" type="output"/>
-                    <dataholder name="dh2979" class="DH_BeamBand" connect="dh3282" type="output"/>
-                    <dataholder name="dh2980" class="DH_BeamBand" connect="dh3288" type="output"/>
-                    <dataholder name="dh2981" class="DH_BeamBand" connect="dh3294" type="output"/>
-                    <dataholder name="dh2982" class="DH_BeamBand" connect="dh3300" type="output"/>
-                    <dataholder name="dh2983" class="DH_BeamBand" connect="dh3306" type="output"/>
-                    <dataholder name="dh2984" class="DH_BeamBand" connect="dh3312" type="output"/>
-                    <dataholder name="dh2985" class="DH_BeamBand" connect="dh3318" type="output"/>
-                    <dataholder name="dh2986" class="DH_BeamBand" connect="dh3324" type="output"/>
-                    <dataholder name="dh2987" class="DH_BeamBand" connect="dh3330" type="output"/>
-                    <dataholder name="dh2988" class="DH_BeamBand" connect="dh3336" type="output"/>
-                    <dataholder name="dh2989" class="DH_BeamBand" connect="dh3342" type="output"/>
-                    <dataholder name="dh2990" class="DH_BeamBand" connect="dh3348" type="output"/>
-                    <dataholder name="dh2991" class="DH_BeamBand" connect="dh3354" type="output"/>
-                    <dataholder name="dh2992" class="DH_BeamBand" connect="dh3360" type="output"/>
-                    <dataholder name="dh2993" class="DH_BeamBand" connect="dh3366" type="output"/>
-                    <dataholder name="dh2994" class="DH_BeamBand" connect="dh3372" type="output"/>
-                    <dataholder name="dh2995" class="DH_BeamBand" connect="dh3378" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_42996" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh2997" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh2998" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh2999" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3000" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3001" class="DH_Corr" connect="dh3381" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_53002" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3003" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3004" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3005" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3006" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3007" class="DH_Corr" connect="dh3382" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_63008" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3009" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3010" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3011" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3012" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3013" class="DH_Corr" connect="dh3383" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_73014" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3015" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3016" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3017" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3018" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3019" class="DH_Corr" connect="dh3384" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_83020" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3021" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3022" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3023" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3024" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3025" class="DH_Corr" connect="dh3385" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_93026" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3027" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3028" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3029" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3030" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3031" class="DH_Corr" connect="dh3386" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_103032" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3033" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3034" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3035" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3036" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3037" class="DH_Corr" connect="dh3387" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_113038" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3039" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3040" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3041" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3042" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3043" class="DH_Corr" connect="dh3388" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_123044" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3045" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3046" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3047" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3048" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3049" class="DH_Corr" connect="dh3389" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_133050" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3051" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3052" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3053" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3054" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3055" class="DH_Corr" connect="dh3390" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_143056" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3057" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3058" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3059" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3060" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3061" class="DH_Corr" connect="dh3391" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_153062" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3063" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3064" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3065" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3066" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3067" class="DH_Corr" connect="dh3392" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_163068" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3069" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3070" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3071" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3072" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3073" class="DH_Corr" connect="dh3393" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_173074" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3075" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3076" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3077" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3078" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3079" class="DH_Corr" connect="dh3394" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_183080" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3081" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3082" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3083" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3084" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3085" class="DH_Corr" connect="dh3395" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_193086" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3087" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3088" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3089" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3090" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3091" class="DH_Corr" connect="dh3396" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_203092" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3093" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3094" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3095" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3096" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3097" class="DH_Corr" connect="dh3397" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_213098" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3099" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3100" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3101" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3102" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3103" class="DH_Corr" connect="dh3398" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_223104" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3105" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3106" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3107" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3108" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3109" class="DH_Corr" connect="dh3399" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_233110" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3111" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3112" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3113" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3114" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3115" class="DH_Corr" connect="dh3400" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_243116" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3117" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3118" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3119" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3120" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3121" class="DH_Corr" connect="dh3401" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_253122" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3123" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3124" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3125" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3126" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3127" class="DH_Corr" connect="dh3402" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_263128" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3129" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3130" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3131" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3132" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3133" class="DH_Corr" connect="dh3403" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_273134" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3135" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3136" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3137" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3138" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3139" class="DH_Corr" connect="dh3404" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_283140" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3141" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3142" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3143" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3144" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3145" class="DH_Corr" connect="dh3405" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_293146" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3147" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3148" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3149" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3150" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3151" class="DH_Corr" connect="dh3406" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_303152" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3153" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3154" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3155" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3156" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3157" class="DH_Corr" connect="dh3407" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_313158" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3159" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3160" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3161" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3162" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3163" class="DH_Corr" connect="dh3408" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_323164" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3165" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3166" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3167" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3168" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3169" class="DH_Corr" connect="dh3409" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_333170" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3171" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3172" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3173" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3174" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3175" class="DH_Corr" connect="dh3410" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_343176" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3177" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3178" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3179" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3180" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3181" class="DH_Corr" connect="dh3411" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_353182" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3183" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3184" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3185" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3186" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3187" class="DH_Corr" connect="dh3412" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_363188" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3189" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3190" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3191" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3192" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3193" class="DH_Corr" connect="dh3413" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_373194" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3195" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3196" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3197" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3198" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3199" class="DH_Corr" connect="dh3414" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_383200" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3201" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3202" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3203" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3204" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3205" class="DH_Corr" connect="dh3415" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_393206" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3207" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3208" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3209" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3210" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3211" class="DH_Corr" connect="dh3416" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_403212" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3213" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3214" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3215" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3216" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3217" class="DH_Corr" connect="dh3417" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_413218" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3219" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3220" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3221" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3222" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3223" class="DH_Corr" connect="dh3418" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_423224" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3225" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3226" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3227" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3228" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3229" class="DH_Corr" connect="dh3419" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_433230" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3231" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3232" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3233" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3234" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3235" class="DH_Corr" connect="dh3420" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_443236" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3237" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3238" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3239" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3240" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3241" class="DH_Corr" connect="dh3421" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_453242" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3243" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3244" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3245" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3246" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3247" class="DH_Corr" connect="dh3422" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_463248" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3249" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3250" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3251" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3252" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3253" class="DH_Corr" connect="dh3423" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_473254" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3255" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3256" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3257" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3258" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3259" class="DH_Corr" connect="dh3424" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_483260" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3261" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3262" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3263" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3264" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3265" class="DH_Corr" connect="dh3425" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_493266" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3267" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3268" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3269" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3270" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3271" class="DH_Corr" connect="dh3426" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_503272" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3273" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3274" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3275" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3276" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3277" class="DH_Corr" connect="dh3427" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_513278" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3279" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3280" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3281" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3282" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3283" class="DH_Corr" connect="dh3428" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_523284" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3285" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3286" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3287" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3288" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3289" class="DH_Corr" connect="dh3429" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_533290" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3291" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3292" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3293" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3294" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3295" class="DH_Corr" connect="dh3430" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_543296" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3297" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3298" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3299" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3300" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3301" class="DH_Corr" connect="dh3431" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_553302" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3303" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3304" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3305" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3306" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3307" class="DH_Corr" connect="dh3432" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_563308" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3309" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3310" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3311" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3312" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3313" class="DH_Corr" connect="dh3433" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_573314" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3315" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3316" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3317" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3318" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3319" class="DH_Corr" connect="dh3434" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_583320" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3321" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3322" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3323" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3324" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3325" class="DH_Corr" connect="dh3435" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_593326" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3327" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3328" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3329" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3330" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3331" class="DH_Corr" connect="dh3436" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_603332" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3333" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3334" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3335" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3336" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3337" class="DH_Corr" connect="dh3437" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_613338" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3339" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3340" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3341" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3342" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3343" class="DH_Corr" connect="dh3438" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_623344" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3345" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3346" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3347" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3348" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3349" class="DH_Corr" connect="dh3439" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_633350" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3351" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3352" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3353" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3354" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3355" class="DH_Corr" connect="dh3440" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_0_643356" node="node 1">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3357" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3358" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3359" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3360" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3361" class="DH_Corr" connect="dh3441" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_1_653362" node="node 2">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3363" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3364" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3365" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3366" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3367" class="DH_Corr" connect="dh3442" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_2_663368" node="node 3">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3369" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3370" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3371" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3372" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3373" class="DH_Corr" connect="dh3443" type="output"/>
-                </workholder>
-            </step>
-            <step name="Correlator_3_673374" node="node 4">
-                <workholder class="WH_Corr">
-                    <dataholder name="dh3375" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3376" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3377" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3378" class="DH_BeamBand" type="input"/>
-                    <dataholder name="dh3379" class="DH_Corr" connect="dh3444" type="output"/>
-                </workholder>
-            </step>
-            <step name="MakeMS_683380" node="node 0">
-                <workholder class="WH_MakeMS">
-                    <dataholder name="dh3381" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3382" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3383" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3384" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3385" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3386" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3387" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3388" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3389" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3390" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3391" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3392" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3393" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3394" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3395" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3396" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3397" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3398" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3399" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3400" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3401" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3402" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3403" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3404" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3405" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3406" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3407" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3408" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3409" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3410" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3411" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3412" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3413" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3414" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3415" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3416" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3417" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3418" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3419" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3420" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3421" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3422" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3423" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3424" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3425" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3426" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3427" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3428" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3429" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3430" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3431" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3432" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3433" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3434" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3435" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3436" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3437" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3438" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3439" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3440" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3441" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3442" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3443" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3444" class="DH_Corr" type="input"/>
-                    <dataholder name="dh3445" class="DH_Empty" type="output"/>
-                </workholder>
-            </step>
-        </simul>
-    </simul>
-</basesim>
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/BaseSimTreeModel.java b/support/tools/BaseSimGUI/src/org/astron/basesim/BaseSimTreeModel.java
deleted file mode 100644
index cf524da06a1afc8d2057842a7cfdc8f344efe18a..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/BaseSimTreeModel.java
+++ /dev/null
@@ -1,171 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Class BaseSimTreeModel
- * Description: TreeModel that maps a Graph composite tree to a BaseSim tree.
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.Vector;
-import javax.swing.tree.*;
-import javax.swing.event.*;
-
-
-/**
- * Model that a JTree calls on to draw its nodes. This model can also be
- * used to translate a Graph hierarchy to a LofarSim hierarchy. The difference
- * between these two is the composition of a Step.
- */
-public class BaseSimTreeModel implements TreeModel {
-  String altRoot = new String ("No diagram loaded");
-  GraphDiagram _diagram;
-  private Vector treeModelListeners = new Vector();
-
-  public BaseSimTreeModel(GraphDiagram diagram) {
-    _diagram = diagram;
-  }
-  public void setGraphDiagram(GraphDiagram diagram) {
-    GraphDiagram oldDiagram = _diagram;
-    _diagram = diagram;
-    if (oldDiagram == null) fireTreeStructureChanged(altRoot);
-    else fireTreeStructureChanged(oldDiagram);
-  }
-  public GraphDiagram getGraphDiagram() { return _diagram; }
-  public Object getRoot() {
-    if (_diagram != null) return _diagram;
-    else return altRoot;
-  }
-  public Object getChild(Object parent, int index) {
-    if (parent instanceof GraphSimul) {
-      GraphSimul gSimul = (GraphSimul)parent;
-      if ((index == 0) && gSimul.hasWorkHolder()) {
-        // return WorkHolder (if it has one)
-        return gSimul.getWorkHolder();
-      }
-      GraphComposite gComp = (GraphComposite)gSimul.getGraph(1);
-      if (gSimul.hasWorkHolder()) return gComp.getGraph(index-1);
-      else return gComp.getGraph(index);
-    }
-    if (parent instanceof GraphStep) {
-      // a Step has 0 or 1 WorkHolder(s)
-      GraphStep gStep = (GraphStep)parent;
-      return gStep.getWorkHolder();
-    }
-    if (parent instanceof GraphWorkHolder) {
-      // pretend that the Workholder contains the DataHolders
-      GraphWorkHolder gWorkHolder = (GraphWorkHolder)parent;
-      GraphStep gStepParent = (GraphStep)gWorkHolder.getOwner().getOwner();
-      GraphComposite inDhComp =
-        (GraphComposite)gStepParent.getGraph(0);      // input GraphDataHolders
-      GraphComposite outDhComp =
-        (GraphComposite)gStepParent.getGraph(2);      // output GraphDataHolders
-      if (inDhComp.numberOfGraphs() > index) {
-        return inDhComp.getGraph(index);
-      } else return outDhComp.getGraph(index-inDhComp.numberOfGraphs());
-    }
-    System.err.println("Cannot resolve child (" + parent
-                      + ", index "+index+") in BaseSimTreeModel.getChild()");
-    return null;
-  }
-
-  public int getChildCount(Object parent) {
-    int count=0;
-    if (parent instanceof GraphSimul) {
-      GraphSimul gSimul = (GraphSimul)parent;
-      count += gSimul.numberOfSteps();
-      count += (gSimul.hasWorkHolder()) ? 1 : 0;
-      return count;
-    }
-    if (parent instanceof GraphStep) {
-      GraphStep gStep = (GraphStep)parent;
-      return  (gStep.hasWorkHolder()) ? 1 : 0;
-    }
-    if (parent instanceof GraphWorkHolder) {
-      GraphWorkHolder gWorkHolder = (GraphWorkHolder)parent;
-      GraphStep gStepParent = (GraphStep)gWorkHolder.getOwner().getOwner();
-      count += gStepParent.nrInputDataHolders();
-      count += gStepParent.nrOutputDataHolders();
-      return count;
-    }
-    return 0;
-  }
-
-  public boolean isLeaf(Object node) {
-    if (node instanceof GraphWorkHolder) return false;
-    if (node instanceof GraphComposite) return false;
-    return true;
-  }
-
-  public void valueForPathChanged(TreePath path, Object newValue) {
-    /**@todo: Implement this javax.swing.tree.TreeModel method*/
-    throw new java.lang.UnsupportedOperationException("Method valueForPathChanged() not yet implemented.");
-  }
-
-  public int getIndexOfChild(Object parent, Object child) {
-    if (parent instanceof GraphSimul) {
-      GraphSimul gSimul = (GraphSimul)parent;
-      if (child instanceof GraphWorkHolder) return 0;
-      for (int i=0; i<gSimul.numberOfSteps(); i++) {
-        if (child == gSimul.getStep(i)) {
-          return (gSimul.hasWorkHolder()) ? i+1 : i;
-        }
-      }
-    }
-    if (parent instanceof GraphStep) return 0;
-    if (parent instanceof GraphWorkHolder) {
-      GraphWorkHolder gWorkHolder = (GraphWorkHolder)parent;
-      GraphStep gStepParent = (GraphStep)gWorkHolder.getOwner().getOwner();
-      GraphDataHolder gInDH[] = gStepParent.getInputDataHolders();
-      for (int i=0; i<gInDH.length; i++) {
-        if (gInDH[i] == child) return i;
-      }
-      GraphDataHolder gOutDH[] = gStepParent.getOutputDataHolders();
-      for (int i=0; i<gOutDH.length; i++) {
-        if (gOutDH[i] == child) return i+gInDH.length;
-      }
-    }
-    System.err.println("Child not found in BaseSimTreeModel.getIndexOfChild()");
-    return -1;
-  }
-
-  public void addTreeModelListener(TreeModelListener l) {
-    treeModelListeners.add(l);
-  }
-
-  public void removeTreeModelListener(TreeModelListener l) {
-    treeModelListeners.remove(l);
-  }
-
-  protected void fireTreeStructureChanged(Object oldRoot) {
-    int len = treeModelListeners.size();
-    TreeModelEvent e = new TreeModelEvent(this,new Object[] {oldRoot});
-    for (int i = 0; i < len; i++) {
-      ((TreeModelListener)treeModelListeners.elementAt(i)).
-      treeStructureChanged(e);
-    }
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/Configuration.java b/support/tools/BaseSimGUI/src/org/astron/basesim/Configuration.java
deleted file mode 100644
index 6eef6d3ce3d1c738ed00bc2becb45b1a0042ecd7..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/Configuration.java
+++ /dev/null
@@ -1,55 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-import kiwi.io.ConfigFile;
-import java.awt.*;
-
-/**
- * Title: Class Config
- * Description: Main configuration class
- * Copyright:    Copyright (c) 2001
- * Company: ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import java.io.*;
-
-public class Configuration extends ConfigFile {
-
-  private Font propFont, titleFont;
-
-  public Configuration(File configFile) {
-    super(configFile);
-    titleFont = new Font("times",Font.BOLD,(int)(11));
-    propFont = new Font("arial",Font.PLAIN,(int)(10));
-  }
-
-  public Font getGraphTitleFont() {
-    return titleFont;
-  }
-
-  public Font getGraphPropFont() {
-    return propFont;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/Connection.java b/support/tools/BaseSimGUI/src/org/astron/basesim/Connection.java
deleted file mode 100644
index 20fa3df57554e5b11406b4a231e51394e57de9db..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/Connection.java
+++ /dev/null
@@ -1,193 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Visual LofarSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.awt.*;
-import java.awt.geom.*;
-
-/**
- * This class represents the visual representation of a connection between two
- * Graph objects.
- *
- * Graph are connected as shown below
- * <code>graphOut->graphIn</code>
- *
- * Other types of Connections should inherit from this class.
- */
-public class Connection extends java.lang.Object {
-
-  static float dash1[] = {6.0f};
-  static float dash2[] = {3.0f};
-
-  private final static int CURVE_X_CONSTANT = 250;
-  private final static int CURVE_Y_CONSTANT = 100;
-  private final static int LINE_CONSTANT = 10;
-  protected final static Stroke SIMPLE_STROKE = new BasicStroke(1);
-  protected final static Stroke THICK_STROKE = new BasicStroke(2);
-  protected final static Stroke SIMPLE_DASH_STROKE =
-    new BasicStroke(1,BasicStroke.CAP_SQUARE,
-                      BasicStroke.JOIN_MITER,
-                      1,dash1,0.0f);
-  protected final static Stroke THICK_DASH_STROKE =
-    new BasicStroke(2,BasicStroke.CAP_SQUARE,
-                      BasicStroke.JOIN_MITER,
-                      1,dash1,0.0f);
-  protected final static Stroke SIMPLE_DOTTED_STROKE =
-    new BasicStroke(1,BasicStroke.CAP_SQUARE,
-                      BasicStroke.JOIN_MITER,
-                      1,dash2,1.0f);
-  protected final static Stroke THICK_DOTTED_STROKE =
-    new BasicStroke(2,BasicStroke.CAP_SQUARE,
-                      BasicStroke.JOIN_MITER,
-                      1,dash2,5.0f);
-
-  /** Graph with outgoing connection (unidirectional stream) */
-  public Graph graphOut;
-  /** Graph with incoming connection */
-  public Graph graphIn;
-  private boolean visible;
-  /** Only valid when _coordinateSet = true. */
-  private int linLength;
-  protected Color color, selColor;
-  protected Stroke stroke, selStroke;
-  private boolean selected;
-
-  /** Create a connection. */
-  public Connection() {
-    graphOut = null;
-    graphIn = null;
-    init();
-  }
-
-  /** Create a connection between the two specified graphs. The connection
-   *  is unidirectional: graphOutput->graphInput */
-  public Connection(Graph graphOutput, Graph graphInput) {
-    graphIn = graphInput;
-    graphOut = graphOutput;
-    init();
-  }
-
-  private void init() {
-    visible = true;
-    selected = false;
-
-    // set color for this basic connection
-    color = Color.black;
-    selColor = Color.red;
-
-    // set stroke shapes for this basic connection
-    stroke = SIMPLE_STROKE;
-    selStroke = THICK_STROKE;
-  }
-
-  /** Set the visibility of this connection. */
-  public void setVisible (boolean visible) { this.visible = visible; }
-  /** Set if this connection is selected */
-  public void setSelected(boolean selected) { this.selected = selected; }
-  /** Set the basic drawing color */
-  public void setColor (Color color) { this.color = color; }
-  /** Get the basic drawing color */
-  public Color getColor () { return color; }
-  /** Set the color of this connection when selected */
-  public void setColorSelected (Color color) { this.selColor = color; }
-  /** Get the color of this line when selected */
-  public Color getColorSelected () { return selColor; }
-  /** Set the stroke used to draw this line */
-  public void setStroke (Stroke stroke) { this.stroke = stroke; }
-  /** Get the stroke used to draw this line */
-  public Stroke getStroke () { return stroke; }
-  /** Set the stroke used to draw a selected line */
-  public void setStrokeSelected (Stroke stroke) { this.selStroke = stroke; }
-  /** Get the stroke used to select this line */
-  public Stroke getStrokeSelected () { return selStroke; }
-  /** Paint this connection */
-  public void paint (Graphics g)
-  {
-    Graphics2D g2 = (Graphics2D)g;
-    Color color = null;
-    Stroke stroke = null;
-    if (selected) {
-      color = selColor;
-      stroke = selStroke;
-    } else {
-      color = this.color;
-      stroke = this.stroke;
-    }
-    Point inP, outP;
-    if (!visible) return;
-    g2.setPaint(color);
-    inP = graphIn.getConnectionPoint(true,this);
-    outP = graphOut.getConnectionPoint(false,this);
-    if ( (inP == null) || (outP == null) ) return;
-    if (inP.x >= outP.x) {
-      double square = square(inP,outP);
-      int minLength = (int)(graphIn.getZoomLevel()*LINE_CONSTANT);
-      int maxLength = (int)((inP.x-outP.x)/2)-minLength;
-      linLength = (int)((((0.5*Math.PI-square)/Math.PI)*maxLength+minLength));
-      ((Graphics2D)g).setStroke(stroke);
-      g.drawLine(outP.x,outP.y,outP.x+linLength,outP.y);
-      g.drawLine(outP.x+linLength,outP.y,inP.x-linLength,inP.y);
-      g.drawLine(inP.x-linLength,inP.y,inP.x,inP.y);
-    } else {
-      // loopback
-      Point ctrlPIn = new Point(inP);
-      Point ctrlPOut = new Point(outP);
-      if (ctrlPIn.y < (ctrlPOut.y-graphIn.getHeight())) {
-        ctrlPIn.y += (int)(graphIn.getZoomLevel()*CURVE_Y_CONSTANT);
-        ctrlPOut.y -= (int)(graphIn.getZoomLevel()*CURVE_Y_CONSTANT);
-      } else if (ctrlPIn.y > (ctrlPOut.y+graphIn.getHeight())) {
-        ctrlPIn.y -= (int)(graphIn.getZoomLevel()*CURVE_Y_CONSTANT);
-        ctrlPOut.y += (int)(graphIn.getZoomLevel()*CURVE_Y_CONSTANT);
-      } else {
-        ctrlPIn.y -= (int)(graphIn.getZoomLevel()*CURVE_Y_CONSTANT);
-        ctrlPOut.y -= (int)(graphIn.getZoomLevel()*CURVE_Y_CONSTANT);
-      }
-      ctrlPIn.x -= (int)(graphIn.getZoomLevel()*CURVE_X_CONSTANT);
-      ctrlPOut.x += (int)(graphIn.getZoomLevel()*CURVE_X_CONSTANT);
-      CubicCurve2D.Float curve =
-        new CubicCurve2D.Float(inP.x,inP.y,ctrlPIn.x,ctrlPIn.y,
-                               ctrlPOut.x,ctrlPOut.y,outP.x,outP.y);
-      ((Graphics2D)g).draw(curve);
-    }
-  }
-
-  /** Helper function used by paint() */
-  private double square(Point p1, Point p2) {
-    int dx=p1.x-p2.x;
-    int dy=p1.y-p2.y;
-    if (dx<0) dx*=-1;
-    if (dy<0) dy*=-1;
-    if (dx == 0) {
-      return 0.5*Math.PI;
-    } else {
-      return Math.atan(dy/dx);
-    }
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/ConnectionStep.java b/support/tools/BaseSimGUI/src/org/astron/basesim/ConnectionStep.java
deleted file mode 100644
index 2d5c4c934a9bff810ba34383ff5e689a0a60ce73..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/ConnectionStep.java
+++ /dev/null
@@ -1,42 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        <p>
- * Description:  <p>
- * Copyright:    Copyright (c) <p>
- * Company:      <p>
- * @author
- * @version 1.0
- */
-
-/**
- * This class represents the high-level connection between simulation blocks.
- * It does not represent a physical data stream, it will be used for layout
- * of the step/simul blocks.
- */
-public class ConnectionStep extends Connection {
-
-  public ConnectionStep(GraphStep graphOutput, GraphStep graphInput) {
-    super (graphOutput,graphInput);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/ContHandlerSim.java b/support/tools/BaseSimGUI/src/org/astron/basesim/ContHandlerSim.java
deleted file mode 100644
index a3ce7a7e69780a798099369b6cb7597541e5b07d..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/ContHandlerSim.java
+++ /dev/null
@@ -1,888 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Class ContHandlerSim<p>
- * Description:  SAX parser object<p>
- * Copyright:    Copyright (c) <p>
- * Company:      <p>
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import java.awt.*;
-import org.xml.sax.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-import kiwi.io.*;
-import java.io.*;
-
-/**
- * ContentHandler (SAX) implementation for parsing a BaseSim diagram
- */
-public class ContHandlerSim implements ContentHandler {
-
-  /** List of MessageListeners */
-  private ArrayList _mlisteners = new ArrayList();
-
-  final static String classMapFileName = "classMap.cfg";
-  final static char DELIMITER = '.';
-  /** The parent of the subtree that will be parsed */
-  private GraphComposite owner = null;
-  /** The Graph we are currently working on */
-  private Graph cGraph;
-  /** The path to cGraph */
-  private String cPath;
-  /** List of MessageListeners */
-  private ArrayList mlisteners = new ArrayList();
-  /** The root composite*/
-  private GraphComposite root;
-  /** Table that maps nodes to colors */
-  private Vector nodeColorMap = new Vector(30);
-  /** Min. color intensity */
-  private final int MIN_C_INT = 180;
-  /** Max. color intensity */
-  private final int MAX_C_INT = 240;
-  /** Difference factor between colors of parent and child that run on
-   *  same node */
-  private final double CHILD_COLOR_ADJUST = 0.85;
-  /** Base color table */
-  private Color distColor[];
-  /** Make sure loopback warning appears only once */
-  private boolean noLoopWarning = true;
-  /** A table of names with Graph objects for relative fast lookup of names */
-  private Hashtable graphtable;
-  /** A list of connection pairs. First column contains instance of source
-   *  Graph, the second column contains a (still unresolved) name of a Graph. */
-  private LinkedList conList;
-  /** Properties for mapping BaseSim classes to BaseSimGUI classes. */
-  private ConfigFile classMap = new ConfigFile(new File(classMapFileName));
-  private Vector nodeToColor = new Vector(20); // [node,color][20]
-  private static int colorFollowup = 0;
-  private GraphStep exStep = null;
-  private String exStepName = null;
-  private GraphWorkHolder currentWorker = null;
-  private ArrayList exDHList = new ArrayList();
-
-  /** Constructs a new parser handler. */
-  public ContHandlerSim()
-  {
-    cGraph = null;
-    cPath = new String();
-    conList = new LinkedList();
-    graphtable = new Hashtable();
-    initDistColors();
-    try {
-      classMap.load();
-    } catch(IOException e) {
-      fireMessage(new MessageApp(e,"Cannot open " + classMapFileName));
-    }
-  }
-  /** Construct a new (partial) parser handler.
-   * @param owner The parent Graph to which the parsed step will be attached.
-   * @param step The name of the Step or Simul that should be parsed from the file.
-   */
-  public ContHandlerSim(GraphComposite owner, String step)
-  {
-    this.owner = owner;
-    exStepName = step;
-    cGraph = null;
-    cPath = new String();
-    conList = new LinkedList();
-    graphtable = new Hashtable();
-    initDistColors();
-    try {
-      classMap.load();
-    } catch(IOException e) {
-      fireMessage(new MessageApp(e,"Cannot open " + classMapFileName));
-    }
-  }
-
-  public GraphComposite getRoot() { return root; }
-
-  public void setDocumentLocator(Locator locator)
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  public void startDocument() throws SAXException
-  {
-  }
-
-  public void endDocument() throws SAXException
-  {
-    createConnections();
-  }
-
-  public void startPrefixMapping(String prefix, String uri) throws SAXException
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  public void endPrefixMapping(String prefix) throws SAXException
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  public void startElement(String namespaceURI, String localName, String qName,
-                           Attributes atts) throws SAXException
-  {
-    Graph graph;
-    String className = null;
-    int index;
-    if ("basesim".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <basesim> element
-      // -------------------------------------------
-
-      if (owner != null) {
-        cGraph = owner;
-      } else {
-        GraphManager manager = new GraphManager();
-        cGraph = new GraphDiagram(manager,"Base simulation");
-        root = (GraphComposite)cGraph;
-        MessageListener ml [] = getMessageListeners();
-        for (int i=0; i<ml.length; i++) {
-          root.getGraphManager().addMessageListener(ml[i]);
-        }
-      }
-    } else if ("step".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <step> element
-      // -------------------------------------------
-
-      if (!(cGraph instanceof GraphSimul)) return;
-
-      // load attributes
-      String node = atts.getValue("node");
-      String name = atts.getValue("name");
-
-      graph = instGraphFromName(atts,GraphStep.class);
-
-      if ( (owner != null) && (exStep == null) ) {
-        // partial parsing mode
-        if (name.equals(exStepName)) {
-          exStep = (GraphStep)graph;
-          root = exStep;
-        } else {
-          return; // skip
-        }
-      }
-
-      ((GraphSimul)cGraph).addStep((GraphStep)graph);
-      if (node != null) {
-        Color color = genColorFromNode(node);
-        ((GraphStep)graph).setNode(node);
-        String parentNode = ((GraphStep)cGraph).getNode();
-        if (parentNode != null && node.equals(parentNode)) {
-          // child is slightly darker
-          graph.setBackground(darker((Color)cGraph.getBackground()));
-        } else {
-          graph.setBackground(color);
-        }
-      }
-
-      cGraph = graph;
-      graphtable.put(new Reference(cGraph.getName(),cPath),cGraph);
-      addToPath(cGraph);
-    } else if ("simul".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <simul> element
-      // -------------------------------------------
-
-      // load attributes
-      String node = atts.getValue("node");
-      String name = atts.getValue("name");
-
-      graph = instGraphFromName(atts,GraphSimul.class);
-      ((GraphSimul)graph).setState(GraphSimul.STATE_INDEPENDENT);
-
-      if ( (owner != null) && (exStep == null) ) {
-        // partial parsing mode
-        if (name.equals(exStepName)) {
-          exStep = (GraphStep)graph;
-          root = exStep;
-        } else {
-          return; // skip
-        }
-      }
-
-      if (node != null) {
-        Color color = genColorFromNode(node);
-        ((GraphStep)graph).setNode(node);
-        String parentNode = ((GraphStep)cGraph).getNode();
-        if (parentNode != null && node.equals(parentNode)) {
-          // child is slightly darker
-          graph.setBackground(darker((Color)cGraph.getBackground()));
-        } else {
-          graph.setBackground(color);
-        }
-      }
-
-      ((GraphSimul)cGraph).addStep((GraphStep)graph);
-
-      cGraph = graph;
-      graphtable.put(new Reference(cGraph.getName(),cPath),cGraph);
-      addToPath(cGraph);
-
-    } else if ("workholder".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <workholder> element
-      // -------------------------------------------
-
-      if ( (owner != null) && (exStep == null) ) return; // skip
-
-      if (cGraph instanceof GraphSimul) {
-        graph = instGraphFromName(atts,GraphWorkHolderImage.class);
-      } else {
-        graph = instGraphFromName(atts,GraphWorkHolder.class);
-      }
-      ((GraphWorkHolder)graph).setClassName(atts.getValue("class"));
-      ((GraphStep)cGraph).setWorkHolder((GraphWorkHolder)graph);
-      currentWorker = (GraphWorkHolder)graph;
-      graphtable.put(new Reference(graph.getName(),cPath),graph);
-
-    } else if ("dataholder".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <dataholder> element
-      // -------------------------------------------
-
-      if ( (owner != null) && (exStep == null) ) return; // skip
-      boolean inputDH = "in".equals(atts.getValue("type"));
-
-      graph = currentWorker.buildDataHolder(inputDH);
-      graph.setGraphManager(cGraph.getGraphManager());
-      if ((index = atts.getIndex("name")) != -1) {
-        graph.setName(atts.getValue(index));
-      }
-      ((GraphDataHolder)graph).setInput(inputDH);
-      ((GraphStep)cGraph).addDataHolder((GraphDataHolder)graph);
-      graphtable.put(new Reference(graph.getName(),cPath),graph);
-      if (cGraph == root) {
-        exDHList.add(new RefGraph(graph,new Reference(graph.getName(),cPath)));
-      }
-
-    } else if ("connect".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <connect> element
-      // -------------------------------------------
-
-      if ( (owner != null) && (exStep == null) ) return; // skip
-
-      // load attributes
-      String src = atts.getValue("src");
-      String dest = atts.getValue("dest");
-      String rate = atts.getValue("rate");
-      String itsClass = atts.getValue("class");
-
-      if ( (src != null) && (dest != null) ) {
-        NameConnection n = new NameConnection(src,dest,cPath);
-        if (rate != null) {
-          n.setRate(Integer.parseInt(rate));
-        }
-        if (itsClass != null) {
-          n.setItsClass(itsClass);
-        }
-        conList.add(n);
-      }
-    } else if ("exstep".equals(qName)) {
-
-      // -------------------------------------------
-      // Begin of <exstep> element
-      // -------------------------------------------
-
-      if ( (owner != null) && (exStep == null) ) return; // skip
-
-      // load attributes
-      String src = atts.getValue("src");
-      String name = atts.getValue("name");
-      String exName = atts.getValue("exname");
-      String node = atts.getValue("node");
-
-      if ( (src != null) && (name != null)
-           && (cGraph instanceof GraphComposite)
-           && (exName != null) ) {
-
-        // start a new parser
-        File file;
-        FileInputStream input;
-        try {
-          file = new File(src);
-          input = new FileInputStream(file);
-        } catch (FileNotFoundException e) {
-          fireMessage(new MessageXML(this,"Can't load step. File not found: " + src,
-                                       MessageEvent.ERROR));
-          return;
-        } catch (SecurityException e) {
-          fireMessage(new MessageXML(this,"Cannot access file " + src,
-                                       MessageEvent.ERROR));
-          return;
-        }
-
-        ContHandlerSim contentHandler =
-          new ContHandlerSim((GraphComposite)cGraph,exName);
-        ErrorHandlerSim errorHandler = new ErrorHandlerSim();
-        errorHandler.changeDocumentName(src);
-        MessageListener ml [] = cGraph.getGraphManager().getMessageListeners();
-        for (int i=0; i<ml.length; i++) errorHandler.addMessageListener(ml[i]);
-        try {
-          XMLReader parser =
-            (XMLReader)Class.forName(Main.SETTINGS.getString("xmlParser"))
-                                     .newInstance();
-          parser.setContentHandler(contentHandler);
-          parser.setErrorHandler(errorHandler);
-          parser.setFeature( "http://xml.org/sax/features/validation",true);
-          parser.setFeature( "http://xml.org/sax/features/namespaces",true);
-          parser.setFeature( "http://apache.org/xml/features/validation/schema",true);
-          parser.parse(new InputSource(input));
-        } catch (Exception e) { e.printStackTrace(); }
-
-        graph = contentHandler.getRoot();
-
-        if (graph == null) {
-          fireMessage(new MessageXML(this,"External step not found: " + exName,
-                                     MessageEvent.ERROR));
-          return;
-        }
-
-        if (node != null) {
-          Color color = genColorFromNode(node);
-          ((GraphStep)graph).setNode(node);
-          String parentNode = ((GraphStep)cGraph).getNode();
-          if (parentNode != null && node.equals(parentNode)) {
-            // child is slightly darker
-            graph.setBackground(darker((Color)cGraph.getBackground()));
-          } else {
-            graph.setBackground(color);
-          }
-        }
-
-        graph.setName(name);
-        graphtable.put(new Reference(name,cPath),graph);
-
-        ArrayList list = contentHandler.getEdgeDH();
-        for (int i=0; i<list.size(); i++) {
-          RefGraph rg = (RefGraph)list.get(i);
-          Reference r = new Reference(rg.ref.getName(),cPath+"."+name);
-          graphtable.put(r,rg.graph);
-        }
-      }
-     }
-  }
-
-  public void endElement(String namespaceURI, String localName, String qName)
-    throws SAXException
-  {
-    if (cGraph == null) {
-      System.out.println("cGraph == null");
-      return;
-    }
-    if ("step".equals(qName)) {
-      if ( (owner != null) && (exStep == null) ) return; // skip
-      if (cGraph == exStep) exStep = null;
-      removeFromPath(cGraph);
-      cGraph = cGraph.getOwner().getOwner();
-    } else if ("simul".equals(qName)) {
-      if ( (owner != null) && (exStep == null) ) return; // skip
-      removeFromPath(cGraph);
-      cGraph = cGraph.getOwner().getOwner();
-      if (cGraph == exStep) exStep = null;
-    }
-  }
-
-  public void characters(char[] ch, int start, int length) throws SAXException
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  public void processingInstruction(String target, String data) throws SAXException
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  public void skippedEntity(String name) throws SAXException
-  {
-    //TODO: Implement this org.xml.sax.ContentHandler method
-  }
-
-  /** This returns a lists of dataholders that are on the edges of a parsed
-   *  Step in partial parsing mode. Call only after parsing completed. */
-  public ArrayList getEdgeDH() { return exDHList; }
-
-  /** Helper function that instantiates a connection object using the specified
-   *  class name and base class. */
-  private Connection instConnectionFromName(String name,
-                                            Class baseClass) {
-    Connection conn;
-    String className = null;
-    if (name != null) className = classMap.getProperty(name);
-    if (className == null) {
-      // nope; instantiate base class
-      try {
-        conn = (Connection)baseClass.newInstance();
-      } catch (Exception e) { e.printStackTrace(); return null; }
-    } else {
-      // yes; try to instantiate specified class.
-      Object object = null;
-      try {
-        object = Class.forName(className).newInstance();
-        // check if this object is an instance of baseClass
-        if (baseClass.isInstance(object)) {
-          conn = (Connection)object;
-        } else {
-          try { conn = (Connection)baseClass.newInstance(); }
-          catch (Exception e) { e.printStackTrace(); return null; }
-            fireMessage(new MessageEvent(this,"Cannot instantiate object "
-              + className + ". It's not a " + baseClass.getName() + "."));
-          }
-      } catch(Exception e) {
-        try { conn = (Connection)baseClass.newInstance(); }
-        catch (Exception x) { x.printStackTrace(); return null; }
-        fireMessage(new MessageEvent(this,"Cannot instantiate object."
-          + ". A " + e + " was raised. Base class is used.",
-          MessageEvent.WARNING));
-      }
-    }
-    return conn;
-  }
-
-  /** Helper function that instantiates a graphical object using a specified class
-   *  and the 'class' attribute. In addition it will also set 'name' and
-   *  GraphManager properties. */
-  private Graph instGraphFromName(Attributes atts, Class baseClass) {
-    Graph graph;
-    String className;
-    String classAtt = atts.getValue("class");
-    if (classAtt != null) {
-      className = classMap.getProperty(classAtt);
-    } else {
-      className = null;
-    }
-    if (className == null) {
-      // nope; instantiate base class
-      try {
-        graph = (Graph)baseClass.newInstance();
-      } catch (Exception e) { e.printStackTrace(); return null; }
-    } else {
-      // yes; try to instantiate specified class.
-      Object object = null;
-      try {
-        object = Class.forName(className).newInstance();
-        // check if this object is an instance of baseClass
-        if (baseClass.isInstance(object)) {
-          graph = (Graph)object;
-        } else {
-        try { graph = (Graph)baseClass.newInstance(); }
-        catch (Exception e) { e.printStackTrace(); return null; }
-          fireMessage(new MessageGraph(graph,"Cannot instantiate object "
-            + className + ". It's not a " + baseClass.getName() + "."));
-        }
-      } catch(Exception e) {
-        try { graph = (Graph)baseClass.newInstance(); }
-        catch (Exception x) { x.printStackTrace(); return null; }
-        fireMessage(new MessageGraph(graph,"Cannot instantiate object."
-          + ". A " + e + " was raised. Base class is used.",
-          MessageEvent.WARNING));
-      }
-    }
-    graph.setGraphManager(cGraph.getGraphManager());
-    int index;
-    if ((index = atts.getIndex("name")) != -1) {
-      graph.setName(atts.getValue(index));
-    }
-    return graph;
-  }
-
-  /** Create physical connections between Graph objects using the
-   *  NameConnection array. */
-  private void createConnections ()
-  {
-    String srcName;
-    String destName;
-    Object sourceGraph;
-    Object destGraph;
-    NameConnection nameCon;
-    Enumeration keys;
-    for (int i=0; i<conList.size(); i++)
-    {
-      nameCon = (NameConnection)conList.get(i);
-
-      sourceGraph = null;
-      destGraph = null;
-
-      keys = graphtable.keys();
-
-      int destHitCount = 0;
-      int srcHitCount = 0;
-      while (keys.hasMoreElements()) {
-        Reference r = (Reference)keys.nextElement();
-        if (r.equals(nameCon.source)) {
-          sourceGraph = graphtable.get(r);
-          srcHitCount++;
-        }
-        if (r.equals(nameCon.dest)) {
-          destGraph = graphtable.get(r);
-          destHitCount++;
-        }
-      }
-
-      if (srcHitCount > 1) {
-        fireMessage(new MessageGraph(sourceGraph,
-          "Cannot connect " + nameCon.source + " with " + nameCon.dest
-            + " (reference to " + nameCon.source + " is ambiguous).",
-            MessageEvent.WARNING));
-        if (destHitCount <= 1) continue;
-      }
-      if (destHitCount > 1) {
-        fireMessage(new MessageGraph(destGraph,
-          "Cannot connect " + nameCon.source + " with " + nameCon.dest
-            + " (reference to " + nameCon.dest + " is ambiguous).",
-            MessageEvent.WARNING));
-        continue;
-      }
-
-      if (sourceGraph == null) {
-        if (destGraph != null) {
-          fireMessage(new MessageGraph(destGraph,
-                      "Cannot connect "+nameCon.source+" with " + nameCon.dest
-                      + " (the referenced object does not exist, or is not in scope).",
-                      MessageEvent.WARNING));
-        } else {
-          fireMessage(new MessageEvent(this,
-                      "Cannot connect "+nameCon.source+" with " + nameCon.dest
-                      + " (the referenced objects do not exist, or is not in scope).",
-                      MessageEvent.WARNING));
-        }
-        continue;
-      }
-
-      if (destGraph == null) {
-        if (sourceGraph != null) {
-          fireMessage(new MessageGraph(sourceGraph,
-                      "Cannot connect "+sourceGraph+" with " + nameCon.dest
-                      + " (the referenced object does not exist).",
-                      MessageEvent.WARNING));
-        } else {
-          fireMessage(new MessageEvent(this,
-                      "Cannot connect "+nameCon.source+" with " + nameCon.dest
-                      + " (the referenced objects do not exist).",
-                      MessageEvent.WARNING));
-        }
-        continue;
-      }
-
-      if (sourceGraph.toString() == destGraph.toString()) {
-
-        fireMessage(new MessageGraph(sourceGraph,"Cannot connect "+sourceGraph
-                    + " with itself.",MessageEvent.WARNING));
-        continue;
-      }
-
-      if (sourceGraph instanceof GraphStep) {
-        if (!(destGraph instanceof GraphStep)) {
-          fireMessage(new MessageGraph(sourceGraph,destGraph,
-                      "Cannot connect "+sourceGraph+" with " + destGraph
-                      + " (the elements are incompatible).",
-                      MessageEvent.WARNING));
-          continue;
-        }
-        GraphStep sStep = (GraphStep)sourceGraph;
-        GraphStep dStep = (GraphStep)destGraph;
-        if ( (sStep.getOwner().getOwner() != dStep) &&
-             (dStep.getOwner().getOwner() != sStep) &&
-             (sStep.getOwner() != dStep.getOwner())) {
-          fireMessage(new MessageGraph(sStep,dStep,"Cannot connect "
-                      + sourceGraph + " with "
-                      + destGraph + " (they have different parents).",
-                      MessageEvent.WARNING));
-          continue;
-        }
-
-        Connection c = instConnectionFromName(nameCon.getItsClass(),
-                                              Connection.class);
-        sStep.connectTo(dStep);
-        continue;
-      }
-
-      if (sourceGraph instanceof GraphDataHolder) {
-        if (!(destGraph instanceof GraphDataHolder)) {
-          fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                      + sourceGraph + " with " + destGraph
-                      + " (the elements are incompatible).",
-                      MessageEvent.WARNING));
-          continue;
-        }
-        GraphDataHolder sDH = (GraphDataHolder)sourceGraph;
-        GraphDataHolder dDH = (GraphDataHolder)destGraph;
-        boolean sgin = sDH.isInput();
-        boolean dgin = dDH.isInput();
-
-        if ( (sDH.getOwnerStep() !=
-          (GraphStep)dDH.getOwnerStep().getOwnerSimul()) &&
-          (dDH.getOwnerStep() !=
-          (GraphStep)sDH.getOwnerStep().getOwnerSimul())) {
-
-          // this is not a child->parent connection
-
-          if (sgin) {
-            fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                        + sourceGraph + " with " + destGraph
-                        + " (Source should be of type input).",
-                        MessageEvent.WARNING));
-            continue;
-          }
-
-          if (!dgin) {
-            fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                        + sourceGraph + " with " + destGraph
-                        + " (Destination should be of type output).",
-                        MessageEvent.WARNING));
-            continue;
-          }
-
-          if (sgin == dgin) {
-            fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                        + sourceGraph + " with " + destGraph
-                        + " (DataHolders are of same type).",
-                        MessageEvent.WARNING));
-            continue;
-          }
-
-        } else {
-
-          // this is a child->parent connection
-          if (sgin != dgin) {
-            fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                        + sourceGraph + " with " + destGraph
-                        + " (Invalid child-parent connection).",
-                        MessageEvent.WARNING));
-            continue;
-          }
-
-          if (sgin) {
-            if ( (sDH.getOwnerStep() !=
-                 (GraphStep)dDH.getOwnerStep().getOwnerSimul()) ) {
-
-              fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                          + sourceGraph + " with " + destGraph
-                          + " (Invalid child-parent connection, reverse?).",
-                          MessageEvent.WARNING));
-              continue;
-            }
-          } else {
-             if ( (dDH.getOwnerStep() !=
-                 (GraphStep)sDH.getOwnerStep().getOwnerSimul()) ) {
-
-              fireMessage(new MessageGraph(sourceGraph,destGraph,"Cannot connect "
-                          + sourceGraph + " with " + destGraph
-                          + " (Invalid child-parent connection, reverse?).",
-                          MessageEvent.WARNING));
-              continue;
-            }
-          }
-        }
-
-        if (causesLoop(sDH,dDH)) {
-          if (noLoopWarning) {
-            fireMessage(new MessageGraph(sourceGraph,destGraph,"Warning: Auto-"
-                        + "layout of simulations with loops are not"
-                        + " well supported!",
-                        MessageEvent.ERROR));
-            noLoopWarning = false;
-          }
-        }
-        Connection c = instConnectionFromName(nameCon.getItsClass(),
-                                              Connection.class);
-        ((Graph)sourceGraph).connectTo((Graph)destGraph,c);
-      }
-    }
-  }
-
-  /** Will a connection of source to dest result in a loop? */
-  private boolean causesLoop (GraphDataHolder source, GraphDataHolder dest) {
-    if (source.isInput() &&
-        (source.getOwner().getOwner() == dest.getOwner().getOwner())) {
-      return false;                     // special case: internal dh connection
-    }
-    return findDataHolderInChain(source,dest);
-  }
-
-  /** This method returns true if a connection between to DataHolders results
-   *  in a cyclic connection.*/
-  private boolean findDataHolderInChain(GraphDataHolder theDH,
-                                        GraphDataHolder tryChain) {
-    GraphStep step = (GraphStep)tryChain.getOwner().getOwner();
-    if (theDH.getOwner().getOwner() == step) return true;         // found it
-    GraphDataHolder output[] = step.getOutputDataHolders();
-    for (int i=0; i<output.length; i++) {
-      if (output[i].hasOutputConnections()) {
-        if (findDataHolderInChain(theDH,
-            (GraphDataHolder)output[i].getOutConnection(0).graphIn)) {
-          return true;
-        }
-      }
-    }
-    return false;
-  }
-
-  private void initDistColors() {
-    distColor = new Color[8];
-    distColor[0] = new Color(MIN_C_INT,MIN_C_INT,MIN_C_INT);
-    distColor[1] = new Color(MIN_C_INT,MIN_C_INT,MAX_C_INT);
-    distColor[2] = new Color(MIN_C_INT,MAX_C_INT,MIN_C_INT);
-    distColor[3] = new Color(MIN_C_INT,MAX_C_INT,MAX_C_INT);
-    distColor[4] = new Color(MAX_C_INT,MIN_C_INT,MIN_C_INT);
-    distColor[5] = new Color(MAX_C_INT,MIN_C_INT,MAX_C_INT);
-    distColor[6] = new Color(MAX_C_INT,MAX_C_INT,MIN_C_INT);
-    distColor[7] = new Color(MAX_C_INT,MAX_C_INT,MAX_C_INT);
-  }
-
-  private Color genColorFromNode(String node) {
-    for (int i=0; i<nodeColorMap.size(); i++) {
-      String n = ((NodeColor)nodeColorMap.get(i)).node;
-      if (n.equals(node)) {
-        return ((NodeColor)nodeColorMap.get(i)).color;
-      }
-    }
-    Color baseColor;
-    int baseColorIx = nodeColorMap.size()%8;
-    baseColor = distColor[baseColorIx];
-    int round = nodeColorMap.size()/8+1;
-    // interpolate between base colors
-    int r = distColor[baseColorIx].getRed();
-    int g = distColor[baseColorIx].getGreen();
-    int b = distColor[baseColorIx].getBlue();
-    Color newColor = new Color(r,g,b);
-    nodeColorMap.add(new NodeColor(node,newColor));
-    return newColor;
-  }
-
-  /** Darkens specified color with CHILD_COLOR_ADJUST %. */
-  private Color darker(Color color) {
-    int r,g,b;
-    r = (int)(color.getRed() * CHILD_COLOR_ADJUST);
-    g = (int)(color.getGreen() * CHILD_COLOR_ADJUST);
-    b = (int)(color.getBlue() * CHILD_COLOR_ADJUST);
-    return new Color(r,g,b);
-  }
-
-  /** Dispatch the specified MessageEvent to all the registered listeners. */
-  protected void fireMessage(MessageEvent event) {
-    if (root.getGraphManager() != null) {
-      root.getGraphManager().fireMessage(event);
-    }
-  }
-
-  /** Register a MessageListener. All XML parser messages will be send to the
-   *  listener. The messages contain extra information (e.g. line number) */
-  public void addMessageListener (MessageListener messageListener) {
-    _mlisteners.add(messageListener);
-  }
-  /** Unregisters the specified MessageListener */
-  public void removeMessageListener (MessageListener messageListener) {
-    _mlisteners.remove(messageListener);
-  }
-
-  public MessageListener[] getMessageListeners () {
-    MessageListener ml [] = new MessageListener[_mlisteners.size()];
-    for (int i=0; i<ml.length; i++) {
-      ml[i] = (MessageListener)_mlisteners.get(i);
-    }
-    return ml;
-  }
-
-  private void addToPath(Graph graph) {
-    if (cPath.length() == 0) {
-      cPath = new String(graph.getName());
-    } else {
-      cPath += Reference.getDelimiter() + graph.getName();
-    }
-  }
-
-  private void removeFromPath(Graph graph) {
-    int i = cPath.toString().indexOf(graph.getName());
-    if (i == -1) {
-      System.out.println("ContHandlerSim.removeFromPath(): error");
-      return;
-    }
-    StringBuffer temp = new StringBuffer(cPath);
-    if (i == 0) {
-      temp.setLength(i);
-    } else {
-      temp.setLength(i-1);
-    }
-    cPath = temp.toString();
-  }
-
-  private class RefGraph {
-    public Graph graph;
-    public Reference ref;
-    RefGraph(Graph graph, Reference ref) {
-      this.ref = ref;
-      this.graph = graph;
-    }
-  }
-
-  /** Structure in which unresolved connections can be placed. Connection
-   *  names should be passed fully scoped (e.g. "mySimul.myDataHolder1") */
-  private class NameConnection {
-    public Reference source;
-    public Reference dest;
-    int rate;
-    String itsClass;
-    NameConnection (String s, String d, String scope) {
-      source = new Reference(s,scope);
-      dest = new Reference(d,scope);
-      rate = -1;
-    }
-    /** Set the rate that will be set when the actual connection is made */
-    public void setRate(int rate) { this.rate = rate; }
-    public int getRate() { return rate; }
-    public void setItsClass(String itsClass) { this.itsClass = itsClass; }
-    public String getItsClass() { return itsClass; }
-    public String getSourceName() { return source.getName(); }
-    public String getDestName() { return dest.getName(); }
-    public String toString() { return "NameConnection: "
-                               + source + " -> " + dest; }
-  }
-
-  private class NodeColor {
-    public String node;
-    public Color color;
-    NodeColor(String node, Color color) {
-      this.node = node;
-      this.color = color;
-    }
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/DimCtrlStepCenter.java b/support/tools/BaseSimGUI/src/org/astron/basesim/DimCtrlStepCenter.java
deleted file mode 100644
index efb7d784bf672c458fb7f7d596c5e1862ace0d16..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/DimCtrlStepCenter.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package org.astron.basesim;
-
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DimCtrlStepCenter extends DimensionController {
-
-  public static int FIXED_WIDTH = 215;
-  public static int FIXED_HEIGHT = 136;
-
-  public DimCtrlStepCenter() {}
-
-  /** Calculates the dimensions of the GraphComposite. Informs the GraphManager
-   *  on the size change. */
-  public void setDimensions() {
-    gc.setBaseSize(new Dimension(FIXED_WIDTH,FIXED_HEIGHT));
-    gc.getGraphManager().setDimensionsChanged(); // inform manager about size
-                                                 // change
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/DimensionController.java b/support/tools/BaseSimGUI/src/org/astron/basesim/DimensionController.java
deleted file mode 100644
index 1146b859b91fdf50b9572e732f8e7d2aa54b6c38..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/DimensionController.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package org.astron.basesim;
-
-/**
- * Title: DimensionController
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company: ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.awt.*;
-
-/** The DimensionController class controls the dimensions of a registered
- *  GraphComposite. The default implementation inflates the GraphComposite so
- *  that its children just fit. */
-public class DimensionController {
-
-  int vertSpacing;
-  int horzSpacing;
-  float sFactorH = (float)0.25;
-  float sFactorV = (float)0.25;
-  GraphComposite gc;
-
-  public DimensionController() {}
-
-  /** Copy constructor */
-  public DimensionController(DimensionController d) {
-    vertSpacing = d.getVerticalSpacing();
-    horzSpacing = d.getHorizontalSpacing();
-    sFactorH = d.getSpacingFactor(true);
-    sFactorV = d.getSpacingFactor(false);
-    gc = d.getGraphComposite();
-  }
-
-  public void setGraphComposite(GraphComposite gc) {
-    this.gc = gc;
-  }
-
-  /** Set the spacing between components in pixels at 100% zoom level. */
-  public void setSpacing (int horizontal, int vertical) {
-    horzSpacing = horizontal;
-    vertSpacing = vertical;
-  }
-
-  public void setHorizontalSpacing(int spacing) { horzSpacing = spacing; }
-  public void setVerticalSpacing(int spacing) { vertSpacing = spacing; }
-
-  /** Get the base vertical spacing. This is the vertical spacing when the
-   *  zoom level equals 1. This method is called by auto-layout managers. */
-  public int getVerticalSpacing() { return vertSpacing; }
-
-  /** Get the base horizontal spacing. This is the horizontal spacing when the
-   *  zoom level equals 1. This method is called by auto-layout managers. */
-  public int getHorizontalSpacing() { return horzSpacing; }
-
-  public void setSpacingFactor(float factor, boolean horizontal) {
-    if (horizontal) {
-      sFactorH = factor;
-    } else {
-      sFactorV = factor;
-    }
-  }
-  public float getSpacingFactor(boolean horizontal) {
-    if (horizontal) {
-      return sFactorH;
-    } else {
-      return sFactorV;
-    }
-  }
-
-  public GraphComposite getGraphComposite() { return gc; }
-
-  /** Calculates the dimensions of the GraphComposite. Informs the GraphManager
-   *  on the size change. */
-  public void setDimensions() {
-    int maxWidth=0,maxHeight=0,temp;
-    for (int i=0; i<gc.numberOfGraphs(); i++) {
-      Graph graph = gc.getGraph(i);
-      if (graph.isVisible()) {
-        if ((temp=graph.getBaseX()+graph.getBaseWidth()) > maxWidth) {
-          maxWidth=temp;
-        }
-        if ((temp=graph.getBaseY()+graph.getBaseHeight()) > maxHeight) {
-          maxHeight=temp;
-        }
-      }
-    }
-    maxWidth += (int)(getHorizontalSpacing() * getSpacingFactor(true));
-    maxHeight += (int)(getVerticalSpacing() * getSpacingFactor(false));
-    gc.setBaseSize(new Dimension(maxWidth,maxHeight));
-    gc.getGraphManager().setDimensionsChanged(); // inform manager about size
-                                                 // change
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/ErrorHandlerSim.java b/support/tools/BaseSimGUI/src/org/astron/basesim/ErrorHandlerSim.java
deleted file mode 100644
index 8e5ec0f1c3e2a7b2a6f954f171621e8ab5b7b587..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/ErrorHandlerSim.java
+++ /dev/null
@@ -1,103 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Class ErrorHandlerSim<p>
- * Description: <p>
- * Copyright:    Copyright (c) <p>
- * Company: Astron<p>
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import java.io.*;
-import org.xml.sax.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-
-public class ErrorHandlerSim implements ErrorHandler {
-
-  /** List of MessageListeners */
-  private ArrayList _mlisteners = new ArrayList();
-
-  /** Document name (XML file name) */
-  private String _filename = new String("Noname.xml");
-
-  public ErrorHandlerSim() {}
-
-  public void warning(SAXParseException exception) throws SAXException {
-    String message;
-    if (_filename != null) message = new String (_filename + ": '");
-    else message = new String ("'");
-    message = message+exception.getLocalizedMessage()+"' at line "+
-      exception.getLineNumber()+", char "+exception.getColumnNumber()+".";
-    fireMessage(new MessageXML(this,message,MessageEvent.NOTIFY,
-      exception.getLineNumber(),exception.getColumnNumber()));
-  }
-
-  public void error(SAXParseException exception) throws SAXException {
-    String message;
-    if (_filename != null) message = new String (_filename + ": '");
-    else message = new String ("'");
-    message = message+exception.getLocalizedMessage()+"' at line "+
-      exception.getLineNumber()+", char "+exception.getColumnNumber()+".";
-    fireMessage(new MessageXML(this,message,MessageEvent.ERROR,
-      exception.getLineNumber(),exception.getColumnNumber()));
-  }
-
-  public void fatalError(SAXParseException exception) throws SAXException {
-    String message;
-    if (_filename != null) message = new String (_filename + ": '");
-    else message = new String ("'");
-    message = message+" (fatal) "+exception.getLocalizedMessage()+"' at line "+
-      exception.getLineNumber()+", char "+exception.getColumnNumber()+".";
-    fireMessage(new MessageXML(this,message,MessageEvent.ERROR,
-      exception.getLineNumber(),exception.getColumnNumber()));
-  }
-
-  /** (Re)sets the document name. This name will be displayed in every
-   *  message the ErrorHandler sends to its MessageListeners. */
-  public void changeDocumentName (String name) {
-    _filename = name;
-  }
-
-  /** Register a MessageListener. All XML parser messages will be send to the
-   *  listener. The messages contain extra information (e.g. line number) */
-  public void addMessageListener (MessageListener messageListener) {
-    _mlisteners.add(messageListener);
-  }
-  /** Unregisters the specified MessageListener */
-  public void removeMessageListener (MessageListener messageListener) {
-    _mlisteners.remove(messageListener);
-  }
-  /** Dispatch the specified MessageEvent to all the registered listeners. */
-  protected void fireMessage(MessageEvent event) {
-    if (_mlisteners.size() == 0) {
-      System.out.println(event);
-    } else {
-      for (int i=0; i<_mlisteners.size(); i++) {
-        ((MessageListener)_mlisteners.get(i)).note(event);
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/Graph.java b/support/tools/BaseSimGUI/src/org/astron/basesim/Graph.java
deleted file mode 100644
index d09ff17303a22709a04b32eb3a9cafbfb5e30304..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/Graph.java
+++ /dev/null
@@ -1,702 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Class Graph
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.awt.*;
-import java.awt.geom.*;
-import java.util.*;
-import org.astron.util.*;
-import javax.swing.*;
-import kiwi.util.Config;
-
- /** The Graph class represents a visual object that can be part of a
-  *  composite. A Graph is visualized as a rectangle with rounded corners.
-  *  A Graph can display its name, it can be selected and can be rescaled
-  *  using a specified zoom level. In addition, a Graph can be connected
-  *  to other Graph. A Graph has input and output connection points which
-  *  exact locations can be asked to a Graph object.
-  *
-  *  The Graph class is the base class for all graphical objects.
-  */
-public class Graph {
-
-  /** Spacing between selection markers and object at a 100% zoom level */
-  private final static int SELECT_MARK_SPACING = 1;
-  /** Size of black rectangle in selection marker */
-  private final static int SELECT_MARK_SIZE = 5;
-
-  /** Followup number for name generation (when Graph name is not specified) */
-  static int followUp = 0;
-
-  static int SIDE_WEST = 0;
-  static int SIDE_EAST = 1;
-  static int SIDE_SOUTH = 2;
-  static int SIDE_NORTH = 3;
-
-  /** A multiplier for the relative dimensions */
-  private double _zoomLevel;
-  /** The current location of this Graph relative to its owner */
-  protected Point loc;
-  /** The location of the Graph at a 100% zoom level */
-  private Point _baseLoc;
-  /** The height of this Graph at a 100% zoom level */
-  private int _relHeight;
-  /** The width of this Graph at a 100% zoom level */
-  private int _relWidth;
-  /** The current height of this Graph */
-  protected int height;
-  /** The current width of this Graph */
-  protected int width;
-  /** The size of the rounding of the basic Graph visualization */
-  private int _roundSize;
-  /** The size of roundings of this Graph at a 100% zoom level */
-  private int _relRoundSize;
-  /** Background color */
-  private Paint _bkColor;
-  /** Line color (foreground color) */
-  private Paint _lineColor;
-  /** Selection color (may be deprecated in the future) */
-  private Paint _selColor;
-  /** Is this Graph selected? */
-  private boolean _selected;
-  /** Is this Graph visible? */
-  private int _visible;
-  /** Are the borders of this Graph visible? */
-  private boolean _borderVisible;
-  /** The name of this Graph */
-  private String _name;
-  /** Should the Graphs name be displayed? */
-  private boolean _nameVisible;
-  /** The owner of this Graph. Can be null. */
-  private GraphComposite _owner;
-  /** Dynamic array of input connections */
-  protected ArrayList inConn;
-  /** Dynamic array of output connectiosn */
-  protected ArrayList outConn;
-  /** Counter for connection point retreival functions */
-  private int _inFollowUp = 0;
-  /** Counter for connection point retreival functions */
-  private int _outFollowUp = 0;
-  /** The level in the composite tree. -1 means 'not yet determined'. */
-  private int _treeLevel = 0;
-  /** The GraphManager for this Graph object */
-  protected GraphManager manager;
-  /** Part of the Graph tree can be drawn. Is this Graph the graphical root? */
-  private boolean _graphicalRoot = false;
-
-  public Graph ()
-  {
-    _relHeight = 0;
-    _relWidth =0 ;
-    loc = new Point(0,0);
-    _baseLoc = new Point(0,0);
-    _name = "Graph"+followUp++;
-    defaultSettings();
-  }
-
-  /** Create a Graph on a specified location with no dimensions */
-  public Graph(GraphManager man, int x, int y, String name) {
-    _relHeight = 0;
-    _relWidth =0 ;
-    loc = new Point(x,y);
-    _baseLoc = new Point(x,y);
-    if (name != null) _name = name; else _name = "";
-    manager = man;
-    defaultSettings();
-  }
-
-  /** Create a Graph with specified location and dimensions */
-  public Graph(GraphManager man, int x, int y, int width, int height, String name) {
-    loc = new Point(x,y);
-    _baseLoc = new Point(x,y);
-    _relWidth = width;
-    _relHeight = height;
-    if (name != null) _name = name; else _name = "";
-    manager = man;
-    defaultSettings();
-  }
-
-  private void defaultSettings ()
-  {
-    _owner = null;
-    _borderVisible = true;
-    _visible = 0;
-    width = 0;
-    height = 0;
-    _borderVisible = true;
-    inConn = new ArrayList();
-    outConn = new ArrayList();
-    _nameVisible = true;
-    _roundSize = 10;
-    _zoomLevel = 1;
-    height = (int)(_zoomLevel*_relHeight);
-    width = (int)(_zoomLevel*_relWidth);
-    _relRoundSize = (int)(_zoomLevel*_relRoundSize);
-    _selColor = Color.black;
-    _lineColor = Color.black;
-    _bkColor = Color.white;
-    sizeChanged();
-  }
-
-  /** Registers the Graph Manager */
-  public void setGraphManager(GraphManager manager) { this.manager = manager; }
-
-  public GraphManager getGraphManager() { return manager; }
-
-  protected void transformDimensions() {
-    height = (int)(_zoomLevel*_relHeight);
-    width = (int)(_zoomLevel*_relWidth);
-    loc.x = (int)(_zoomLevel*_baseLoc.x);
-    loc.y = (int)(_zoomLevel*_baseLoc.y);
-    _roundSize = (int)(_zoomLevel*_relRoundSize);
-  }
-
-  /** Recalc the dimensions of this Graph using the given zoom level. */
-  public void setZoomLevel (double level)
-  {
-    _zoomLevel = level;
-    transformDimensions();
-  }
-
-  /** Return current zoom level*/
-  public double getZoomLevel() { return _zoomLevel; }
-
-  /** @deprecated */
-  public boolean isGraphicalRoot() { return _graphicalRoot; }
-  /** @deprecated */
-  public void setGraphicalRoot(boolean graphicalRoot) {
-    _graphicalRoot = graphicalRoot;
-  }
-
-  /** Enable/disable border visibility */
-  public void enableBorder (boolean visible) { _borderVisible = visible; }
-
-  public boolean hasVisibleBorders () { return _borderVisible; }
-
-  // ----- - --- ---- -- - -- -- - ------- - --------- -----   --------- - ---
-  // Painting methods.
-  // -------- -- --- ---- -- ---------- - - ----------- - --- --  - --- - - --
-
-  /** Invokes <code>paintBorder()</code> and <code>paintGraph()</code>
-   *  respectively. */
-  public boolean paint ()
-  {
-    Graphics2D g = manager.getGraphics();
-    Point point = getAbsoluteLocation();        // Resolve location
-    if (_borderVisible) paintBorder(g,point);
-    if (_nameVisible) paintGraph(g,point);
-    return true;
-  }
-
-  /** Paints the border around this Graph. It will not check if the borders
-   *  are visible! This task is left to <code>paint()</code>. It also
-   *  fills the background of the Graph with the background color.
-   *
-   *  @param    g     Graphics context on which to draw
-   *  @param    abs   Absolute location of upper-left corner of this Graph */
-  protected void paintBorder(Graphics2D g, Point abs) {
-    g.setPaint(Color.black);
-    g.fillRoundRect(abs.x+2,abs.y+2,width,height,_roundSize,_roundSize);
-    g.setPaint(_bkColor);
-    g.fillRoundRect(abs.x,abs.y,width,height,_roundSize,_roundSize);
-    g.setPaint(_lineColor);
-    g.drawRoundRect(abs.x,abs.y,width,height,_roundSize,_roundSize);
-    if (_selected) {
-      int s = (int)(SELECT_MARK_SPACING*_zoomLevel);
-      int b = SELECT_MARK_SIZE;
-      g.setPaint(_selColor);
-      g.fillRect(abs.x-s-b,abs.y-s-b,b,b);
-      g.fillRect(abs.x+s+width,abs.y-s-b,b,b);
-      g.fillRect(abs.x-s-b,abs.y+s+height,b,b);
-      g.fillRect(abs.x+s+width,abs.y+s+height,b,b);
-    }
-  }
-
-  /** Display the name of this Graph. This method will not check if the name
-   *  is visible! This task is left to <code>paint()</code>
-   *
-   *  @param    g     Graphics context on which to draw
-   *  @param    abs   Absolute location of upper-left corner of this Graph */
-  protected void paintGraph(Graphics2D g, Point abs) {
-    String text = new String(_name);
-    Font font = Main.SETTINGS.getGraphTitleFont();
-    FontMetrics fontMetr = g.getFontMetrics(font);
-    g.setFont(font);
-    int rs = (int)(0.25*_roundSize);
-    int textWidth = fontMetr.stringWidth(text);
-    if (textWidth >= width) {                            // check if name fits
-      return;                                            //   nope
-    }
-
-    g.drawString(text,(width/2)-(textWidth/2)+abs.x,  // center both
-                (height/2) + abs.y                    // horz. and vert,
-                + (int)(0.5*fontMetr.getMaxAscent()));
-  }
-
-  /** Redraw connections. Do not overload this method. If you like to change
-   *  the appeareance of a Connection overload the Connection classs instead. */
-  public void paintConnections ()
-  {
-    if (getOwner() != null) if (!getOwner().isGraphicalRoot()) {
-      Graphics2D g = manager.getGraphics();
-      for (int i=0; i<inConn.size(); i++) {
-        ((Connection)inConn.get(i)).paint(g);
-      }
-    }
-  }
-
-  /** Draws a box containing the properties of this Graph object. The box
-   *  will be centered within the rectangle specified by bounds. The method
-   *  attempts to draw as much properties as the space allows. */
-  public void paintProperties(Graphics2D g, String title, Rectangle bounds) {
-    Config p = getProperties();
-    int heightLeft = bounds.height;
-    int x=0,y=0,textWidth=0;
-
-    // get fonts and font info
-    Font tFont = Main.SETTINGS.getGraphTitleFont();
-    FontMetrics titleM = g.getFontMetrics(tFont);
-    Font pFont = Main.SETTINGS.getGraphPropFont();
-    FontMetrics propM = g.getFontMetrics(pFont);
-
-    Point abs = bounds.getLocation();
-      bounds.setLocation(0,0);
-
-    if (p.size() > 0) {
-
-    if ( bounds.width < titleM.stringWidth(title) ||
-         bounds.height < titleM.getHeight() ) {
-        System.out.println("bounds: "+bounds+", stringBounds: "+titleM.getStringBounds(title,g));
-        return; // title doesn't fit
-      }
-
-      heightLeft -= titleM.getHeight()
-                    - (2*LINE_SPACING)
-                    - propM.getHeight();
-
-      g.setFont(tFont);
-      textWidth = titleM.stringWidth(title);
-      x = (width/2)-(textWidth/2)+abs.x;
-    } else {
-      heightLeft = -1; // no properties to display
-    }
-    if (heightLeft >= 0) {
-      // we can draw at least one property
-      y = abs.y + titleM.getAscent();
-      g.drawString(title,x,y);
-      y += titleM.getDescent() + titleM.getLeading() + LINE_SPACING;
-      g.drawLine(abs.x + 3,y,abs.x + bounds.width - 3, y);
-      y += LINE_SPACING + propM.getAscent();
-      x = abs.x + 3;
-      g.setFont(pFont);
-      Enumeration enum = p.list();
-      int keyWidth, valueWidth;
-      for (int i=0; i<p.size(); i++) {
-        String key = (String)enum.nextElement();
-        String value = p.getProperty(key);
-        keyWidth = propM.stringWidth(key);
-        valueWidth = propM.stringWidth(value);
-        if (keyWidth + PROP_HORZ_SPACING + valueWidth < bounds.width) {
-          g.drawString(key,x,y);
-          g.drawString(value,x+PROP_INDENT,y);
-        }
-        y += propM.getHeight();
-        heightLeft -= propM.getHeight();
-        if (heightLeft < 0) break;
-      }
-    } else {
-      // we cannot draw any properties, only draw the title
-      y = (bounds.height/2) + abs.y + (titleM.getAscent()/2);
-      g.drawString(title,x,y);
-      g.draw(new Rectangle(x-5,y-14,textWidth+10,20));
-    }
-  }
-
-  public void setBaseRoundSize(int roundSize) { _relRoundSize = roundSize; }
-  public void setRoundSize(int roundSize) { _roundSize = roundSize; }
-  public int getRoundSize() { return _roundSize; }
-  public void setLineColor (Color color) { _lineColor = color; };
-  public void setBackground (Paint paint) { _bkColor = paint; };
-  public Paint getLineColor () { return _lineColor; }
-  public Paint getBackground () { return _bkColor; }
-  public void setName (String name) { _name = name; }
-  public String getName () { return _name; }
-  public String toString () {
-    return _name;
-  }
-  public void enableClientDisplay (boolean enable) { _nameVisible = enable; }
-  public boolean hasVisibleClient() { return _nameVisible; }
-
-  /** Notify the root that the tree structure has been changed. The root will
-   *  relayout the entire tree. It will then repaint the Graph. */
-  public void treeStructureChanged() {
-    if (getOwner() != null) {
-      getOwner().treeStructureChanged();
-    } else {
-      // we are root
-      try {
-        ((GraphComposite)this).layoutAll();
-      } catch (ClassCastException e) { e.printStackTrace(); }
-    }
-  }
-
-  /** Notifies the root that this object changed its dimensions. */
-  public void sizeChanged() {
-    if (this.getOwner() == null) {
-      try {
-        ((GraphComposite)this).layoutAll();
-      } catch (ClassCastException e) {}
-    } else {
-      this.getOwner().sizeChanged();
-    }
-  }
-
-  /** Get the height of this Graph in pixels. */
-  public int getHeight () { return height; }
-
-  /** Get the width of this Graph in pixels. */
-  public int getWidth () { return width; }
-
-  /** Get the width of this Graph at a 100% zoom level */
-  public int getBaseHeight () { return _relHeight; }
-  /** Get the height of this Graph at a 100% zoom level */
-  public int getBaseWidth () { return _relWidth; }
-
-  /** Get the dimensions of this Graph at the current zoom level in pixels */
-  public Dimension getSize() { return new Dimension(width,height); }
-
-  /** Get the dimensions of this Graph at a 100% zoom level in pixels */
-  public Dimension getBaseSize() { return new Dimension(_relWidth,_relHeight); }
-
-  /** Get the X coordinate of this Graph relative to it's owners upper left
-   * corner */
-  public int getX () { return loc.x; }
-
-  public int getBaseX () { return _baseLoc.x; }
-
-  /** Get the Y coordinate of this Graph relative to it's owners upper left
-   * corner
-   * @deprecated Use getBaseY() */
-  public int getY () { return loc.y; }
-
-  public int getBaseY () { return _baseLoc.y; }
-
-  /** Get the location of this Graph at the current zoom level relative to
-   *  its owners upper left corner.
-   *  @deprecated Use getBasePoint() */
-  public Point getPoint() { return loc; }
-
-  /** Get the location of this Graph at the current zoom level relative to
-   *  its owners uppes left corner. */
-  public Point getBasePoint() { return _baseLoc; }
-
-  /** Get the (absolute) location of this Graph at the current zoom level */
-  public Point getAbsoluteLocation () {
-    // recursivly find the absolute location of this Graph
-    if (_graphicalRoot) {
-        return loc;
-    } else {
-      if (_owner != null) {
-        Point ownerLoc = _owner.getAbsoluteLocation();
-        Point thisLoc = new Point(loc);
-        thisLoc.translate (ownerLoc.x,ownerLoc.y);
-        return thisLoc;
-      } else {
-        // no owner, this Graph coordinates are absolute
-        return loc;
-      }
-    }
-  }
-
-  /** Transform given relative coordinate to an absolute coordinate */
-  public Point resolveLocation (Point rel) {
-    if (rel == null) return null;
-    Point abs = getAbsoluteLocation();
-    abs.translate(rel.x,rel.y);
-    return abs;
-  }
-
-  /** Set the Graphs relative X coordinate */
-  public void setX (int x) { loc.x = x; }
-
-  public void setBaseX(int x) { _baseLoc.x = x; }
-
-  /** Set the Graphs relative Y coordinate */
-  public void setY (int y) { loc.y = y; }
-
-  public void setBaseY (int y) { _baseLoc.y = y; }
-
-  /** Set the base location of this Graph. This is the location of the Graph
-   *  at a 100% zoom level. This method is called by the auto-layout managers */
-  public void setBaseLocation(Point loc) { _baseLoc = loc; }
-
-  /** Set the heigth of this Graph */
-  public void setHeight (int h) {
-    if (h >= 0) height = h;
-    sizeChanged();
-  }
-  /** Set the width of this Graph */
-  public void setWidth (int w) {
-    if (w >= 0) width = w;
-    sizeChanged();
-  }
-
-  /** Change the size of this Graph */
-  public void setSize(Dimension d) {
-    width = (int)d.getWidth();
-    height = (int)d.getHeight();
-    //sizeChanged();
-  }
-
-  /** Change the size of this Graph */
-  public void setBaseSize(Dimension d) {
-    _relWidth = (int)d.getWidth();
-    _relHeight = (int)d.getHeight();
-  }
-
-  /** Does the Graph have its dimensions set? */
-  public boolean isEmpty () {
-    if (_relWidth == 0 || _relHeight == 0) return true;
-    else return false;
-  }
-
-  /** (re)set the location/dimension of this Graph */
-  public void setFrame (int x, int y, int w, int h) {
-    loc.x = x;
-    loc.y = y;
-    if (w >= 0) width = w;
-    if (h >= 0) height = h;
-  }
-
-  public void setRect (double x, double y, double w, double h) {
-    setFrame ((int)x,(int)y,(int)w,(int)h);
-  }
-
-  /**
-   * Set this Graph parent. A parent is the Graph that contains this Graph
-   * in case of a composite. This method will copy the GraphManager of its
-   * parent by calling getGraphManager().
-   *
-   * @see GraphComposite
-   */
-  public void setOwner (GraphComposite owner) {
-    _owner = owner;
-  }
-
-  /**
-   * Select/deselect graph
-   */
-  public void setSelected (boolean selected) {
-    _selected = selected;
-    this.connectionShowMode(selected);
-  }
-
-  /** Is this Graph selected? */
-  public boolean isSelected () { return _selected; }
-
-  /** Set visibility */
-  public void setVisible (boolean visible) {
-    if (visible) {
-      _visible = 0;
-    } else {
-      _visible = 1;
-    }
-  }
-
-  /** Is this Graph visible? */
-  public boolean isVisible () {
-    //return _visible && canBeDrawn();
-    return (_visible==0);
-  }
-
-  /** Returns the Graphs parent. Null if it hasn't any */
-  public GraphComposite getOwner () { return _owner; }
-
-  // --- -- - - - - - -- - - -- - -- -   --  - - - -- -   -- - - -- - - --- -
-  // Methods used for connecting this Graph to other Graphs
-  // - -- -- - - -- - - -- - - - - - -- -- -- -- --- ----- -- -- - -- - --- -
-
-  /** Provides access to the incoming Connections */
-  public Connection getInConnection (int index) {
-    if (index >= inConn.size()) return null;
-    return (Connection)inConn.get(index);
-  }
-
-  /** Provides access to the outgoing Connections */
-  public Connection getOutConnection (int index) {
-    if (index >= outConn.size()) return null;
-    return (Connection)outConn.get(index);
-  }
-
-  /** Retreive the number of incoming connections */
-  public int nrInConnections ()
-  {
-    return inConn.size();
-  }
-
-  /** Retreive the number of outgoing connections */
-  public int nrOutConnections ()
-  {
-    return outConn.size();
-  }
-
-  /** Notify this Graph that it is part of a Connection between two Graphs */
-  public void registerConnection (Connection connection)
-  {
-    if (connection.graphIn == this) inConn.add(connection);
-    else if (connection.graphOut == this) outConn.add(connection);
-    //TODO: else throw an exception
-  }
-
-  /** Connect this graph to the specified graph using the specified connection.*/
-  public Connection connectTo (Graph graph, Connection connection) {
-    connection.graphOut = this;
-    connection.graphIn = graph;
-    graph.registerConnection(connection);
-    outConn.add(connection);
-    return connection;
-  }
-
-  /** Create a unidirectional connection. A handler to the created Connection
-   * is returned. */
-  public Connection connectTo (Graph graph)
-  {
-    Connection connection = new Connection (this,graph);
-    return connectTo(graph,connection);
-  }
-
-  /** Determine if this Graph is connected to the selected Graph in any
-   * direction */
-  public boolean isConnectedTo (Graph graph)
-  {
-    for (int i=0; i<outConn.size(); i++)
-    {
-      if (((Connection)outConn.get(i)).graphIn == graph) return true;
-    }
-    for (int i=0; i<inConn.size(); i++)
-    {
-      if (((Connection)inConn.get(i)).graphOut == graph) return true;
-    }
-    return false;
-  }
-
-  /** Determine if this Graph is already connected to any other Graph (input) */
-  public boolean hasInputConnections () { return inConn.size() > 0; }
-
-  /** Determine if this Graph is already connected to any other Graph (output) */
-  public boolean hasOutputConnections () { return outConn.size() > 0; }
-
-  /**
-   * Ask this Graph for a connection coordinate in specified orientation.
-   * The returned coordinate is absolute. If a point cannot be determined it
-   * returns null.
-   */
-  public Point getConnectionPoint (boolean incoming, Connection con) {
-    Point point;
-    // are we visible?
-    if ((_visible==0) && canBeDrawn()) {
-      if (incoming) {
-        point = resolveLocation (new Point(0,height/2));
-      } else {
-        point = resolveLocation (new Point(width,height/2));
-      }
-    } else {
-      if (_owner == null) return null;        // can't create connection point
-      point = _owner.getConnectionPoint(incoming,con);
-    }
-    return point;
-  }
-
-  /** Returns 'this' when this Graph contains the specified point. If not
-   * it returns null. */
-  public Graph containerOf (Point p) {
-    Point absCoor = getAbsoluteLocation();
-    if (p.getX() >= absCoor.getX() && p.getX() <= absCoor.getX()+width &&
-      p.getY() >= absCoor.getY() && p.getY() <= absCoor.getY()+height) {
-      return this;
-    } else return null;
-  }
-
-  /** Add this to bounded when the Graph lies within the specified bounds */
-  public void enumBoundedGraphs (Rectangle bounds, Vector bounded) {
-    Point absC = getAbsoluteLocation();
-    Rectangle absR = new Rectangle(absC,new Dimension(width,height));
-    if (bounds.contains(absR)) {
-      bounded.add(this);
-    }
-  }
-
-  /** Sets the composite tree level of this Graph.  */
-  public void setTreeLevel (int level) {
-    _treeLevel = level;
-    manager.suggestTreeHeight(_treeLevel);
-  }
-
-  /** Returns the level of this Graph in the composite tree. */
-  public int getTreeLevel () { return _treeLevel; }
-
-  /** Determines if this Graph can be drawn. It checks if the Graph has enough
-   *  space (taken the given zoomlevel) to draw itself. Override this function
-   *  to specify what conditions should be met for the Graph to draw itself. */
-  public boolean canBeDrawn() { return true; }
-
-  public boolean connectionShowMode(boolean bold) {
-    Connection c;
-    for (int i=0; i<inConn.size(); i++) {
-      c = (Connection)inConn.get(i);
-      c.setSelected(bold);
-    }
-    for (int i=0; i<outConn.size(); i++) {
-      c = (Connection)outConn.get(i);
-      c.setSelected(bold);
-    }
-    return true;
-  }
-
-  /** Reset the dimensions of this Graph */
-  protected void resetDim () { height=0; width=0; _relHeight=0; _relWidth=0; }
-
-  /** Returns all interesting properties of this Graph. Overload this method
-   *  to add your own interesting properties. */
-  public Config getProperties() {
-    Config p = new Config();
-    p.putString("Name",_name);
-    return p;
-  }
-
-  /** Overload this function if you want to relate an icon with this Graph */
-  public Icon getIcon() {
-    return null;
-  }
-
-  final static int LINE_SPACING = 5;
-  final static int PROP_HORZ_SPACING = 50;
-  final static int PROP_INDENT = 100;
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphActionEvent.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphActionEvent.java
deleted file mode 100644
index 1ec12c2257c6fb41f7405a808d43001c6fb70951..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphActionEvent.java
+++ /dev/null
@@ -1,40 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.EventObject;
-
-public class GraphActionEvent extends EventObject {
-
-  public GraphActionEvent(Object source) {
-    super(source);
-    // REVISIT: implement
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphActionListener.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphActionListener.java
deleted file mode 100644
index 0717fd81a2304feeb5e81eede2024d995e98751e..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphActionListener.java
+++ /dev/null
@@ -1,34 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Interface GraphActionListener
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public interface GraphActionListener {
-  // REVISIT: implement
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphComposite.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphComposite.java
deleted file mode 100644
index c6b852d63aaa79f71f24fa93979ab03c6d5a8e06..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphComposite.java
+++ /dev/null
@@ -1,428 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import java.awt.*;
-import kiwi.util.Config;
-
-/**
- * This class represents a composition of multiple Graphs. It contains
- * methods for adding Graph to the composite (these functions will resize
- * the composite Graph according to the dimensions of the added Graph)
- *
- * A composition has its own coordinate system with (0,0) set to the
- * upper left coordinates of the composition.
- *
- * The default GraphComposite displays a filled rectangle to visualize its
- * boundaries. You can disable enable this property with enableBorder().
- *
- * A GraphComposite can be in two different states. In the first state
- * it will not paint its children and it will calculate its own coordinates.
- * In this state the GraphComposite can use its entire client area to draw on.
- * In the second state it will draw its children. The methode setState()
- * can switch between these states.
- *
- * The layout of components within the GraphComposite is controlled by a
- * LayoutController. The dimensions of the GraphComposite are controlled
- * by a DimensionController. The default DimensionController inflates the
- * GraphComposite so that its children just fit. Every state has a
- * DimensionController attached to it.
- */
-public class GraphComposite extends Graph {
-
-  final static int NR_OF_STATES = 2;
-
-  /** State in which the GraphComposite will not draw its children */
-  final static int STATE_INDEPENDENT = 0;
-  /** State in which the GraphComposite will draw its children */
-  final static int STATE_DRAWCHILDREN = 1;
-
-  /** Holds the GraphComposites' children */
-  protected ArrayList _graphList;
-  /** The manager that handles the layout of components in this Graph */
-  protected LayoutController _layoutController;
-  /** The managers that handle the dimensions of this GraphComposite */
-  protected DimensionController dimController[] =
-    new DimensionController[NR_OF_STATES];
-  /** Current horizontal spacing between Graphs */
-  private int _horzSpacing;
-  /** Current vertical spacing between Graphs */
-  private int _vertSpacing;
-  /** Used by function getFirstChild() and getNextChild() */
-  private int _currentChild=0;
-  /** Current state */
-  private int state = STATE_DRAWCHILDREN;
-
-  public GraphComposite(GraphManager man) {
-    super(man,0,0,"GraphComposite"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphComposite(GraphManager man, String name) {
-    super (man,0,0,name);
-    defaultSettings();
-  }
-
-  /** Create an empty composite with no dimensions. */
-  public GraphComposite(GraphManager man, int x, int y, String name) {
-    super (man,x,y,name);
-    defaultSettings();
-  }
-
-  private void defaultSettings () {
-    _graphList = new ArrayList ();
-    _horzSpacing = 0;
-    _vertSpacing = 0;
-    setDimCtrl(STATE_DRAWCHILDREN,new DimensionController()); // default 'inflater'
-  }
-
-  /** Select layout */
-  public void setLayoutController (LayoutController layoutController) {
-    _layoutController = layoutController;
-    _layoutController.setGraphComposite(this);
-  }
-
-  /** Retreive layout manager. Null if not set. */
-  public LayoutController getLayoutController () { return _layoutController; }
-
-  /** Registers DimensionController with this component. The state specifies
-   *  the GraphComposite state in which this DimensionController will be
-   *  active. This can be STATE_DRAWCHILDREN or STATE_INDEPENDENT. */
-  public void setDimCtrl (int state, DimensionController dimController) {
-    this.dimController[state] = dimController;
-    this.dimController[state].setGraphComposite(this);
-  }
-
-  /** Returns registered DimensionController for a specified state. The
-   *  state can be STATE_DRAWCHILDREN or STATE_INDEPENDENT. It returns null
-   *  if no DimensionController has been set for the specified state. */
-  public DimensionController getDimCtrl(int state) { return dimController[state]; }
-
-  /** Returns the DimensionController for the current state. */
-  public DimensionController getDimCtrl() { return dimController[state]; }
-
-  /** Set visibility. The method sets the same value to all its children when
-   *  its state flag is set to STATE_DRAWCHILDREN. */
-  public void setVisible (boolean visible) {
-    super.setVisible(visible);
-    if (state == STATE_DRAWCHILDREN) {
-      for (int i=0; i<numberOfGraphs(); i++) {
-        getGraph(i).setVisible(visible);
-      }
-    }
-  }
-
-  protected void transformDimensions() {
-    super.transformDimensions();
-    _horzSpacing = (int)(getZoomLevel() * getDimCtrl(state).getHorizontalSpacing());
-    _vertSpacing = (int)(getZoomLevel() * getDimCtrl(state).getVerticalSpacing());
-  }
-
-  /** Recalc the dimensions of this Graph using the given zoom level. */
-  public void setZoomLevel (double level) {
-    super.setZoomLevel(level);
-    for (int i=0; i<_graphList.size(); i++) {
-      ((Graph)_graphList.get(i)).setZoomLevel(level);
-    }
-  }
-
-  /** Change state of this GraphComposite. Can be STATE_INDEPENDANT,
-   *  STATE_DRAWCHILDREN. The method will inform the GraphManager that it
-   *  should relayout the entire tree, because of a size change. */
-  public void setState(int state, boolean recurse) {
-    setState(state);
-    if (recurse) {
-      for (int i=0; i<numberOfGraphs(); i++) {
-        Graph graph = getGraph(i);
-        if (graph instanceof GraphComposite) {
-          ((GraphComposite)graph).setState(state,true);
-        }
-      }
-    }
-  }
-
-  /** Change state of this GraphComposte. Can be STATE_INDEPENDANT,
-   *  STATE_DRAWCHILDREN. The method will inform the GraphManager that it
-   *  should relayout the entire tree, because of a size change. */
-  public void setState(int state) {
-    if (dimController[state] == null) {
-      System.out.println("Warning: No dimension controller exists for specified state.");
-      return;
-    }
-    this.state = state;
-    getGraphManager().setDimensionsChanged();
-
-    if (this.state == STATE_INDEPENDENT) {
-      for (int i=0; i<numberOfGraphs(); i++) {
-        getGraph(i).setVisible(false);
-      }
-    } else
-    if (this.state == STATE_DRAWCHILDREN) {
-      for (int i=0; i<numberOfGraphs(); i++) {
-        getGraph(i).setVisible(true);
-      }
-    }
-  }
-
-  public void setGraphManager(GraphManager man) {
-    super.setGraphManager(man);
-    for (int i=0; i<numberOfGraphs(); i++) {
-      getGraph(i).setGraphManager(man);
-    }
-  }
-
-  /** Returns either STATE_INDEPENDANT or STATE_DRAWCHILDREN. */
-  public int getState() { return state; }
-
-  /** Paint this composite. When its is in state STATE_DRAWCHILDREN it will
-   *  calls <code>paint()</code> on all its children,
-   *  after some checks have been made (visibility, withinh clip bounds, etc)
-   *  When state is STATE_INDEPENDANT, it will call its paintGraph method. */
-  public boolean paint () {
-    if (manager == null) return false;
-    if (manager.getGraphics() == null) return false;
-    if ((this.numberOfGraphs() == 0)) return  false; // empty composite
-    Graphics2D g = manager.getGraphics();
-    Point point = getAbsoluteLocation();        // Resolve location
-    if (hasVisibleBorders()) paintBorder(g,point);
-    if (state == STATE_INDEPENDENT) {
-      if (hasVisibleClient()) paintGraph(g,point);
-      return true;
-    } else {
-      if (!isVisible()) return false;
-      for (int i=0; i<_graphList.size(); i++) {
-        Graph graph = (Graph)_graphList.get(i);
-        if (!graph.isVisible()) continue;
-        if (graph.isEmpty()) continue;
-        if (!graph.canBeDrawn()) continue;
-        Rectangle rect = manager.getGraphics().getClipBounds();
-        Point p = graph.getAbsoluteLocation();
-        //REVISIT: avoid object creation at this point
-        if (!rect.intersects(new Rectangle(p,       // within bounds?
-          new Dimension(graph.getWidth(),graph.getHeight())))) continue;
-        graph.paint();
-      }
-      return true;
-    }
-  }
-
-  /** Paint all connections and call <code>paintConnections()</code> on all
-   *  its children. root must be set to true */
-  public void paintConnections () {
-    super.paintConnections();
-    for (int i=0; i<numberOfGraphs(); i++) getGraph(i).paintConnections();
-  }
-
-  /** Display the name of this Graph.
-   *  @param    abs   Absolute location of upper-left corner of Graph */
-  protected void paintGraph(Graphics2D g, Point abs) {
-    Font font = new Font("arial",Font.PLAIN,(int)(11));
-    FontMetrics fontMetr = g.getFontMetrics(font);
-    g.setFont(font);
-    int rs = (int)(0.25*getRoundSize());
-    int textWidth = fontMetr.stringWidth(getName());
-    if (textWidth >= getWidth()) {                            // check if name fits
-      return;                                                 //   nope
-    }
-    g.drawString(getName(),(getWidth()/2)-(textWidth/2)+abs.x,    // center horizontally
-                 abs.y+fontMetr.getMaxAscent()+rs);
-  }
-
-  /** Relayout subtree of this GraphComposite. Should only be called on
-   *  the root, or you'll mess up your layout! */
-  public void layoutAll () {
-    if (_layoutController == null) return;
-    _layoutController.preprocess();
-    layoutChildren();
-    if (_layoutController.canBeDone()) _layoutController.doLayout();
-    dimController[state].setDimensions();
-  }
-
-  /** Calls layoutAll() on all its children. */
-  private boolean layoutChildren () {
-    for (int i=0; i<_graphList.size(); i++) {
-      Graph graph = (Graph)_graphList.get(i);
-      if (graph instanceof GraphComposite)
-        ((GraphComposite)graph).layoutAll();
-    }
-    return true;
-  }
-
-  /** Sets the composite tree level of this Graph.  */
-  public void setTreeLevel (int level) {
-    super.setTreeLevel(level);
-    for (int i=0; i<numberOfGraphs(); i++) {
-      getGraph(i).setTreeLevel(level+1);
-    }
-  }
-
-  /** set a Graph at a specific index. Index should be a value in the range
-   *  0 - numberOfGraphs()-1 */
-  public void setGraph(Graph graph, int index) {
-    if ( (index < 0) || (index >= numberOfGraphs()) ) return;
-    if (state == STATE_INDEPENDENT) graph.setVisible(false);
-    if (!isVisible()) graph.setVisible(false);
-    graph.setOwner(this);
-    _graphList.set(index,graph);
-  }
-
-  /** Add a Graph to the composite. */
-  public void addGraph (Graph graph) {
-    if (state == STATE_INDEPENDENT) graph.setVisible(false);
-    if (!isVisible()) graph.setVisible(false);
-    graph.setOwner (this);
-    _graphList.add(graph);
-  }
-
-  /** Remove a Graph from the composite. */
-  public void removeGraph (Graph graph) {
-    graph.setOwner(null);
-    _graphList.remove(graph);
-    //treeStructureChanged();
-  }
-
-  /** Remove a Graph from the composite. */
-  public void removeGraph (int index) {
-    if (index < _graphList.size()) {
-      this.getGraph(index).setOwner(null);
-      _graphList.remove(index);
-      //treeStructureChanged();
-    } else {
-      System.err.println("GraphComposite: Tried to remove nonexis. Graph");
-    }
-  }
-
-  /** Remove all Graph from the composite */
-  public void removeAllGraphs() {
-    for (int i=0; i<_graphList.size(); i++) {
-      this.getGraph(i).setOwner(null);
-    }
-    _graphList.clear();
-  }
-
-  /** Replace a Graph at a given index with the specified Graph */
-  public void replaceGraph(int index, Graph graph) {
-    _graphList.remove(index);
-    graph.setOwner(this);
-    _graphList.add(index,graph);
-  }
-
-  /** This method provides access to the Graph in the composition by index */
-  public Graph getGraph (int index) {
-    return (index < _graphList.size()) ? (Graph)_graphList.get(index) : null;
-  }
-
-  /** Returns the number of Graphs in this composition */
-  public int numberOfGraphs () { return _graphList.size(); }
-
-  /**
-   * This method returns the index of the specified Graph in this composite.
-   * If the Graph is not part of this composite it returns -1.
-   */
-  public int getGraphIndex (Graph graph) {
-    for (int i=0; i<_graphList.size(); i++)
-      if (_graphList.get(i)==graph) return i;
-    return -1;
-  }
-
-  /** Get a connection point. A basic GraphComposite cannot determine a
-   * connection point, so it will always pass the request to its owner.
-   * When no connection point could be determined, the method returns null.
-   * Overload this method when you want a composite to return a connection
-   * point. */
-  public Point getConnectionPoint (boolean incoming, Connection con) {
-    GraphComposite owner = getOwner();
-    if (owner != null) return owner.getConnectionPoint(incoming,con);
-    else return null;
-  }
-
-  /** Returns the Graph which contains the specified point. Return null if
-   * not any of the Graphs contains this point */
-  public Graph containerOf (Point p) {
-    if (super.containerOf(p)!=null) {
-      Graph graph;
-      for (int i=0; i<_graphList.size(); i++) {
-        graph = ((Graph)_graphList.get(i)).containerOf(p);
-        if (graph != null) if (graph.hasVisibleBorders()&&
-            graph.canBeDrawn()) return graph; else break;
-      }
-      return this;
-    }
-    return null;
-  }
-
-  /** Add this to bounded when the Graph lies within the specified bounds.
-   *  Recusivly calls enumBoundedGraphs() on all its children. */
-  public void enumBoundedGraphs (Rectangle bounds, Vector bounded) {
-    super.enumBoundedGraphs(bounds,bounded);
-    if (isVisible()) {
-      for (int i=0; i<numberOfGraphs(); i++) {
-        getGraph(i).enumBoundedGraphs(bounds,bounded);
-      }
-    }
-  }
-
-  /** Does this GraphComposite contain the specified Graph? */
-  public boolean contains(Graph graph) {
-    for (int i=0; i<_graphList.size(); i++) {
-      if ((Graph)_graphList.get(i) == graph) return true;
-    }
-    return false;
-  }
-
-  /** Return width of largest composite Graph (based at zoom level of 100%) */
-  public int maxHeightGraph() {
-    int maxHeight=0;
-    for (int i=0; i<this.numberOfGraphs(); i++) {
-      Graph graph = this.getGraph(i);
-      if (graph.isVisible()) {
-        if (maxHeight < graph.getBaseHeight()) {
-          maxHeight = graph.getBaseHeight();
-        }
-      }
-    }
-    return maxHeight;
-  }
-
-  /** Return height of heighest composite Graph (based at zoom level of 100%) */
-  public int maxWidthGraph() {
-    int maxWidth=0;
-    for (int i=0; i<this.numberOfGraphs(); i++) {
-      Graph graph = this.getGraph(i);
-      if (graph.isVisible()) {
-        if (maxWidth < graph.getBaseWidth()) {
-          maxWidth = graph.getBaseWidth();
-        }
-      }
-    }
-    return maxWidth;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphDataHolder.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphDataHolder.java
deleted file mode 100644
index fe60d2ef3310b7cc95e521c99130d469d1515efd..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphDataHolder.java
+++ /dev/null
@@ -1,146 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Visual LofarSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.awt.*;
-import kiwi.util.Config;
-
-/**
- * A DataHolder is a specific Graph that can be added to the Step and Simul
- * composites. A DataHolder can be either used for input or output. Specific
- * DataHolders should inherit from this class.
- */
-public class GraphDataHolder extends Graph {
-
-  /**
-   * Is this an input DataHolder?
-   */
-  boolean _inputDataHolder;
-
-  public GraphDataHolder() {
-    super(null,0,0,20,33,"DataHolder"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphDataHolder(GraphManager man, boolean input) {
-    super(man,0,0,20,33,"DataHolder"+followUp++);
-    _inputDataHolder = input;
-    defaultSettings();
-  }
-
-  public GraphDataHolder(GraphManager man, String name,boolean input) {
-    super(man,0,0,20,33,name);
-    _inputDataHolder = input;
-    defaultSettings();
-  }
-
-  public GraphStep getOwnerStep() {
-    return (GraphStep)getOwner().getOwner();
-  }
-
-  void defaultSettings()
-  {
-    setBackground(Color.orange);
-    setBaseRoundSize(0);
-  }
-
-  /**
-   * Create DataHolder connections. Only one connection can be made per
-   * DataHolder. When an attemption is made to create multiple connections
-   * a warning Message will be send to all MessageListeners
-   */
-  public Connection connectTo (Graph graph, Connection connection)
-  {
-    connection.graphOut = this;
-    connection.graphIn = graph;
-    if (! (graph instanceof GraphDataHolder)) {
-      manager.fireMessage(new MessageGraph(this,
-        "Attempt to connect "+this+" to "
-        + graph +" failed (they are incompatible)",MessageGraph.WARNING));
-      return null;
-    }
-    if (!this.hasOutputConnections()) {
-      if (!graph.hasInputConnections()) {
-        graph.registerConnection(connection);
-        outConn.add(connection);
-        return connection;
-      } else {
-        manager.fireMessage(new MessageGraph(this,
-          "Attempt to connect "+this+" to "+graph+" failed (" + graph
-            + " already has its input connected)",MessageGraph.WARNING));
-        return null;
-      }
-    } else {
-      manager.fireMessage(new MessageGraph(this,
-        "Attempt to connect "+this+" to "+graph+" failed (" + this
-          + " already has an output connection)",MessageGraph.WARNING));
-      return null;
-    }
-  }
-
-  /**
-   * Create DataHolder connections. Only one connection can be made per
-   * DataHolder. When an attemption is made to create multiple connections
-   * a warning Message will be send to all MessageListeners
-   */
-  public Connection connectTo (Graph graph)
-  {
-    Connection connection = new Connection (this,graph);
-    return connectTo(graph,connection);
-  }
-
-  public void setInput(boolean input) { _inputDataHolder = input; }
-
-  /** Is this an input DataHolder? */
-  public boolean isInput () { return _inputDataHolder; }
-
-  /** Is this an output DataHolder? */
-  public boolean isOutput () { return !_inputDataHolder; }
-
-  public boolean canBeDrawn() {
-    //if (getZoomLevel() < 0.4) return false; else return true;
-    //if (getOwner().getVerticalSpacing() < 10) return false; else return true;
-    return true;
-  }
-
-  /** Alter size of this GraphDataHolder */
-  public void setTreeLevel (int level) {
-    super.setTreeLevel(level);
-    setBaseSize(new Dimension ((int)(20*(1.0/level*6)),(int)(33*(1.0/level*6))));
-  }
-
-  public String getClassName() { return ""; }
-
-  public Config getProperties() {
-    Config p = super.getProperties();
-    p.putString("Class",getClassName());
-    return p;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphDiagram.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphDiagram.java
deleted file mode 100644
index ae892549eec65b3842b527ee792ffd240b0b445b..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphDiagram.java
+++ /dev/null
@@ -1,100 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        class GraphDiagram<p>
- * Description:  <p>
- * Copyright:    Copyright (c) <p>
- * Company:      Astron<p>
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import java.util.*;
-import java.awt.*;
-import java.io.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-
-/**
- * A GraphDiagram is a collection of GraphComposites and Connections.
- *
- * Notes:
- * It should auto-layout the Graphs based on the Connections.
- * It should provide different states in which diagrams can be displayed.
- */
-public class GraphDiagram extends GraphSimul {
-  ArrayList _connectionList;
-
-  public GraphDiagram(GraphManager manager) {
-    super (manager,"GraphDiagram"+followUp);
-    defaultSettings();
-  }
-
-  public GraphDiagram(GraphManager manager,String name) {
-    super (manager,name);
-    defaultSettings();
-  }
-
-  private void defaultSettings() {
-    setBackground(Color.white);
-    setBaseRoundSize(0);
-    getDimCtrl().setSpacing(10,100);
-  }
-
-  /** Overloaded from Graph.canBeDrawn(). Always returns true. */
-  public boolean canBeDrawn() { return true; }
-
-  /** Overloaded for performance measurements */
-  public void layoutAll() {
-    Date date1 = new Date();
-    super.layoutAll();
-    Date date2 = new Date();
-    long run = date2.getTime() - date1.getTime();
-    manager.fireMessage(new MessageGraph(this,"Auto-layout completed ("
-                     + run + " ms)"));
-  }
-
-  public void setSelected(boolean selected) { /* cannot select root */ }
-
-  /** Stores Graphics2D state and sets it back after drawing is completed */
-  public boolean paint ()
-  {
-    Graphics2D g = manager.getGraphics();
-    Stroke stroke = g.getStroke();
-    Paint paint = g.getPaint();
-    boolean b = super.paint();
-    g.setPaint(paint);
-    g.setStroke(stroke);
-    return b;
-  }
-
-  public void paintConnections () {
-    Graphics2D g = manager.getGraphics();
-    Stroke stroke = g.getStroke();
-    Paint paint = g.getPaint();
-    super.paintConnections();
-    g.setPaint(paint);
-    g.setStroke(stroke);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphException.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphException.java
deleted file mode 100644
index ea943be94e11b36641e1e9143a5761dbb5b3924a..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphException.java
+++ /dev/null
@@ -1,127 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        <p>
- * Description:  <p>
- * Copyright:    Copyright (c) <p>
- * Company:      <p>
- * @author
- * @version 1.0
- */
-
-public class GraphException extends Exception {
-
-  /**
-   * Create a new GraphException.
-   *
-   * @param message The error or warning message.
-   * @see org.xml.sax.Parser#setLocale
-   */
-  public GraphException (String message) {
-    super(message);
-    this.exception = null;
-  }
-
-  /**
-   * Create a new GraphException wrapping an existing exception.
-   * GraphException
-   * <p>The existing exception will be embedded in the new
-   * one, and its message will become the default message for
-   * the GraphException.</p>
-   *
-   * @param e The exception to be wrapped in a GraphException.
-   */
-  public GraphException (Exception e)
-  {
-    super();
-    this.exception = e;
-  }
-
-  /**
-   * Create a new GraphException from an existing exception.
-   *
-   * <p>The existing exception will be embedded in the new
-   * one, but the new exception will have its own message.</p>
-   *
-   * @param message The detail message.
-   * @param e The exception to be wrapped in a GraphException.
-   */
-  public GraphException (String message, Exception e)
-  {
-    super(message);
-    this.exception = e;
-  }
-
-  /**
-   * Return a detail message for this exception.
-   *
-   * <p>If there is an embedded exception, and if the GraphException
-   * has no detail message of its own, this method will return
-   * the detail message from the embedded exception.</p>
-   *
-   * @return The error or warning message.
-   */
-  public String getMessage ()
-  {
-    String message = super.getMessage();
-
-    if (message == null && exception != null) {
-      return exception.getMessage();
-    } else {
-      return message;
-    }
-  }
-
-  /**
-   * Return the embedded exception, if any.
-   *
-   * @return The embedded exception, or null if there is none.
-   */
-  public Exception getException ()
-  {
-    return exception;
-  }
-
-  /**
-   * Override toString to pick up any embedded exception.
-   *
-   * @return A string representation of this exception.
-   */
-  public String toString ()
-  {
-    if (exception != null) {
-      return exception.toString();
-    } else {
-      return super.toString();
-    }
-  }
-
-  //////////////////////////////////////////////////////////////////////
-  // Internal state.
-  //////////////////////////////////////////////////////////////////////
-
-  /**
-   * @serial The embedded exception if tunnelling, or null.
-   */
-  private Exception exception;
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphManager.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphManager.java
deleted file mode 100644
index 6b992342aee05212d18dd30618b717af64124c31..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphManager.java
+++ /dev/null
@@ -1,155 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Class GraphManager
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import java.awt.*;
-import javax.swing.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-
-/** The GraphManager provides a Graph tree with valueable information.
- *  Every Graph in a Graph tree holds a reference to the GraphManager.
- *  Graphs can register a GraphActionListener with the GraphManager in order
- *  to be notified when some specific action occurs.*/
-public class GraphManager {
-
-  protected ArrayList _mlisteners = new ArrayList();
-  private Graphics2D _g2D;
-  private JComponent _container;
-  private SelectionManager selMan;
-  private int _treeHeight = 0;
-  private boolean dimChanged = false;
-
-  public GraphManager() {
-    selMan = new SelectionManager();
-  }
-
-  /** Get a Graphics context to draw on */
-  public Graphics2D getGraphics() { return _g2D; }
-
-  /** Set the Graphics context the Graphs must draw on. */
-  public void setGraphics(Graphics2D g2D) {
-    _g2D = g2D;
-    _g2D.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,
-      RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
-  }
-
-  /** Registers a GraphActionListener. The registered listener will receive
-   *  all GraphActionEvents that are send through the GraphManager. */
-  public void addGraphActionListener(GraphActionListener listener) {
-    // REVISIT: implement
-    throw new java.lang.UnsupportedOperationException();
-  }
-
-  /** Registers a GraphActionListener. The registered listener will receive
-   *  all GraphActionEvents which class is an instance of the specified
-   *  GraphActionEvent class. */
-  public void addGraphActionListener(GraphActionListener listener,
-                                     GraphActionEvent event) {
-    // REVISIT: implement
-    throw new java.lang.UnsupportedOperationException();
-  }
-
-  /** Unregisters the specified GraphActionListener.*/
-  public void removeGraphActionListener(GraphActionListener listener) {
-    // REVISIT: implement
-    throw new java.lang.UnsupportedOperationException();
-  }
-
-  /** Dispatches the specified event to all listeners. */
-  public void fireGraphAction(GraphActionEvent event) {
-    // REVISIT: implement
-    throw new java.lang.UnsupportedOperationException();
-  }
-
-  /** Registers a MessageListener with this Graph. The Graph will dispatch
-   *  user messages to all its registered MessageListeners. */
-  public void addMessageListener (MessageListener messageListener) {
-    _mlisteners.add(messageListener);
-  }
-
-  /** Unregisters the specified MessageListener */
-  public void removeMessageListener (MessageListener messageListener) {
-    _mlisteners.remove(messageListener);
-  }
-
-  public MessageListener[] getMessageListeners () {
-    MessageListener ml [] = new MessageListener[_mlisteners.size()];
-    for (int i=0; i<ml.length; i++) {
-      ml[i] = (MessageListener)_mlisteners.get(i);
-    }
-    return ml;
-  }
-
-  /** Dispatch the specified MessageEvent to all the registered listeners. */
-  protected void fireMessage(MessageEvent event) {
-    if (_mlisteners.size() == 0) {
-      System.out.println(event);
-    } else {
-      for (int i=0; i<_mlisteners.size(); i++) {
-        ((MessageListener)_mlisteners.get(i)).note(event);
-      }
-    }
-  }
-
-  /** Sets the JComponent on which this Graph is drawn. If a method needs to
-   *  resolve the container of a Graph, it can call the getContainer() method
-   *  on its GraphManager.
-   *
-   *   @see getContainer */
-  public void setContainer(JComponent container) {
-    _container = container;
-  }
-
-  /** Retreives the JComponent on which this Graph is drawn. Returns null if
-   *  this Graph is not drawn on a JComponent */
-  public JComponent getContainer() { return _container; }
-
-  public SelectionManager getSelectionManager() { return selMan; }
-
-  /** Every Graph call this method when it is added to the Graph tree. The
-   *  Graphs tell their level to the GraphManager, so he can keep track on
-   *  the height of the tree. */
-  public void suggestTreeHeight(int treeLevel) {
-    if (treeLevel > _treeHeight) _treeHeight = treeLevel;
-  }
-
-  public int getTreeHeight() { return _treeHeight; }
-
-  public void setDimensionsChanged() { dimChanged = true; }
-
-  public boolean dimensionsChanged() {
-    if (dimChanged) {
-      dimChanged = false;
-      return true;
-    } else return false;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphParamHolder.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphParamHolder.java
deleted file mode 100644
index d568c56c55fd40e6cb186e1f4bf6fa0b3e2415b9..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphParamHolder.java
+++ /dev/null
@@ -1,37 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        <p>
- * Description:  <p>
- * Copyright:    Copyright (c) <p>
- * Company:      <p>
- * @author
- * @version 1.0
- */
-
-public class GraphParamHolder extends Graph {
-
-  public GraphParamHolder(GraphManager man, String name) {
-    super(man,0,0,name);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSelectionEvent.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSelectionEvent.java
deleted file mode 100644
index 634e72e8681e9e19cd6a699c786f9f9e690a6c23..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSelectionEvent.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.astron.basesim;
-
-import java.util.EventObject;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class GraphSelectionEvent extends EventObject {
-
-  boolean added;
-  Graph graph;
-
-  public GraphSelectionEvent(Object source, Graph graph, boolean added) {
-    super(source);
-    this.added = added;
-    this.graph = graph;
-  }
-
-  public boolean isSelected() { return added; }
-  public Graph getGraph() { return graph; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSelectionListener.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSelectionListener.java
deleted file mode 100644
index 1727ae075374e38af268b96330ead54e32cf7c90..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSelectionListener.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.astron.basesim;
-
-import java.util.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public interface GraphSelectionListener extends EventListener {
-  public void valueChanged(GraphSelectionEvent e);
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSimul.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSimul.java
deleted file mode 100644
index 9c924c25d7880f0da4bd19560f3f1c5e2d42c8b2..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphSimul.java
+++ /dev/null
@@ -1,110 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Visual LofarSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import java.awt.*;
-import org.astron.util.*;
-import kiwi.util.Config;
-
-public class GraphSimul extends GraphStep {
-
-  final static Color defBackground = new Color(180,190,240);
-
-  LayoutSimul _layoutSimul = new LayoutSimul();
-
-  /** The WorkHolder of a Simul is not part of the diagram, but it is visible
-   *  when the Graph tree is displayed in a JTree. So we store it here.
-   *  @see BaseSimTreeModel*/
-  private GraphWorkHolder _gwh;
-
-  public GraphSimul() {
-    super (null,"GraphSimul"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphSimul(GraphManager man) {
-    super (man,"GraphSimul"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphSimul(GraphManager man, String name) {
-    super (man,name);
-    defaultSettings();
-  }
-
-  private void defaultSettings() {
-    setBackground(defBackground);
-    ((GraphComposite)this.getGraph(1)).setLayoutController(_layoutSimul);
-    getInnerComposite().setDimCtrl(STATE_INDEPENDENT,new DimCtrlStepCenter());
-    getDimCtrl().setSpacing(10,100);
-  }
-
-  /** Add WorkHolder to this Simul object. Although not visible in the
-   *  GraphSimul, the WorkHolder is stored in a member variable. (We must
-   *  store it, because the JTree does show it.) */
-  public void setWorkHolder(GraphWorkHolder workHolder) {
-    _gwh = workHolder;
-    // ugly workaround. needed for BaseSimTreeModel
-    GraphComposite gc = new GraphComposite(getGraphManager());
-    gc.setOwner(this);
-    _gwh.setOwner(gc);
-    _workHolderIsSet = true;
-  }
-
-  /** Returns the GraphWorkHolder of this GraphSimul. Returns null if not set.*/
-  public GraphWorkHolder getWorkHolder() { return _gwh; }
-
-  /** Returns true if this GraphSimul has a WorkHolder */
-  public boolean hasWorkHolder() { return _gwh != null; }
-
-  public int numberOfSteps() { return _compCore.numberOfGraphs(); }
-
-  public void addStep (GraphStep step) {
-    getInnerComposite().addGraph(step);
-  }
-
-  public GraphStep getStep(int index) {
-    return (GraphStep)getInnerComposite().getGraph(index);
-  }
-
-  public void setZoomLevel (double level) {
-    super.setZoomLevel(level);
-    if (_gwh != null) getWorkHolder().setZoomLevel(level);
-  }
-
-  /** Returns all interesting properties of this GraphStep. Overload this method
-   *  to add your own interesting properties. */
-  public Config getProperties() {
-    Config p = super.getProperties();
-    p.putInt("numberOfSteps",numberOfSteps());
-    return p;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphStep.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphStep.java
deleted file mode 100644
index 21cd645c39b74f5404eec665f28f744ce9af3eaf..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphStep.java
+++ /dev/null
@@ -1,348 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Visual LofarSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.awt.*;
-import java.util.*;
-
-/**
- * A Step is a kind of composite that holds a (centered) Workholder,
- * a set of input DataHolders and a set of output DataHolders.
- * <blockquote>
- * <em>Note: Although graphically a GraphStep CONTAINS DataHolders, in the
- * LofarSim model it's the WorkHolder that contains the DataHolders. This
- * gives a little trouble when parsing the model file when a WorkHolder
- * is encountered which should be placed in a Step which might not yet
- * be available. This can be overcome by parsing from the highest level (Simuls)
- * down to the lower levels (Steps->WorkHolders->DataHolders)</em>
- * </blockquote>
- */
-public class GraphStep extends GraphComposite {
-
-  /**
-   * Is a Workholder set and layed out in this Step?
-   */
-  boolean _workHolderIsSet;
-  /**
-   * Is a Paramholder set and layed out in this Step?
-   */
-  boolean _paramHolderIsSet;
-
-  protected GraphComposite _compInput; // contains input DataHolders
-  protected GraphComposite _compOutput; // contains output DataHolders
-  protected GraphComposite _compCore; // contains WorkHolder or Steps
-
-  private String _node;
-
-  boolean _init;
-
-  public GraphStep() {
-    super (null,0,0,"GraphStep"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphStep(GraphManager man) {
-    super (man,0,0,"GraphStep"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphStep(GraphManager man, String name) {
-    super (man,0,0,name);
-    defaultSettings();
-  }
-
-  private void defaultSettings ()
-  {
-    setBackground(Color.lightGray);
-    setLineColor(Color.black);
-    setBaseRoundSize(20);
-    _paramHolderIsSet = false;
-    _init = true; // for Step specific initialization
-    _compInput = new GraphComposite(getGraphManager());
-    _compInput.getDimCtrl().setSpacing (30,20);
-    _compInput.getDimCtrl().setSpacingFactor(0.05f,false);
-    _compOutput = new GraphComposite(getGraphManager());
-    _compOutput.getDimCtrl().setSpacing (30,20);
-    _compOutput.getDimCtrl().setSpacingFactor(0.05f,false);
-    _compInput.setLayoutController(
-      new LayoutDataHolder(LayoutDataHolder.STEP_INPUT));
-    _compInput.enableBorder(false);
-    _compInput.enableClientDisplay(false);
-    _compOutput.setLayoutController(
-      new LayoutDataHolder(LayoutDataHolder.STEP_OUTPUT));
-    _compOutput.enableBorder(false);
-    _compOutput.enableClientDisplay(true);
-    _init = false;
-
-    _compCore = new GraphCompositeInner(getGraphManager());
-    _compCore.setLayoutController(new LayoutCentered());
-    _compCore.enableBorder(false);
-    _compCore.enableClientDisplay(true);
-
-  // -Note-------------------------------------------------------------------
-  // For GraphSimul classes the vertical and horizontal spacings between
-  // its children are determined by its LayoutController. So the horizontal
-  // and vertical spacings set here for _compCore will not be applied to
-  // GraphSimul objects.
-  // ------------------------------------------------------------------------
-
-    _compCore.getDimCtrl().setSpacing(80,16);
-    _compCore.getDimCtrl().setSpacingFactor(0.10f,false);
-
-    addGraph(_compInput);
-    addGraph(_compCore);
-    addGraph(_compOutput);
-    setLayoutController(new LayoutFlow(LayoutFlow.ALIGN_HORZ));
-    getDimCtrl().setSpacing(0,0);
-    setBaseSize(new Dimension(300,0));
-  }
-
-  /**
-   * Determine if this Step has a WorkHolder
-   */
-  public boolean hasWorkHolder ()
-  {
-    return _workHolderIsSet;
-  }
-
-  /**
-   * Add a WorkHolder. Only one WorkHolder can exist in a Step.
-   */
-  public void setWorkHolder (GraphWorkHolder workHolder)
-  {
-    if (_workHolderIsSet) return;
-    _compCore.addGraph (workHolder);
-    _workHolderIsSet = true;
-  }
-
-  /** Get the WorkHolder of this GraphStep. Returns null if not set.*/
-  public GraphWorkHolder getWorkHolder() {
-    return (_compCore.numberOfGraphs()>0) ?
-           (GraphWorkHolder)_compCore.getGraph(0) : null;
-  }
-
-  public GraphSimul getOwnerSimul() {
-    return (GraphSimul)getOwner().getOwner();
-  }
-
-  /**
-   * Add a DataHolder.
-   */
-  public void addDataHolder (GraphDataHolder dataHolder)
-  {
-    if (dataHolder.isInput()) _compInput.addGraph(dataHolder);
-    else _compOutput.addGraph(dataHolder);
-  }
-
-  /**
-   * Add a ParamHolder. Only one ParamHolder can exist in a Step
-   */
-  public void addParamHolder (GraphDataHolder paramHolder)
-  {
-    addGraph (paramHolder);
-    _paramHolderIsSet = true;
-  }
-
-  /**
-   * Connect this Step to another Step. There are two possibilities,
-   * one is a connection between two Steps on the same level, the other is a
-   * connection between a parent and it's child.
-   */
-  public void connectTo (GraphStep step)
-  // REVISIT: return value should be 'Connection'?
-  {
-    boolean connectionsCreated = false;
-
-    GraphDataHolder gdhThis[], gdhThat[];
-    if (this == step.getOwner().getOwner()) {
-      // situation where a simul's input is connected to the input of one
-      // of its children (in->in)
-      gdhThis = getInputDataHolders();
-      gdhThat = step.getInputDataHolders();
-    } else if (getOwner().getOwner() == step) {
-      // situation where a simul's ouput is connected to its parent output
-      // (out->out)
-      gdhThis = getOutputDataHolders();
-      gdhThat = step.getOutputDataHolders();
-    } else {
-      // connection between steps on the same level (out->in)
-      gdhThis = getOutputDataHolders();
-      gdhThat = step.getInputDataHolders();
-      (super.connectTo(step)).setVisible(false);
-    }
-    int thatIx=0;
-    if (gdhThat.length == 0) return;
-    for (int i=0; i<gdhThis.length; i++)
-    {
-      if (!gdhThis[i].hasOutputConnections()) {
-        while (gdhThat[thatIx].hasInputConnections())
-        {
-          if (++thatIx>=gdhThat.length) {
-            if (!connectionsCreated) manager.fireMessage(
-              new MessageGraph(this,"Could not connect "+this+" to "+step+"."
-                               + " No input dataholders available."));
-            return ;
-          }
-        }
-        gdhThis[i].connectTo(gdhThat[thatIx++]);
-        connectionsCreated = true;
-        if (thatIx >= gdhThat.length) break;
-      }
-    }
-    if (!connectionsCreated) manager.fireMessage(
-      new MessageGraph(this,"Could not connect "+this+" to "+step+"."
-                       + " No output dataholders available."));
-  }
-
-  /** Returns input GraphDataHolder count */
-  public int nrInputDataHolders() { return _compInput.numberOfGraphs(); }
-
-  /** Returns output GraphDataHolder count */
-  public int nrOutputDataHolders() { return _compOutput.numberOfGraphs(); }
-
-  /** Get a list of input DataHolders. Used for connection between Steps */
-  public GraphDataHolder[] getInputDataHolders () {
-    GraphDataHolder gdh[] = new GraphDataHolder[_compInput.numberOfGraphs()];
-    for (int i=0;i<gdh.length;i++) gdh[i] = (GraphDataHolder)_compInput.getGraph(i);
-    return gdh;
-  }
-
-  /** Get a list of output DataHolders. Used for connection between Steps */
-  public GraphDataHolder[] getOutputDataHolders () {
-    GraphDataHolder gdh[] = new GraphDataHolder[_compOutput.numberOfGraphs()];
-    for (int i=0;i<gdh.length;i++) gdh[i] = (GraphDataHolder)_compOutput.getGraph(i);
-    return gdh;
-  }
-
-  public GraphComposite getInputDataHolderComposite() {
-    return _compInput;
-  }
-
-  public GraphComposite getOutputDataHolderComposite() {
-    return _compOutput;
-  }
-
-  public GraphComposite getInnerComposite() {
-    return _compCore;
-  }
-
-  /** Overloaded from GraphComposite. Passes the state change request to its
-   *  inner composite. */
-  public void setState(int state) {
-    _compCore.setState(state);
-  }
-
-  /** Overloaded from GraphComposite. Passes the current state request to its
-   *  inner composite. */
-  public int getState() {
-    return _compCore.getState();
-  }
-
-  /**
-   * Get a connection point to this Step. The point is absolute. If the point
-   * cannot be determined it will return null.
-   */
-  public Point getConnectionPoint (boolean incoming, Connection con)
-  {
-    // are we visible?
-    if (isVisible() && canBeDrawn()) {
-      if (incoming) {
-        Graph graph = con.graphIn;
-        if (((GraphDataHolder)graph).isOutput()) return null;
-        Point pC = graph.getAbsoluteLocation();
-        Point pT = this.getAbsoluteLocation();
-        pT.y = (int)(pC.getY()+graph.getHeight()/2);
-        return pT;
-      } else {
-        Graph graph = con.graphOut;
-        if (((GraphDataHolder)graph).isInput()) return null;
-        Point pC = graph.getAbsoluteLocation();
-        Point pT = this.getAbsoluteLocation();
-        pT.x += getWidth();
-        pT.y = (int)(pC.getY()+graph.getHeight()/2);
-        return pT;
-      }
-    } else {
-      return null;
-    }
-  }
-
-  public boolean canBeDrawn() {
-    return true;
-    //if (getOwner().getVerticalSpacing() <= 1) return false; else return true;
-  }
-
-  /** Enable/disable showing step info. A GraphStep is build of tree
-   *  GraphComposite objects. Calling this method will set the state of the
-   *  middle GraphComposite to either STATE_INDEPENDENT or STATE_DRAWCHILDREN */
-  public void showStepInfo(boolean enable) {
-    if (enable) {
-      if (_compCore.getState() == STATE_INDEPENDENT) return; // already in state
-      _compCore.setState(STATE_INDEPENDENT);
-    } else {
-      if (_compCore.getState() == STATE_DRAWCHILDREN) return; // already in state
-      _compCore.setState(STATE_DRAWCHILDREN);
-    }
-  }
-
-  public void setNode(String node) { _node = node; }
-  public String getNode() { return _node; }
-
-  protected void paintGraph(Graphics2D g, Point abs) {
-    String origName = new String(getName());
-    if (_node != null) setName(getName() + " (" + _node + ")");
-    super.paintGraph(g,abs);
-    setName(origName);
-  }
-
-  /** This class represent the inner composite that will, in case of a GraphStep,
-   *  display the WorkHolder, or, in case of a Graphsimul display its contained
-   *  Steps or its WorkHolder. */
-  private class GraphCompositeInner extends GraphComposite {
-      public GraphCompositeInner(GraphManager man) {
-        super(man);
-      }
-
-      public GraphCompositeInner(GraphManager man, String name) {
-        super(man,name);
-      }
-
-      public GraphCompositeInner(GraphManager man, int x, int y, String name) {
-        super(man,x,y,name);
-      }
-      /** Lets the WorkHolder of this simul/step do the drawing.
-       *  A Simul will display a picture together with some info when
-       *  its Steps are invisible. */
-      protected void paintGraph(Graphics2D g, Point abs) {
-        GraphWorkHolder wh = getWorkHolder();
-        if (wh != null) wh.paintGraph(g,abs);
-      }
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphWorkHolder.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphWorkHolder.java
deleted file mode 100644
index 24adaededf6cf72210c7407a73e728c7c7e563b0..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphWorkHolder.java
+++ /dev/null
@@ -1,81 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Visual LofarSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.awt.*;
-import kiwi.util.Config;
-
-//! DataHolders are connected to WorkHolders. Should WorkHolder maintain a
-//! list of DataHolder(+channel numbers)?
-
-public class GraphWorkHolder extends Graph {
-
-  private String className = "WorkHolder";
-
-  public GraphWorkHolder() {
-    super (null,0,0,60,20,"GraphWorkHolder"+followUp++);
-    defaultSettings();
-  }
-
-  public GraphWorkHolder(GraphManager man) {
-    super (man,0,0,60,20,"GraphWorkHolder"+followUp++);
-    defaultSettings();
-  }
-
-  /** Since the WorkHolder is part of a composite, you cannot specify its
-   *  coordinates (they'll be calculated by the composite) */
-  public GraphWorkHolder(GraphManager man, String name) {
-    super (man,0,0,60,20,name);
-    defaultSettings();
-  }
-
-  private void defaultSettings ()
-  {
-    setLineColor(Color.black);
-    setBackground(Color.gray);
-    setBaseRoundSize(50);
-  }
-
-  public boolean canBeDrawn() {
-    if (getZoomLevel() < 0.5) return false; else return true;
-  }
-
-  public Config getProperties() {
-    Config p = super.getProperties();
-    p.putString("Class",getClassName());
-    return p;
-  }
-
-  public void setClassName(String className) { this.className = className; }
-  public String getClassName() { return className; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    return new GraphDataHolder();
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphWorkHolderImage.java b/support/tools/BaseSimGUI/src/org/astron/basesim/GraphWorkHolderImage.java
deleted file mode 100644
index 1a79ea28f95336cd0c17bd5e81c708aad4480d4f..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/GraphWorkHolderImage.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package org.astron.basesim;
-
-import java.awt.*;
-import java.awt.image.*;
-import javax.swing.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company: ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-/** The GraphWorkHolderImage is the base class for all WorkHolder that
- *  are contained within Simuls. These are only visible when the Simul
- *  is not expanded (it does not draw its children). These objects are not
- *  part of the composite tree, but their drawing code will be called by
- *  their related Simuls. */
-public class GraphWorkHolderImage extends GraphWorkHolder {
-
-  final static int INDENT = 5;
-
-  private static int followUp = 100;
-  private static MediaTracker mt = null;
-  protected Image image = null;
-
-  public GraphWorkHolderImage() {
-    super ();
-    defaultSettings();
-  }
-
-  public GraphWorkHolderImage(GraphManager man) {
-    super (man);
-    defaultSettings();
-  }
-
-  public GraphWorkHolderImage(GraphManager man, String name) {
-    super (man,name);
-    defaultSettings();
-  }
-
-  private void defaultSettings() {
-    setBaseSize(new Dimension(DimCtrlStepCenter.FIXED_WIDTH,
-                              DimCtrlStepCenter.FIXED_HEIGHT));
-  }
-
-  /** Paint this WorkHolder. A Simul workholder displays an icon, a title,
-   *  and some other interesting properties depending on the type (class) of
-   *  WorkHolder */
-  public void paintGraph(Graphics2D g, Point abs) {
-    if (image == null) {
-      String text = getClassName();
-      if (text == null) text = getName();
-      Font font = new Font("times",Font.BOLD,(int)(11));
-      FontMetrics fontMetr = g.getFontMetrics(font);
-      g.setFont(font);
-      int textWidth = fontMetr.stringWidth(text);
-      if (textWidth >= width) return;
-      int xpos = (width/2)-(textWidth/2)+abs.x;
-      int ypos = (height/2) + abs.y + (int)(0.5*fontMetr.getMaxAscent());
-      g.drawString(text,xpos,ypos);
-      g.draw(new Rectangle(xpos-5,ypos-14,textWidth+10,20));
-
-      // REVISIT: fix this method
-      //paintProperties(g,getClassName(),new Rectangle(abs.x,abs.y,width,height));
-    } else {
-      g.drawImage(image,abs.x+INDENT,abs.y+INDENT,
-                  width-INDENT*2,height-INDENT*2,
-                  (Color)getBackground(),null);
-      g.drawRect(abs.x+INDENT,abs.y+INDENT,width-INDENT*2,height-INDENT*2);
-    }
-  }
-
-  /** Determines the space this Graph object needs to visualize itself
-   *  properly*/
-  public int getPreferredWidth() {
-    return -1;
-  }
-
-  /** Determines the space this Graph object needs to visualize itself
-   *  properly*/
-  public int getPreferredHeight() {
-    return -1;
-  }
-
-  public void setImage(Image image) {
-    this.image = image;
-    if (mt != null) {
-      mt.addImage(image,followUp++);
-    }
-  }
-
-  /** Set a MediaTracker. */
-  static public void setMediaTracker(MediaTracker mediaTracker) {
-    mt = mediaTracker;
-  }
-
-  static public MediaTracker getMediaTracker() { return mt; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/JBaseSim.java b/support/tools/BaseSimGUI/src/org/astron/basesim/JBaseSim.java
deleted file mode 100644
index cf764f95a793d14d5f4bf134e94d30e57300810e..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/JBaseSim.java
+++ /dev/null
@@ -1,675 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-// zxzss       Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        <p>
- * Description:  <p>
- * Copyright:    Copyright (c) <p>
- * Company:      ASTRON<p>
- * @author Robbert Dam
- * @version 1.0
- */
-
-import org.xml.sax.*;
-import java.util.*;
-import java.awt.*;
-import javax.swing.*;
-import javax.swing.event.*;
-import java.awt.event.*;
-import java.io.*;
-import org.astron.util.gui.*;
-
-/**
- * Java swing component that can display a single Graph or a complex
- * hierarchy of GraphComposites.
- */
-public class JBaseSim extends JComponent implements ComponentListener,
-                                                    MouseInputListener,
-                                                    KeyListener,
-                                                    Scrollable {
-
-  //-- constants
-  final static int MODUS_ZOOM = 0;
-  final static int MODUS_PAN = 1;
-  final static int MODUS_SELECT = 2;
-
-  //-- Mouse cursor shapes
-  final static Cursor CURSOR_SELECT = new Cursor(Cursor.DEFAULT_CURSOR);
-  Cursor CURSOR_PAN = new Cursor(Cursor.HAND_CURSOR);
-  Cursor CURSOR_ZOOM = new Cursor(Cursor.DEFAULT_CURSOR);
-
-  //-- misc
-  private GraphComposite diagram;
-  private int _mode;
-  private double _zoomStep;
-  private double _maxZoomLevel;
-  private Stack zoomStack;
-  private Graph focusGraph;
-  private MouseEvent lastMove;
-  private JToolTip currentTip = null;
-
-  //-- popup menu actions
-  AbstractAction policyCenterSteps = new ActionCenterSteps();
-  AbstractAction showChildren = new ActionShowChildren();
-
-  public JBaseSim () {
-    diagram = null;
-    defaultSettings();
-  }
-
-  public JBaseSim(GraphComposite diagram) {
-    setGraph(diagram);
-    defaultSettings();
-  }
-
-  private void defaultSettings() {
-    addMouseListener (this);
-    addMouseMotionListener (this);
-    addKeyListener(this);
-    // set behavior of tooltips
-    setToolTipText("Hi!");
-    ToolTipManager.sharedInstance()
-      .setDismissDelay(Main.SETTINGS.getInt("toolTipDismissDelay"));
-    ToolTipManager.sharedInstance()
-      .setReshowDelay(Main.SETTINGS.getInt("toolTipReshowDelay"));
-
-    loadCursors();
-  }
-
-  private void loadCursors() {
-    Toolkit defToolkit = Toolkit.getDefaultToolkit();
-    Image panImage = defToolkit.getImage("images/mpan.gif");
-    Image zoomImage = defToolkit.getImage("images/mzoom.gif");
-    CURSOR_PAN = defToolkit.createCustomCursor(panImage,
-                                               new Point(0,0), // hotspot
-                                               "panCursor");
-    CURSOR_ZOOM = defToolkit.createCustomCursor(zoomImage,
-                                                new Point(0,0), // hotspot
-                                                "zoomCursor");
-  }
-
-  private void initialize() {
-    setBorder(BorderFactory.createLoweredBevelBorder());
-    _mode = MODUS_SELECT;
-    _zoomStep = 3;
-    _maxZoomLevel = 10;
-  }
-
-  public void clearDiagram() {
-    diagram = null;
-    repaint();
-  }
-
-  public void setMode(int mode) {
-    _mode = mode;
-    switch (_mode) {
-      case MODUS_PAN:
-        setAutoscrolls(true);
-        setCursor(CURSOR_PAN);
-        break;
-      case MODUS_SELECT:
-        setCursor(CURSOR_SELECT);
-        break;
-      case MODUS_ZOOM:
-        setCursor(CURSOR_ZOOM);
-        break;
-    }
-  }
-  public int getMode() { return _mode; }
-  public void setZoomStepsize(double stepsize) { _zoomStep = stepsize; }
-  public double getZoomStepSize() { return _zoomStep; }
-  public void setMaxZoomLevel(double level) { _maxZoomLevel = level; }
-  public double getMaxZoomLevel() { return _maxZoomLevel; }
-
-  /** Resizes to diagram size and returns new component size. If the diagram
-   *  size is smaller then the parent size in which this component is
-   *  contained, then this method will center the diagram in the parent
-   *  component.*/
-  private Dimension recalcDimension() {
-    Dimension r = new Dimension(getParent().getSize());
-    if (diagram != null) {
-      if (diagram.getWidth() > r.getWidth()) {
-        r.width = diagram.getWidth();
-      }
-      if (diagram.getHeight() > r.getHeight()) {
-        r.height = diagram.getHeight();
-      }
-    }
-    setPreferredSize(r);
-    revalidate();
-    return r;
-  }
-
-  /** Lets the displayed diagram just fit the viewport. This method changed the
-   *  zoom level of the diagram. */
-  public void fitDiagram() {
-
-    JViewport viewport;
-    if (getParent() instanceof JViewport) {
-      viewport = (JViewport)getParent();
-    } else {
-      System.out.println("A JBaseSim is expected to be within a JScrollPane!");
-      return;
-    }
-    Dimension d = viewport.getSize();
-    diagram.setZoomLevel(diagram.getZoomLevel()); // make sure dim. are current
-    float newZoomLevel;
-    if (diagram.getBaseWidth() > diagram.getBaseHeight()) {
-      // adjust to width
-      newZoomLevel = (float)(d.width-50) / diagram.getBaseWidth();
-    } else {
-      // adjust to height
-      newZoomLevel = (float)(d.height-50) / diagram.getBaseHeight();
-    }
-    diagram.setZoomLevel(newZoomLevel);
-    recalcDimension();
-  }
-
-  private JPopupMenu createPopupMenu(Graph graph) {
-
-    if (graph instanceof GraphDiagram) return null;
-
-    JPopupMenu popup = new JPopupMenu();
-    JMenuItem labelItem = new JMenuItem();
-    labelItem.setText(graph.getName());
-    labelItem.setEnabled(false);
-    labelItem.setBackground(Color.blue);
-    popup.add(labelItem);
-
-    if (graph instanceof GraphSimul) {
-      JMenuItem showChildrenItem = new JMenuItem(showChildren);
-      if (((GraphSimul)graph).numberOfSteps() == 0) {
-        showChildrenItem.setEnabled(false);
-      }
-      if (((GraphSimul)graph).getState() == GraphSimul.STATE_INDEPENDENT) {
-        showChildren.putValue(AbstractAction.NAME,"Expand");
-      } else {
-        showChildren.putValue(AbstractAction.NAME,"Collapse");
-      }
-      popup.addSeparator();
-      popup.add(showChildrenItem);
-    }
-    focusGraph = graph;
-    return popup;
-  }
-
-  public boolean parseSimul (InputStream input, MessageListener listener) {
-    return parseSimul(input,listener,null);
-  }
-
-  /** Parse the specified XML file containing the simulation. */
-  public boolean parseSimul (InputStream input,
-                             MessageListener listener,
-                             String docName) {
-    Date date1 = new Date();
-    ContHandlerSim contentHandler = new ContHandlerSim();
-    ErrorHandlerSim errorHandler = new ErrorHandlerSim();
-    errorHandler.changeDocumentName(docName);
-    errorHandler.addMessageListener(listener);
-    contentHandler.addMessageListener(listener);
-    try {
-      XMLReader parser = (XMLReader)Class.forName(Main.SETTINGS
-                                                  .getString("xmlParser"))
-                                                  .newInstance();
-      parser.setContentHandler(contentHandler);
-      parser.setErrorHandler(errorHandler);
-      parser.setFeature( "http://xml.org/sax/features/validation",true);
-      parser.setFeature( "http://xml.org/sax/features/namespaces",true);
-      parser.setFeature( "http://apache.org/xml/features/validation/schema",true);
-      parser.parse(new InputSource(input));
-    } catch (Exception e) {
-      Graph graph = contentHandler.getRoot();
-      if (graph != null) {
-        MessageApp ma = new MessageApp(e);
-        graph.getGraphManager().fireMessage(ma);
-      }
-      return false;
-    }
-    contentHandler.getRoot().setTreeLevel(0);
-    contentHandler.getRoot().getGraphManager().setContainer(this);
-    setGraph(contentHandler.getRoot());
-
-    Date date2 = new Date();
-    long run = date2.getTime() - date1.getTime();
-    listener.note(new MessageGraph(diagram,"Parsing completed ("+run+" ms)"));
-    System.gc();                                    // garbage collection
-    return true;
-  }
-
-  public void setGraph (GraphComposite diagram) {
-    if (diagram != null) diagram.setGraphicalRoot(false);
-    this.diagram = diagram;
-    diagram.setBaseX(0);
-    diagram.setBaseY(0);
-    diagram.setGraphicalRoot(true);
-    diagram.treeStructureChanged();
-    diagram.setZoomLevel(0.4);
-
-    initialize();
-    fitDiagram();
-    repaint();
-    zoomStack = new Stack();
-  }
-
-  public Graph getGraph() { return diagram; }
-
-  /** Overrides JComponent addNotify. Registers a ComponentListener with
-   *  the new parent.*/
-  public void addNotify() {
-    super.addNotify();
-    getParent().addComponentListener(this);
-  }
-
-  /** Adjust the JViewPort to let the specified Graph be visible as close
-   *  as possible to the center of the screen.
-   *  @param graph          The Graph object to be centered
-   *  @param adjZoomLevel   Adjust zoom level? */
-  public void centerGraph (Graph graph, boolean adjZoomLevel) {
-    recalcDimension();
-    Rectangle r = new Rectangle();
-    Rectangle visR = getVisibleRect();
-    Point p = graph.getAbsoluteLocation();
-    r.x = p.x - visR.width/2 + graph.getWidth()/2;
-    r.y = p.y - visR.height/2 + graph.getHeight()/2;
-    r.width = visR.width;
-    r.height = visR.height;
-    if (r.x < 0) r.x = 0;
-    if (r.y < 0) r.y = 0;
-    scrollRectToVisible(r);
-  }
-
-  protected void paintComponent(Graphics g) {
-    if (diagram == null) return;
-    diagram.setX((int)(this.getWidth()/2-diagram.getWidth()/2));
-    diagram.setY((int)(this.getHeight()/2-diagram.getHeight()/2));
-    diagram.getGraphManager().setGraphics((Graphics2D)g);
-    diagram.paint();
-    diagram.paintConnections();
-  }
-
-  public void addGraphSelectionListener(GraphSelectionListener l) {
-    diagram.getGraphManager().getSelectionManager().addGraphSelectionListener(l);
-  }
-  public void removeGraphSelectionListener(GraphSelectionListener l) {
-    diagram.getGraphManager().getSelectionManager().removeGraphSelectionListener(l);
-  }
-
-  private void zoomIn(float newLevel, Point direction, boolean rect) {
-
-    Graph graph = diagram.containerOf(direction);
-    diagram.setZoomLevel(newLevel);
-
-    // transform click coordinates to new component size
-    Rectangle r = new Rectangle(getVisibleRect());
-    Dimension oldCompDim = getSize();
-    Dimension compDim = recalcDimension();
-    int trX = (int)(direction.x * (compDim.width / oldCompDim.getWidth()));
-    int trY = (int)(direction.y * (compDim.height / oldCompDim.getHeight()));
-
-    graph= diagram.containerOf(new Point(trX,trY));
-
-    // scroll JViewPort
-    if (rect) {
-      r.x = trX;
-      r.y = trY;
-    } else {
-      r.x = trX-(direction.x - r.x);
-      r.y = trY-(direction.y - r.y);
-    }
-    scrollRectToVisible(r);
-    repaint();
-  }
-
-  private void zoomOut(float newLevel, Point direction) {
-    diagram.setZoomLevel(newLevel);
-
-    // transform click coordinates to new component size
-    Rectangle r = new Rectangle(getVisibleRect());
-    Dimension oldCompDim = getSize();
-    Dimension compDim = recalcDimension();
-    Point trP =
-      new Point((int)(direction.x * (compDim.width / oldCompDim.getWidth())),
-                (int)(direction.y * (compDim.height / oldCompDim.getHeight())));
-
-    // scroll JViewPort
-    trP.x -= direction.x - r.x;
-    trP.y -= direction.y - r.y;
-
-    ((JViewport)getParent()).setViewPosition(trP);
-    repaint();
-  }
-
-  public JToolTip createToolTip() {
-    Graph graph = null;
-    if ( (lastMove != null) && (diagram != null) ) {
-      graph = diagram.containerOf(lastMove.getPoint());
-      currentTip = new JSimToolTip(graph);
-      currentTip.setComponent(this);
-      return currentTip;
-    }
-    return new JSimToolTip(null);
-  }
-
-  // ----- ComponentListener interface implementation
-
-  public void componentHidden(ComponentEvent e) { }
-  public void componentMoved(ComponentEvent e) { }
-  public void componentResized(ComponentEvent e) {
-    recalcDimension();
-  }
-  public void componentShown(ComponentEvent e) { }
-
-  // ----- MouseInputListener interface implementation
-
-  private boolean mouseClicked;
-  private Rectangle dragRect = new Rectangle();
-  private Point press = new Point();
-
-  public void mouseClicked(MouseEvent e) {
-    if (diagram == null) return;               // no diagram loaded
-    switch (_mode) {
-      case MODUS_ZOOM:
-        float newZoomLevel = (float)diagram.getZoomLevel();
-
-        if ((e.getModifiers() & MouseEvent.BUTTON1_MASK) != 0) {
-
-          // push current zoom level on zoom stack
-          zoomStack.push(new ZoomRecord(newZoomLevel));
-          newZoomLevel += _zoomStep*(newZoomLevel/_maxZoomLevel);
-          if (newZoomLevel > _maxZoomLevel) {
-            zoomStack.pop();
-            return;       // max. level reached
-          }
-
-          zoomIn(newZoomLevel,e.getPoint(),false);
-          return;
-        } else if ((e.getModifiers() & MouseEvent.BUTTON3_MASK) != 0) {
-          // zoom out
-          if (zoomStack.empty()) {
-            newZoomLevel -= _zoomStep*(newZoomLevel/_maxZoomLevel);
-          } else {
-            ZoomRecord zR = (ZoomRecord)zoomStack.pop();
-            newZoomLevel = zR.zoomLevel;
-          }
-          zoomOut(newZoomLevel,e.getPoint());
-          return;
-        } else return;
-      case MODUS_SELECT:
-
-        // select/deselect a Graph
-        if ((e.getModifiers() & MouseEvent.BUTTON1_MASK) != 0) {
-          Graph graph = diagram.containerOf(e.getPoint());
-          SelectionManager s = diagram.getGraphManager().getSelectionManager();
-          if (graph != null) {
-            if (e.isControlDown()) {
-              s.addInverseSelection(graph);
-            } else {
-              s.setInverseSelection(graph);
-            }
-          } else s.unselectAll();
-        } else if ((e.getModifiers() & MouseEvent.BUTTON3_MASK) != 0) {
-          Graph graph = diagram.containerOf(e.getPoint());
-          if (graph != null) {
-            JPopupMenu popup = createPopupMenu(graph);
-            if (popup != null) popup.show(this,e.getX(),e.getY());
-          }
-        }
-        repaint();
-        return;
-
-      case MODUS_PAN:
-        return;
-      default:
-        System.err.println("Unreconized mode set. Use one of predefined modus");
-        return;
-    }
-  }
-  public void mouseEntered(MouseEvent e) {
-  }
-  public void mouseExited(MouseEvent e) {
-  }
-  public void mousePressed(MouseEvent e) {
-    mouseClicked = true;
-    if (_mode == MODUS_PAN) {
-      press.setLocation(getLocationOnScreen());
-      press.x += e.getPoint().x;
-      press.y += e.getPoint().y;
-    } else {
-      press.setLocation(e.getX(),e.getY());
-      dragRect.setBounds(e.getX(),e.getY(),0,0);
-    }
-  }
-  public void mouseReleased(MouseEvent e) {
-    if (diagram == null) return;
-    if (mouseClicked) return; // user wasn't draggin
-    // check if rectangle was larger then 3 pixels
-    if (dragRect.width <= 3 || dragRect.height <= 3) {
-      Graphics2D g = (Graphics2D)getGraphics();
-      g.setXORMode(Color.white);
-      g.draw(dragRect);
-      return;
-    }
-    if (_mode == MODUS_SELECT) {
-      Graphics2D g = (Graphics2D)getGraphics();
-      g.setXORMode(Color.white);
-      g.draw(dragRect);
-      Vector bounded = new Vector(30);
-      diagram.enumBoundedGraphs(dragRect,bounded);
-      if (e.isControlDown()) {
-        diagram.getGraphManager().getSelectionManager().addInverseSelection(bounded);
-      } else {
-        diagram.getGraphManager().getSelectionManager().setInverseSelection(bounded);
-      }
-      return;
-    }
-    if (_mode == MODUS_ZOOM) {
-      Graphics2D g = (Graphics2D)getGraphics();
-      g.setXORMode(Color.white);
-      g.draw(dragRect);
-
-      Rectangle r = new Rectangle(getVisibleRect());
-      int x,y;
-      float zoomLevel;
-      if (dragRect.width > dragRect.height) {
-        if (diagram.getZoomLevel() < 1) {
-          zoomLevel = (r.width / (float)dragRect.width)
-            * (float)diagram.getZoomLevel();
-        } else {
-          zoomLevel = (r.width / (float)dragRect.width)
-            * (float)diagram.getZoomLevel();
-        }
-      } else {
-        if (diagram.getZoomLevel() < 1) {
-          zoomLevel = (r.height / (float)dragRect.height)
-            * (float)diagram.getZoomLevel();
-        } else {
-          zoomLevel = (r.height / (float)dragRect.height)
-            * (float)diagram.getZoomLevel();
-        }
-      }
-
-      x = (int)(dragRect.x - (r.width/2.0) + (dragRect.width/2.0));
-      y = (int)(dragRect.y - (r.height/2.0) + (dragRect.height/2.0));
-
-      // push current zoom level on zoom stack; zoom in
-      zoomStack.push(new ZoomRecord((float)diagram.getZoomLevel()));
-      //zoomIn(zoomLevel,new Point(x,y),true);
-      zoomIn(zoomLevel,new Point(dragRect.x,dragRect.y),true);
-      return;
-    }
-  }
-  public void mouseDragged(MouseEvent e) {
-    mouseClicked = false;
-
-    if (_mode == MODUS_ZOOM || _mode == MODUS_SELECT) {
-      Graphics2D g = (Graphics2D)getGraphics();
-      g.setXORMode(Color.white);
-      g.draw(dragRect);
-      if (press.x > e.getX()) {
-        dragRect.width = press.x - e.getX();
-        dragRect.x = press.x - dragRect.width;
-      } else {
-        dragRect.width = e.getX() - press.x;
-        dragRect.x = press.x;
-      }
-      if (press.y > e.getY()) {
-        dragRect.height = press.y - e.getY();
-        dragRect.y = press.y - dragRect.height;
-      } else {
-        dragRect.height = e.getY() - press.y;
-        dragRect.y = press.y;
-      }
-      g.draw(dragRect);
-      return;
-    }
-    if (_mode == MODUS_PAN) {
-
-     // set mouse cursor to drag endless for user convenience
-      Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
-      Point absPoint = getLocationOnScreen();
-      absPoint.x += e.getPoint().x;
-      absPoint.y += e.getPoint().y;
-      try {
-        Robot robot = new Robot();
-        if (absPoint.x >= (screenSize.width-1)) {
-          robot.mouseMove(0,absPoint.y);
-          press.x = 0;
-          return;
-        } else
-        if (absPoint.y >= (screenSize.height-1)) {
-            robot.mouseMove(absPoint.x,0);
-          press.y = 0;
-          return;
-        } else
-        if (absPoint.y == 0) {
-          robot.mouseMove(absPoint.x,screenSize.height);
-          press.y = screenSize.height;
-          return;
-        } else
-        if (absPoint.x == 0) {
-          robot.mouseMove(screenSize.width,absPoint.y);
-          press.x = screenSize.width;
-          return;
-        }
-      } catch (AWTException x) {
-        // platform config does not allow low level input control
-      }
-      Rectangle r = getVisibleRect();
-      r.x -= absPoint.x - press.x;
-      r.y -= absPoint.y - press.y;
-      scrollRectToVisible(r);
-      press.setLocation(absPoint.x,absPoint.y);
-      return;
-    }
-  }
-  public void mouseMoved(MouseEvent e) {
-    lastMove = e;
-  }
-
-  // ----- KeyListener interface implementation
-
-  public void keyTyped(KeyEvent e) {
-    System.out.println("keyTyped() : "+e);
-  }
-
-  public void keyPressed(KeyEvent e) {
-    System.out.println("keyPressed() : "+e);
-  }
-
-  public void keyReleased(KeyEvent e) {
-    System.out.println("keyReleased() : "+e);
-  }
-
-  // ----- Scrollable interface implementation
-
-  public Dimension getPreferredScrollableViewportSize() {
-    Dimension d =
-      new Dimension (Toolkit.getDefaultToolkit().getScreenSize());
-    d.width *= 0.6;
-    d.height *= 0.6;
-    return d;
-  }
-  public int getScrollableBlockIncrement(Rectangle visibleRect,
-                                         int orientation, int direction) {
-    if (orientation == SwingConstants.HORIZONTAL)
-      return visibleRect.width - 40;
-    else
-      return visibleRect.height - 40;
-  }
-  public boolean getScrollableTracksViewportHeight() {
-    return false;
-  }
-  public boolean getScrollableTracksViewportWidth() {
-    return false;
-  }
-  public int getScrollableUnitIncrement(Rectangle visibleRect,
-                                        int orientation, int direction) {
-    return 1;
-  }
-
-  private class ZoomRecord {
-    float zoomLevel;
-    ZoomRecord(float zoomLevel) {
-      this.zoomLevel = zoomLevel;
-    }
-  }
-
-  //-- Action classes (for items in popup menu)
-  private class ActionCenterSteps extends AbstractAction {
-    boolean centerSteps;
-    public ActionCenterSteps() {
-      super("Center steps");
-      centerSteps = false;
-    }
-    public void actionPerformed(ActionEvent e) {
-      centerSteps = !centerSteps;
-      if (centerSteps) {
-      } else {
-      }
-    }
-    public boolean getState() {
-      return centerSteps;
-    }
-  }
-  private class ActionShowChildren extends AbstractAction {
-    public ActionShowChildren() {
-      super();
-    }
-    public void actionPerformed(ActionEvent e) {
-      GraphSimul gs = (GraphSimul)focusGraph;
-      if (gs.getState() == GraphStep.STATE_INDEPENDENT) {
-        gs.setState(GraphStep.STATE_DRAWCHILDREN);
-      } else {
-        gs.setState(GraphStep.STATE_INDEPENDENT);
-      }
-      if (diagram.getGraphManager().dimensionsChanged()) {
-        diagram.layoutAll();
-        fitDiagram();
-        centerGraph(focusGraph,false);
-        repaint();
-      }
-      // since the zoom level has been drastically changed we'll delete the
-      // zoom history
-      zoomStack.clear();
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/JSimToolTip.java b/support/tools/BaseSimGUI/src/org/astron/basesim/JSimToolTip.java
deleted file mode 100644
index a7b4770a8de20d1540251b578b5c6637e2e5646b..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/JSimToolTip.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.astron.basesim;
-
-import javax.swing.*;
-import org.astron.util.gui.*;
-import java.util.*;
-import kiwi.util.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class JSimToolTip extends JMultiLineToolTip {
-
-  Graph graph;
-
-  public JSimToolTip(Graph graph) {
-    super();
-    this.graph = graph;
-  }
-  public String getTipText() {
-    if (graph == null) return "";
-    String text = "";
-    Config p = graph.getProperties();
-    Enumeration enum = p.list();
-    for (int i=0; i<p.size(); i++) {
-        String key = (String)enum.nextElement();
-        String value = p.getProperty(key);
-        text += key + "=" + value;
-        if (i != p.size() - 1) text += '\n';
-    }
-    return text;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/JTestGraph.java b/support/tools/BaseSimGUI/src/org/astron/basesim/JTestGraph.java
deleted file mode 100644
index 932cca88bd5d11eed4aeb13feb374b8a5ecaff08..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/JTestGraph.java
+++ /dev/null
@@ -1,98 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        <p>
- * Description:  <p>
- * Copyright:    Copyright (c) <p>
- * Company:      <p>
- * @author
- * @version 1.0
- */
-
-import java.util.*;
-import java.awt.*;
-import javax.swing.*;
-import java.awt.event.*;
-
-/**
- * Java swing component that can display a single Graph or a complex
- * hierarchy of GraphComposites.
- */
-public class JTestGraph extends JComponent {
-
-  GraphComposite composite;
-  GraphManager man;
-
-  public JTestGraph () {
-    man = new GraphManager();
-    composite = new GraphComposite(man,"root composite");
-    composite.setLayoutController(new LayoutFlow(LayoutFlow.ALIGN_VERT));
-    composite.getDimCtrl().setSpacing(80,10);
-    composite.getDimCtrl().setSpacingFactor(1,false);
-    composite.setLineColor(Color.black);
-    composite.addGraph(new GraphWorkHolder(man));
-    composite.addGraph(new GraphWorkHolder(man));
-    composite.enableBorder(true);
-    GraphComposite innerComposite = new GraphComposite(man,"inner composite");
-    innerComposite.enableBorder(true);
-    innerComposite.getDimCtrl().setSpacing(20,20);
-    composite.addGraph(innerComposite);
-    Graph graph2 = new Graph(man,0,0,"Graph2");
-    graph2.setBackground(Color.orange);
-    graph2.setBaseSize(new Dimension(200,150));
-    graph2.setRoundSize(16);
-    Graph graph3 = new Graph(man,0,0,"Graph3");
-    graph3.setBackground(Color.blue);
-    graph3.setBaseSize(new Dimension(150,180));
-    graph3.setRoundSize(34);
-    graph3.setVisible(true);
-    graph2.setVisible(true);
-
-    innerComposite.addGraph(graph2);
-    innerComposite.addGraph(graph3);
-    innerComposite.setLayoutController(new LayoutFlow(LayoutFlow.ALIGN_HORZ));
-    Graph graph = new Graph(man,0,0,"Graph object");
-    graph.setVisible(true);
-    graph.setBackground(Color.yellow);
-    graph.setRoundSize(10);
-    graph.setBaseSize(new Dimension(100,100));
-    graph.connectTo(graph2);
-    graph2.connectTo(graph3);
-    composite.addGraph(graph);
-    composite.addGraph(new GraphWorkHolder(man));
-    composite.setZoomLevel(1);
-    composite.enableBorder(true);
-    //graph2.setVisible(false);
-    composite.layoutAll();
-  }
-
-  protected void paintComponent(Graphics g) {
-    g.drawString("Test of GraphComposite",20,20);
-    man.setGraphics((Graphics2D)g);
-    composite.paint();
-    composite.paintConnections();
-  }
-
-  private void testVisibility() {
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutCentered.java b/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutCentered.java
deleted file mode 100644
index 54ae6611a4e5b9228242415005a8d4d3cc44217b..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutCentered.java
+++ /dev/null
@@ -1,68 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//swe
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-import java.awt.*;
-
-/**
- * Title: Class LayoutCentered
- * Description: Layout manager for centering Graphs in a Graphcomposite
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-/** This layout controller will place all composites children in the center
- *  of their parent. Typically, the composite should contain 0 or 1 children. */
-public class LayoutCentered implements LayoutController {
-
-  private GraphComposite _container;
-
-  public LayoutCentered() {
-  }
-
-  public void setGraphComposite(GraphComposite container) {
-    _container = container;
-  }
-
-  /** Always returns true. */
-  public boolean canBeDone() { return true; }
-
-  /** The center layout will not do any preprocessing. */
-  public void preprocess() {}
-
-  /** Center all composite Graphs in the main Graph. */
-  public void doLayout() {
-    int width = _container.maxWidthGraph()
-                + (int)(_container.getDimCtrl().getSpacingFactor(true)
-                * _container.getDimCtrl().getHorizontalSpacing()) * 2;
-    int height = _container.maxHeightGraph()
-                + (int)(_container.getDimCtrl().getSpacingFactor(false)
-                * _container.getDimCtrl().getVerticalSpacing()) * 2;
-    for (int i=0; i<_container.numberOfGraphs(); i++) {
-      Graph graph = _container.getGraph(i);
-      Dimension d = graph.getBaseSize();
-      graph.setBaseX((int)((width/2)-(d.width/2)));
-      graph.setBaseY((int)((height/2)-(d.height/2)));
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutController.java b/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutController.java
deleted file mode 100644
index 65424dc3b7640e67253b6a13417337d0dbd9840d..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutController.java
+++ /dev/null
@@ -1,61 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: LayoutController
- * Description: Basic interface for layout managers
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-/**
- * The LayoutController interface must be used to build a class that
- * can layout components in a GraphComposite. Typically a layout controller
- * will calculate the layout of a given GraphComposite at its zoom level of
- * 100%. It will use the getBase...() and setBase...() methods for this purpose.
- */
-public interface LayoutController {
-  /**
-   * Set the GraphComposite on which the manager will operate
-   */
-  public void setGraphComposite (GraphComposite container);
-  /**
-   * This method indicates wether the preconditions of the layout algoritm
-   * can be met. Simple layout (like centering, flowing) should just return
-   * true
-   */
-  public boolean canBeDone();
-  /**
-   * Preprocess layout specific data. This should be all calculations that can
-   * be done independent of the dimensions of the GraphComposite's children.
-   * The preprocess method should not be used to alter dimensions or coordinates.
-   * This method was added so other layout managers can do a layout based on
-   * results of another layout algoritm.
-   */
-  public void preprocess ();
-  /**
-   * Layout the Graph in this composite using a composition
-   */
-  public void doLayout ();
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutDataHolder.java b/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutDataHolder.java
deleted file mode 100644
index e8dd796c2dbc1c161818f54a29d9baa019660c37..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutDataHolder.java
+++ /dev/null
@@ -1,379 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: LayoutDataHolder
- * Description: Default layout manager for DataHolders
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-/**
- * The DataHolder layout is a complex layout type that vertically aligns
- * dataholder in a simul blocks based on their connections. It rearranges
- * the dataholders to minimize the number of cross connections in the diagram.
- */
-public class LayoutDataHolder implements LayoutController {
-
-  final static int MIN_VERTICAL_SPACING = 20;
-
-  static int STEP_INPUT = 0;
-  static int STEP_OUTPUT = 1;
-  /** Constant value that can be passed to setOptimizeModus() */
-  static int OPTIMIZE_INTERNAL = 2;
-  /** Constant value that can be passed to setOptimizeModus() */
-  static int OPTIMIZE_EXTERNAL = 3;
-  /** Constant value that can be passed to setOptimizeModus() */
-  static int OPTIMIZE_DISABLED = 4;
-
-  /** This variable indicates the height of the composite tree.
-   *  REVISIT: this value should be the determined tree height.*/
-  int treeHeight = 10;
-
-  private int _optimize = OPTIMIZE_EXTERNAL;
-  private int _type;
-  private GraphStep _layout[][];
-  private GraphDataHolder _orderedDH[];
-
-  GraphComposite _container;
-  /** Construct a new LayoutDataHolder.
-   *  @param type type of DataHolders: STEP_INPUT or STEP_OUPUT
-   */
-  public LayoutDataHolder(int type) {
-    _type = type;
-  }
-  public void setGraphComposite(GraphComposite container) {
-    _container = container;
-  }
-  /** Specify which optimalization scheme to use. Can be one of the following
-   *  values: OPTIMIZE_INTERNAL, OPTIMIZE_EXTERNAL or OPTIMIZE_DISABLED (default)
-   *  Internal optimalization means that the DataHolders are ordered such that
-   *  a minimum number of cross-connections will occur inside the Step.
-   *  External optimalization means that the DataHolder are ordered such that
-   *  a minimum number of cross-connections will occur between two Steps.
-   *  When disabled, no optimalization is applied. */
-  public void setOptimizeMethod (int method) { _optimize = method; }
-
-  public boolean canBeDone() {
-    // check if all children are of type GraphDataHolder
-    if (_container.numberOfGraphs() == 0) return false;
-    for (int i=0; i<_container.numberOfGraphs(); i++) {
-      if (!(_container.getGraph(i) instanceof GraphDataHolder)) {
-        return false;
-      }
-    }
-    return true;
-  }
-  public void preprocess() {
-    calcVertSpacing();               // adjust vertical DH spacing to treelevel
-  }
-  public void doLayout() {
-
-    try {
-      GraphComposite ownerGraph = _container.getOwner().getOwner();
-      _layout = ((LayoutSimul)ownerGraph.getLayoutController()).getLayout();
-      if (_layout == null) {
-        System.err.println("LayoutDataHolder: Cannot perform layout "+
-        "of "+_container+". preprocess() was not called or failed");
-        setOptimizeMethod(OPTIMIZE_DISABLED);
-      }
-    }
-    catch (ClassCastException e) {
-      System.err.println("LayoutDataHolder: Step containing DataHolders"+
-      " should have an owner. doLayout() aborted. ");
-      setOptimizeMethod(OPTIMIZE_DISABLED);
-    }
-    orderDH();
-    if (_orderedDH == null) {
-      return;
-    }
-    // determine vertical spacing.
-    int vertSpacing = _container.getDimCtrl().getVerticalSpacing();
-    int horzSpacing = _container.getDimCtrl().getHorizontalSpacing();
-
-    _container.resetDim();
-
-    // place DataHolders
-    int y=(int)(vertSpacing * _container.getDimCtrl().getSpacingFactor(false));
-    int maxWidth = _container.maxWidthGraph();
-    for (int i=0; i<_orderedDH.length; i++) {
-      if (_orderedDH[i] != null) {
-        _orderedDH[i].setBaseX((int)((maxWidth/2)
-                               - (_orderedDH[i].getBaseWidth()/2))
-                               + (int)(horzSpacing
-                               * _container.getDimCtrl().getSpacingFactor(true)));
-        _orderedDH[i].setBaseY(y);
-        _container.replaceGraph(i,_orderedDH[i]);
-        y += vertSpacing+_orderedDH[i].getBaseHeight();
-      } else {
-        // alternative, when this is used, orderDH() needs to be fixed
-        boolean found;
-        for (int j=0; j<_container.numberOfGraphs(); j++) {
-          Graph graph = _container.getGraph(j);
-          found = false;
-          for (int k=0; k<_orderedDH.length; k++) {
-            if (_orderedDH[k] == graph) { found = true; break; }
-          }
-          if (!found) {
-            graph.setBaseX((int)((maxWidth/2)-(graph.getBaseWidth()/2))
-                           + (int)(horzSpacing
-                           * _container.getDimCtrl().getSpacingFactor(true)));
-            graph.setBaseY(y);
-            y += vertSpacing+graph.getBaseHeight();
-          }
-        }
-        break;
-      }
-    }
-  }
-
-  /** Helper function that returns the name of the simul block that a DataHolder
-   *  connects to (DH->?). */
-  private String getOutConDest (Graph graph) {
-    Connection c = graph.getOutConnection(0);
-    if (c!=null) return c.graphIn.getOwner().getOwner().getName();
-    else return null;
-  }
-  /** Helper function that returns the name of the simul block that a DataHolder
-   *  is connected to (?->DH). */
-  private String getInConDest (Graph graph) {
-    Connection c = graph.getInConnection(0);
-    if (c!=null) return c.graphOut.getOwner().getOwner().getName();
-    else return null;
-  }
-
-  /** Helper function that returns the number of the column in the
-   *  GraphSimulLayout result where the Step that contains our DataHolders
-   *  is located. */
-  private int findParentInLayout(GraphStep parent) {
-
-    // find parent step in GraphSimulLayout result
-    int ourColumn = -1;
-    for (int i=0; i<_layout.length; i++) {
-      for (int j=0; j<_layout.length; j++) {
-        if (_layout[i][j] == parent) ourColumn = i;
-      }
-      if (ourColumn != -1) break;
-    }
-    return ourColumn;
-  }
-
-  /** Extracts the Dataholders from the layout member variable and puts them
-   *  in an array in correct order. */
-  private GraphDataHolder[] getOppositeDataHolders() {
-    GraphDataHolder dh[] = new GraphDataHolder[_container.numberOfGraphs()];
-    if (_type == STEP_INPUT) {
-      if (_optimize == OPTIMIZE_EXTERNAL) {
-        GraphStep parent;
-        try {
-          parent = (GraphStep)(_container.getOwner());
-        } catch (ClassCastException e) {
-          System.err.println("LayoutDataHolder: Invalid composite tree. GraphStep expected");
-          e.printStackTrace();
-          return null;
-        }
-        int ourColumn = findParentInLayout(parent);
-        if (ourColumn == -1) {
-          System.err.println("LayoutDataHolder: Can't find Step " + parent
-                             + " in layout of " + _container.getOwner().getOwner()
-                             + " (part of "
-                             + _container.getOwner().getOwner().getOwner() + ")");
-          return null;
-        }
-        if (ourColumn-1 < 0) {
-          // special case, this is the first step. For now use the alternative
-          // layout.
-          alternativeLayout();
-          return null;
-        }
-        int dhIx=0;
-        for (int k=1; (ourColumn-k)>=0; k++) {
-          for (int i=0; i<_layout.length; i++) {
-            GraphStep step = _layout[ourColumn-k][i];
-            if (step != null) {
-              GraphDataHolder[] stepDH = step.getOutputDataHolders();
-              for (int j=0; j<stepDH.length; j++) {
-                Connection con = stepDH[j].getOutConnection(0);
-                if (con != null) {
-                  if (con.graphIn.getOwner().getOwner() == parent) {
-                    dh[dhIx++] = stepDH[j];
-                  }
-                }
-              }
-            }
-          }
-        }
-      } else if (_optimize == OPTIMIZE_INTERNAL) {
-        // REVISIT: internal
-      }
-      return dh;
-    } else {
-      if (_optimize == OPTIMIZE_EXTERNAL) {
-        GraphStep parent;
-        try {
-          parent = (GraphStep)(_container.getOwner());
-        } catch (ClassCastException e) {
-          System.err.println("LayoutDataHolder: Invalid composite tree. GraphStep expected");
-          e.printStackTrace();
-          return null;
-        }
-        int ourColumn = findParentInLayout(parent);
-        if (ourColumn == -1) {
-          System.err.println("LayoutDataHolder: Can't find Step " + parent
-                             + " in layout of " + _container.getOwner().getOwner()
-                             + " (part of "
-                             + _container.getOwner().getOwner().getOwner() + ")");
-          return null;
-        }
-        if (ourColumn+1 >= _layout.length) {
-          // special case, this is the last step. For now use the alternative
-          // layout.
-          alternativeLayout();
-          return null;
-        }
-        int dhIx=0;
-        for (int k=1; (k+ourColumn)<_layout.length; k++) {
-          for (int i=0; i<_layout.length; i++) {
-            GraphStep step = _layout[ourColumn+k][i];
-            if (step != null) {
-              GraphDataHolder[] stepDH = step.getInputDataHolders();
-              for (int j=0; j<stepDH.length; j++) {
-                Connection con = stepDH[j].getInConnection(0);
-                if (con != null) {
-                  if (con.graphOut.getOwner().getOwner() == parent) {
-                    dh[dhIx++] = stepDH[j];
-                  }
-                }
-              }
-            }
-          }
-          if (dhIx == dh.length) break;
-        }
-      } else if (_optimize == OPTIMIZE_INTERNAL) {
-        // REVISIT: internal
-      }
-      return dh;
-    }
-  }
-
-  /** Order the DataHolders using the chosen optimalization scheme. The result
-   *  is put in the _orderDH member variable. */
-  private void orderDH() {
-    GraphDataHolder dh[];
-    _orderedDH = new GraphDataHolder[_container.numberOfGraphs()];
-    if (_type == STEP_INPUT) {
-      if (_optimize == OPTIMIZE_EXTERNAL) {
-        GraphStep parent = (GraphStep)(_container.getOwner());
-        dh = getOppositeDataHolders();
-        if (dh == null) { _orderedDH=null; return; }
-        int j=0;
-        for (int i=0; i<dh.length; i++) {
-          if (dh[i] != null) {
-             _orderedDH[j++] = (GraphDataHolder)dh[i].getOutConnection(0).graphIn;
-            }
-        }
-        // place DH that are not connected on their ouput
-        for (int i=0; i<dh.length; i++) {
-          if (dh[i] == null) {
-            dh = parent.getInputDataHolders();
-            for (int k=0; k<dh.length;k++) {
-              if (!dh[k].hasInputConnections()) {
-                _orderedDH[j++] = dh[k];
-              }
-            }
-            break;
-          }
-        }
-      } else if (_optimize == OPTIMIZE_INTERNAL) {
-        dh = getOppositeDataHolders();
-        for (int i=0; i<_container.numberOfGraphs(); i++) {
-          // REVISIT: implement
-        }
-      } else if (_optimize == OPTIMIZE_DISABLED) {
-          for (int i=0; i<_container.numberOfGraphs(); i++) {
-            _orderedDH[i] = (GraphDataHolder)_container.getGraph(i);
-          }
-      }
-    } else {
-      if (_optimize == OPTIMIZE_EXTERNAL) {
-        GraphStep parent = (GraphStep)(_container.getOwner());
-        dh = getOppositeDataHolders();
-        if (dh == null) { _orderedDH=null; return; }
-        int j=0;
-        for (int i=0; i<dh.length; i++) {
-          if (dh[i] != null) {
-             _orderedDH[j++] = (GraphDataHolder)dh[i].getInConnection(0).graphOut;
-            }
-        }
-        // place DH that are not connected on their ouput
-        for (int i=0; i<dh.length; i++) {
-          if (dh[i] == null) {
-            dh = parent.getOutputDataHolders();
-            for (int k=0; k<dh.length;k++) {
-              if (!dh[k].hasOutputConnections()) {
-                _orderedDH[j++] = dh[k];
-              }
-            }
-            break;
-          }
-        }
-
-      } else if (_optimize == OPTIMIZE_INTERNAL) {
-        dh = getOppositeDataHolders();
-        for (int i=0; i<_container.numberOfGraphs(); i++) {
-          // REVISIT: implement
-        }
-      } else if (_optimize == OPTIMIZE_DISABLED) {
-          for (int i=0; i<_container.numberOfGraphs(); i++) {
-            _orderedDH[i] = (GraphDataHolder)_container.getGraph(i);
-          }
-      }
-    }
-  }
-
-  private void calcVertSpacing() {
-    int tHeight = _container.getGraphManager().getTreeHeight();
-    int vs = MIN_VERTICAL_SPACING;
-    vs += vs * (tHeight - _container.getTreeLevel());
-    _container.getDimCtrl().setVerticalSpacing(vs);
-  }
-
-  /** Simple layout mechanism to use when the advanced algoritm fails. */
-  private void alternativeLayout () {
-    int vertSpacing = _container.getDimCtrl().getVerticalSpacing();
-    int horzSpacing = _container.getDimCtrl().getHorizontalSpacing();
-    int nrOfGraphs = _container.numberOfGraphs();
-    int y=(int)(vertSpacing * _container.getDimCtrl().getSpacingFactor(false));
-    int maxWidth = _container.maxWidthGraph();
-    for (int i=0; i<nrOfGraphs; i++)
-    {
-      Graph graph = _container.getGraph(i);
-      graph.setBaseX((int)((maxWidth/2)-(graph.getBaseWidth()/2))
-                     + (int)(_container.getDimCtrl().getSpacingFactor(true)
-                     * horzSpacing));
-      graph.setBaseY(y);
-      y += vertSpacing+graph.getBaseHeight();
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutFlow.java b/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutFlow.java
deleted file mode 100644
index 008c1153641ea05c4456582a6f900499805a387b..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutFlow.java
+++ /dev/null
@@ -1,100 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-/**
- *  The LayoutFlow is a layout type that is similar to the Java AWT
- *  FlowLayout. It places the Graphs that the GraphComposite contains next
- *  the each other like characters in a line of text. In addition it can
- *  align the Graph both horizontally an vertically.
- */
-public class LayoutFlow implements LayoutController {
-
-  static int ALIGN_VERT = 0;
-  static int ALIGN_HORZ = 1;
-
-  private GraphComposite _container;
-  private int _align;
-
-  /** Create a new LayoutFlow. align must be ALIGN_VERT or ALIGN_HORZ */
-  public LayoutFlow (int align) {
-    _align = align;
-  }
-
-  public void setGraphComposite(GraphComposite container) {
-    _container = container;
-  }
-  public boolean canBeDone() {
-    return true;
-  }
-  public void preprocess() {
-    // no preprocessing
-  }
-  public void doLayout() {
-    int nrOfGraphs = _container.numberOfGraphs();
-    if (nrOfGraphs == 0) { return; }
-    int horzSpacing = _container.getDimCtrl().getHorizontalSpacing();
-    int vertSpacing = _container.getDimCtrl().getVerticalSpacing();
-    int maxHeight, maxWidth;
-    if (_align == ALIGN_HORZ) {
-      int x=(int)(horzSpacing*_container.getDimCtrl().getSpacingFactor(true));
-      maxHeight = _container.maxHeightGraph();
-      for (int i=0; i<nrOfGraphs; i++)
-      {
-        Graph graph = _container.getGraph(i);
-        if (graph.isVisible()) {
-          Dimension d = graph.getBaseSize();
-          graph.setBaseX(x);
-          graph.setBaseY((int)((maxHeight/2)-(d.height/2)
-                         + _container.getDimCtrl().getSpacingFactor(false)
-                         * vertSpacing));
-          x += horzSpacing+d.width;
-        }
-      }
-    } else if (_align == ALIGN_VERT) {
-      int y=(int)(vertSpacing*_container.getDimCtrl().getSpacingFactor(false));
-      maxWidth = _container.maxWidthGraph();
-      for (int i=0; i<nrOfGraphs; i++)
-      {
-        Graph graph = _container.getGraph(i);
-        if (graph.isVisible()) {
-          Dimension d = graph.getBaseSize();
-          graph.setBaseX((int)((maxWidth/2)-(d.width/2))
-                         + (int)(_container.getDimCtrl().getSpacingFactor(true)
-                         * horzSpacing));
-          graph.setBaseY(y);
-          y += vertSpacing+d.height;
-        }
-      }
-    } else throw new java.lang.UnsupportedOperationException();
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutSimul.java b/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutSimul.java
deleted file mode 100644
index 1a513214230064a28b81b6e40f96a323ed222589..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/LayoutSimul.java
+++ /dev/null
@@ -1,315 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Class LayoutSimul
- * Description: Default layout controller for simulations
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import java.util.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-
-/**
- * This layout manager lays out connected Graphs within a GraphComposite in
- * a 'grid' style.
- */
-public class LayoutSimul implements LayoutController {
-
-  GraphStep layout[][];
-  GraphStep stepBin[];
-
-  private GraphComposite _container;
-  /** List of MessageListeners */
-  private ArrayList _mlisteners = new ArrayList();
-
-  public LayoutSimul() {
-  }
-  /** Sets the GraphComposite for which the layout must be determined */
-  public void setGraphComposite(GraphComposite container) {
-    _container = container;
-  }
-  /** Returns the result of the preprocess algoritm. Returns null if not
-   *  available */
-  public GraphStep[][] getLayout() { return layout; }
-
-  /** Determines approximate location of the Simuls within the container
-   *  Simul. The result is put in the member variabele layout for further
-   *  processing. Other layout mechanism may use this result in their layout
-   *  mechanism (like LayoutDataHolder). */
-  public void preprocess() {
-    int nrOfGraphs = _container.numberOfGraphs();
-    if (nrOfGraphs == 0) return;
-    createDummyConnections();
-    GraphStep flying[] = new GraphStep[nrOfGraphs];
-    for (int i=0; i<nrOfGraphs; i++) flying[i]=(GraphStep)_container.getGraph(i);
-    GraphStep rootStep[] = new GraphStep[flying.length]; // too big.. but enough!
-
-    // find roots
-    int rootStepIx=0;
-    for (int i=0; i<flying.length; i++) {
-      if (!flying[i].hasInputConnections()) {
-        rootStep[rootStepIx++]=flying[i];
-        flying[i]=null;
-      }
-    }
-
-    // create layout array with worst case dimensions (actually, this can be quite spacy)
-    // NOTE: layout must be 'vierkant'. LayoutDataHolder relies on that!
-    layout = new GraphStep[flying.length][flying.length];
-    GraphStep prevStep=null;
-    boolean firstRound = true;
-    int rootlIxV=0; // index for layout array (root)
-    int lIxV=0, lIxH=1; // indices for layout array
-    int rootIx;
-    int fColumnLength=0;
-    int watchDog = 0;
-    while (true)
-    {
-      // tricky way to ensure the program will not hang when the algoritm fails
-      if (watchDog++ == 50) {
-        fireMessage(new MessageEvent(this,"LayoutSimul: Endless loop detected. Aborting",
-          MessageEvent.ERROR));
-        return;
-      }
-      // loop through roots
-      for (int j=0; j<rootStep.length; j++)
-      {
-        // try to find a root that connects to previous step
-        for (rootIx=0; rootIx<rootStep.length; rootIx++)
-        {
-          if (rootStep[rootIx] != null &&
-            rootStep[rootIx].isConnectedTo(prevStep)) break;
-         }
-        if (rootIx == rootStep.length) {
-          // pick first root that != null
-          rootIx = rootStep.length;
-          for (int i=0; i<rootStep.length; i++)
-            if (rootStep[i] != null) {rootIx = i; break; }
-          //if (rootStep[rootIx] == null) {
-          if (rootStep.length == rootIx) {
-            // no more roots
-            break;
-          }
-        }
-        if (firstRound) {
-          // place this root in the layout
-          layout[lIxH-1][rootlIxV++] = rootStep[rootIx];
-        }
-        for (int i=0; i<rootStep[rootIx].nrOutConnections(); i++)
-        {
-          // loop through the roots outgoing connections, place them
-          // (if already in other column of grid: clear it and replace it again)
-          GraphStep step = (GraphStep)rootStep[rootIx].getOutConnection(i).graphIn;
-          clearFromGrid(step,lIxH);
-          if (_container.getOwner() != step) {  // do not place parent in grid
-            if (!inGrid(step)) {
-              layout[lIxH][lIxV] = step;
-              prevStep = layout[lIxH][lIxV];
-              lIxV++;
-            }
-          }
-        }
-        rootStep[rootIx] = null;
-      }
-      //now take next column as roots - loop again
-      prevStep = null;
-      rootStep = new GraphStep[lIxV];
-      for (int i=0; i<lIxV; i++) rootStep[i] = layout[lIxH][i];
-      if (firstRound) {
-        firstRound = false;
-        fColumnLength = lIxV+1;
-      }
-      lIxH++;
-      lIxV=0;
-      if (rootStep.length == 0) break;                        // end the loop
-    }
-
-    // place all roots that could not be placed in the first column
-    for (int i=0; i<rootStep.length && fColumnLength<rootStep.length; i++) {
-      if (rootStep[i] != null) {
-        layout[0][fColumnLength++] = rootStep[i];
-      }
-    }
-  }
-
-  public boolean canBeDone() {
-    return true;
-  }
-  /** Place the Steps based on the result of the preprocess algoritm. */
-  public void doLayout() {
-
-    if (layout==null) {
-      System.out.println("LayoutSimul: call preprocess() before calling doLayout()!");
-      return;
-    }
-
-    _container.resetDim();
-    calcVertSpacing();
-    int vertSpacing = _container.getDimCtrl().getVerticalSpacing();
-    int horzSpacing = _container.getDimCtrl().getHorizontalSpacing();
-
-    // precalculate height of this simul and of every row
-    int preCalcHeight = 0;
-    int rowHeight[] = new int[layout.length];
-    for (int i=0; i<layout.length; i++) {
-      rowHeight[i] = -1 * (int)Math.round(0.5*vertSpacing);
-      for (int j=0; j<layout[i].length; j++) {
-        GraphStep graph = layout[i][j];
-        if (graph == null) break;
-        rowHeight[i] += graph.getBaseHeight();
-        rowHeight[i] += vertSpacing;
-      }
-      if (preCalcHeight < rowHeight[i]) preCalcHeight = rowHeight[i];
-    }
-
-    // calculate the coordinates of the Steps in the Grid
-    int x=(int)Math.round(_container.getDimCtrl().getSpacingFactor(true)
-      * horzSpacing);
-    double maxWidth=0;
-    for (int i=0; i<layout.length; i++)
-    {
-      if (layout[i][0] == null) break;
-      int y=(preCalcHeight/2)-(rowHeight[i]/2);
-      if (rowHeight[i] < 0) System.out.println("rowHeight[i]="+rowHeight[i]);
-      for (int j=0; j<layout[i].length; j++)
-      {
-        GraphStep graph = layout [i][j];
-        if (graph == null) break;
-        if (graph.getBaseWidth() > maxWidth) maxWidth = graph.getBaseWidth();
-        if (graph.isVisible()) {
-          graph.setBaseX(x);
-          graph.setBaseY(y);
-          y += vertSpacing+graph.getBaseHeight();
-        }
-      }
-      x += horzSpacing+maxWidth;
-    }
-  }
-
-  /** Helper method that returns the index of the GraphStep in the array. If the
-   *  GraphStep does not exist in the array, it will be added to the end.
-   *  On failure it will return -1. */
-  private int getStepBinIndex(GraphStep step) {
-    for (int i=0; i<stepBin.length; i++) {
-      if (stepBin[i] == step) {
-        return i;
-      }
-      if (stepBin[i] == null) {
-        stepBin[i] = step;
-        return i;
-      }
-    }
-    System.err.println("LayoutSimul.getStepBinIndex: GraphStep array too small ("+stepBin.length+")");
-    return -1;
-  }
-
-  private void clearFromGrid (GraphStep step, int excludeColumn) {
-    for (int i=0; i<layout.length; i++) {
-      if (i == excludeColumn) continue;
-      for (int j=0; j<layout.length; j++) {
-        if (layout[i][j] == step) layout[i][j] = null;
-      }
-    }
-  }
-
-  private boolean inGrid (GraphStep step) {
-     for (int i=0; i<layout.length; i++) {
-      for (int j=0; j<layout.length; j++) {
-        if (layout[i][j] == step) {
-          return true;
-        }
-      }
-    }
-    return false;
-  }
-
-  private void createDummyConnections() {
-    GraphDataHolder dh[];
-    GraphStep parentStep = (GraphStep)_container.getOwner();
-    for (int j=0; j<_container.numberOfGraphs(); j++) {
-      GraphStep step = (GraphStep)_container.getGraph(j);
-      dh = step.getInputDataHolders();
-      for (int i=0; i<dh.length; i++) {
-        Connection c = dh[i].getInConnection(0);
-        if (c != null) {
-          GraphStep destStep = (GraphStep)c.graphOut.getOwner().getOwner();
-          if ((destStep != parentStep) && (!step.isConnectedTo(destStep))) {
-            destStep.connectTo((Graph)step).setVisible(false);
-          }
-        }
-      }
-      dh = step.getOutputDataHolders();
-      for (int i=0; i<dh.length; i++) {
-        Connection c = dh[i].getOutConnection(0);
-        if (c != null) {
-          GraphStep destStep = (GraphStep)c.graphIn.getOwner().getOwner();
-          if ((destStep != parentStep) && (!step.isConnectedTo(destStep))) {
-            step.connectTo((Graph)destStep).setVisible(false);
-          }
-        }
-      }
-    }
-  }
-
-  private void calcVertSpacing() {
-
-    // calc vertical spacing (using the spacing of its DataHolders)
-    if (_container.numberOfGraphs() == 0) return;
-    GraphStep aGraphStep = (GraphStep)_container.getGraph(0);
-    GraphComposite aDataHolderComp = (GraphComposite)aGraphStep.getGraph(0);
-    int vs = aDataHolderComp.getDimCtrl().getVerticalSpacing();
-    float isf = aDataHolderComp.getDimCtrl().getSpacingFactor(false);
-    vs = vs-2*(int)(isf*vs);
-    _container.getDimCtrl().setVerticalSpacing(vs);
-
-    // calc horizontal spacing (using the current tree level)
-    int tHeight = _container.getGraphManager().getTreeHeight();
-    int tLevel = _container.getTreeLevel();
-    int hs = (int)(40*(tHeight-tLevel));
-    _container.getDimCtrl().setHorizontalSpacing((int)Math.round(hs));
-  }
-
-  /** Register a MessageListener. The layout controller will send its error
-   *  messages to all its registered listeners.  */
-  public void addMessageListener (MessageListener messageListener) {
-    _mlisteners.add(messageListener);
-  }
-  /** Unregisters the specified MessageListener */
-  public void removeMessageListener (MessageListener messageListener) {
-    _mlisteners.remove(messageListener);
-  }
-  /** Dispatch the specified MessageEvent to all the registered listeners. */
-  protected void fireMessage(MessageEvent event) {
-    if (_mlisteners.size() == 0) {
-      System.out.println(event);            // no listeners, send to stdout
-    } else {
-      for (int i=0; i<_mlisteners.size(); i++) {
-        ((MessageListener)_mlisteners.get(i)).note(event);
-      }
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/Main.java b/support/tools/BaseSimGUI/src/org/astron/basesim/Main.java
deleted file mode 100644
index 6ffcb1cbdc3792f73c6430c2d9c0fb226d137fac..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/Main.java
+++ /dev/null
@@ -1,929 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Class Main<p>
- * Description:  Main window<p>
- * Copyright:    Copyright (c) <p>
- * Company:      Astron<p>
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import javax.swing.tree.*;
-import javax.swing.event.*;
-import javax.swing.filechooser.*;
-import java.awt.event.*;
-import java.awt.*;
-import java.io.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-import kiwi.io.*;
-import javax.swing.plaf.basic.*;
-import javax.swing.border.*;
-
-public class Main extends JFrame implements GraphSelectionListener,
-                                            ChangeListener,
-                                            DocumentListener,
-                                            ActionListener,
-                                            Runnable {
-
-  //-- Configuration object. Reachable from anywhere
-  public static Configuration SETTINGS =
-    new Configuration(new File("basesim.cfg"));
-
-  //-- enumeration of config keys
-  private final static String LAST_OPEN_PATH = "lastOpenPath";
-  private final static String LAST_SAVE_PATH = "lastSavePath";
-
-  // indexes for JTabbedPane
-  final static int COMP_DIAGRAM = 0;
-  final static int COMP_TEXTEDITOR = 1;
-
-  //-- menu items
-  AbstractAction fileNew = new ActionFileNew();
-  AbstractAction fileOpen = new ActionFileOpen();
-  AbstractAction fileSave = new ActionFileSave();
-  AbstractAction fileSaveAs = new ActionFileSaveAs();
-  AbstractAction fileExit = new ActionFileExit();
-  AbstractAction filePrint = new ActionFilePrint();
-  AbstractAction editCut = new ActionEditCut();
-  AbstractAction editCopy = new ActionEditCopy();
-  AbstractAction editPaste = new ActionEditPaste();
-  AbstractAction editExpandAll = new ActionEditExpandAll();
-  AbstractAction helpAbout = new ActionHelpAbout();
-
-  AbstractAction diagramSelect = new ActionDiagramSelect();
-  AbstractAction diagramZoom = new ActionDiagramZoom();
-  AbstractAction diagramPan = new ActionDiagramPan();
-
-  //-- graphical components
-  JPanel _contentPane;
-  JBaseSim baseSim;
-  JNotifier notifier;
-  JTreeEx simulTree;
-  JPanel graphInfoPanel;
-  JEditTextArea xmlEditor;
-  JTabbedPane tabbedPane;
-  JSplitPane splitPane1, splitPane2;
-  JButtonEx newButton, openButton, saveButton;
-  JToggleButton selectButton, panButton, zoomButton;
-
-  //-- misc settings
-  /** Defines behavoir of the simulTree */
-  private boolean inspectionMode = false;
-  private GraphDiagram diagram;
-  /** File (xml) we are currently editing */
-  private File currentFile;
-  /** Is the XML document still in sync with the diagram? */
-  private boolean outOfSync = true;
-  /** Was the XML document saved to disk? */
-  private boolean documentChanged = true;
-
-  /** Variable needed by parser thread */
-  private InputStream tInput;
-  /** Variable needed by parser thread */
-  private String tDocName;
-  /** Variable needed by parser thread */
-  private JDialog tParseDialog;
-
-  public Main() {
-    super ("BaseSim GUI");
-    try {
-      SETTINGS.load();
-    } catch(Exception e) { e.printStackTrace(); }
-    _contentPane = (JPanel)getContentPane();
-    setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
-    addWindowListener(new WindowAdapter() {
-        public void windowClosing(WindowEvent e) {
-
-          if (documentChanged) {
-            int retval =
-            JOptionPane.showConfirmDialog(null,
-                                          "Save the document before exiting?",
-                                          "Document changed",
-                                          JOptionPane.YES_NO_CANCEL_OPTION);
-            if (retval == JOptionPane.CANCEL_OPTION) {
-              return;
-            }
-            if (retval == JOptionPane.YES_OPTION) {
-              try {
-                if (currentFile == null) {
-                  JFileChooser fileC = new JFileChooser();
-                  fileC.addChoosableFileFilter(new FileFilterXML());
-                  String lastPath = SETTINGS.getProperty(LAST_SAVE_PATH);
-                  if (lastPath != null)
-                    fileC.setCurrentDirectory(new File(lastPath));
-                  fileC.setSelectedFile(new File("Noname.xml"));
-                  int retVal = fileC.showSaveDialog(_contentPane);
-                  if (retVal == JFileChooser.APPROVE_OPTION) {
-                    currentFile = fileC.getSelectedFile();
-                    SETTINGS.setProperty(LAST_SAVE_PATH,currentFile.getPath());
-                  } else {
-                    return;
-                  }
-                }
-                FileOutputStream oStream = new FileOutputStream(currentFile);
-                oStream.write(xmlEditor.getText().getBytes());
-              } catch (IOException x) {
-                x.printStackTrace();
-              }
-            }
-          }
-
-          try {
-            SETTINGS.store();
-          } catch(Exception x) { x.printStackTrace(); }
-          System.exit(0);
-        }
-    });
-    baseSim = new JBaseSim();
-    initNotifier();
-    initXMLEditor();
-    initTree();
-
-    JScrollPane graphScrollPane = new JScrollPane(baseSim);
-    graphScrollPane.setVerticalScrollBarPolicy(
-      JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
-    graphScrollPane.setHorizontalScrollBarPolicy(
-      JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
-
-    tabbedPane = new JTabbedPane(JTabbedPane.BOTTOM);
-    tabbedPane.add(graphScrollPane,COMP_DIAGRAM);
-    tabbedPane.add(xmlEditor,COMP_TEXTEDITOR);
-    tabbedPane.setTitleAt(COMP_DIAGRAM,"Diagram");
-    tabbedPane.setTitleAt(COMP_TEXTEDITOR,"XML");
-    tabbedPane.addChangeListener(this);
-
-    JScrollPane treeScrollPane = new JScrollPane(simulTree);
-    treeScrollPane.setHorizontalScrollBarPolicy(
-      JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
-    treeScrollPane.setVerticalScrollBarPolicy(
-      JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
-
-    splitPane1 = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
-    splitPane1.setContinuousLayout(true);
-    splitPane1.setLeftComponent(treeScrollPane);
-    splitPane1.setRightComponent(tabbedPane);
-    splitPane1.setOneTouchExpandable(true);
-    splitPane1.setDividerLocation(0.15);
-    splitPane2 = new JSplitPane(JSplitPane.VERTICAL_SPLIT);
-    splitPane2.setTopComponent(splitPane1);
-    splitPane2.setBottomComponent(notifier);
-    splitPane2.setOneTouchExpandable(true);
-    splitPane2.setDividerLocation(0.7);
-    splitPane2.setContinuousLayout(true);
-
-    JPanel toolPanel = new JPanel(new BorderLayout());
-    toolPanel.add(initMenu(),BorderLayout.NORTH);
-    toolPanel.add(initToolBar(),BorderLayout.CENTER);
-
-    _contentPane.setLayout(new BorderLayout());
-    _contentPane.add(splitPane2,BorderLayout.CENTER);
-    _contentPane.add(toolPanel,BorderLayout.NORTH);
-
-    pack();
-    centerFrame();
-    show();
-    syncToDocument();
-  }
-
-  public void setParseDialog(JParseDialog dialog) {
-    tParseDialog = dialog;
-  }
-
-  private void loadDiagram(InputStream input, String docName) {
-    notifier.clearAll();
-    diagram = null;
-    System.gc();        // good point to do garbage collection
-
-    // start parser thread; build the "busy parsing" dialog
-    tInput = input;
-    tDocName = docName;
-    Thread thread = new Thread(this);
-    thread.start();
-    //tParseDialog = new JParseDialog(this,thread);
-  }
-
-  public void run()
-  {
-    if (baseSim.parseSimul(tInput,notifier,tDocName)) {
-
-      // wait till all images are loaded
-      try {
-        GraphWorkHolderImage.getMediaTracker().waitForAll();
-      } catch(InterruptedException ie) { ie.printStackTrace(); }
-
-      // load diagram in JBaseSim
-      if (documentChanged) {
-        GraphSimul gs = (GraphSimul)baseSim.getGraph();
-        gs.setState(GraphStep.STATE_DRAWCHILDREN,true);
-        if (gs.getGraphManager().dimensionsChanged()) {
-          gs.layoutAll();
-          baseSim.fitDiagram();
-          baseSim.centerGraph((Graph)gs,false);
-          baseSim.repaint();
-        }
-      }
-
-      ((BaseSimTreeModel)simulTree.getModel())
-        .setGraphDiagram((GraphDiagram)baseSim.getGraph());
-      baseSim.addGraphSelectionListener(this);
-    } else baseSim.clearDiagram();
-  }
-
-  private void loadFileInEditor(File file) {
-    // load diagram in JTextArea (XML editor)
-    byte[] b = new byte[(int)file.length()];
-    try {
-      FileInputStream inputStream = new FileInputStream(file);
-      inputStream.read(b);
-    } catch(IOException e) { e.printStackTrace(); return; }
-    String xmlText = new String(b);
-    outOfSync = false;
-    xmlEditor.getDocument().removeDocumentListener(this);
-    xmlEditor.setText(xmlText);
-    xmlEditor.getDocument().addDocumentListener(this);
-    documentChanged = false;
-  }
-
-  /** (re)parses the document */
-  private void syncToDocument() {
-    if (!outOfSync) return;
-    loadDiagram(new ByteArrayInputStream(xmlEditor.getText().getBytes()),null);
-    outOfSync = false;
-  }
-
-  /** Loads the specified file */
-  private void loadFile(File file) {
-
-    // load document in XML editor
-    loadFileInEditor(file);
-
-    // load document in diagram control
-    FileInputStream inputStream;
-    try {
-      inputStream = new FileInputStream(file);
-    } catch (IOException e) { e.printStackTrace(); return; }
-    loadDiagram(inputStream,file.getName());
-
-    // adjust caption of main window
-    setTitle("BaseSim GUI ("+file.getAbsoluteFile()+")");
-  }
-
-  private void initNotifier() {
-    notifier = new JNotifier();
-  }
-
-  private JMenuBar initMenu() {
-    JMenuBar menuBar = new JMenuBar();
-
-    JMenu menuFile = new JMenu("File");
-    JMenu menuEdit = new JMenu("Edit");
-    JMenu menuView = new JMenu("View");
-    JMenu menuHelp = new JMenu("Help");
-
-    JMenuItem itemFileNew = new JMenuItem(fileNew);
-    JMenuItem itemFileOpen = new JMenuItem(fileOpen);
-    JMenuItem itemFileSave = new JMenuItem(fileSave);
-    JMenuItem itemFileSaveAs = new JMenuItem(fileSaveAs);
-    JMenuItem itemFilePrint = new JMenuItem(filePrint);
-    JMenuItem itemFileExit = new JMenuItem(fileExit);
-
-    JMenuItem itemEditCut = new JMenuItem(editCut);
-    JMenuItem itemEditCopy = new JMenuItem(editCopy);
-    JMenuItem itemEditPaste = new JMenuItem(editPaste);
-    JMenuItem itemEditExpandAll = new JMenuItem(editExpandAll);
-
-    JMenuItem itemHelpAbout = new JMenuItem(helpAbout);
-
-    // set mnemonics
-    menuFile.setMnemonic(KeyEvent.VK_F);
-    itemFileOpen.setMnemonic(KeyEvent.VK_O);
-    itemFileSave.setMnemonic(KeyEvent.VK_S);
-    itemFilePrint.setMnemonic(KeyEvent.VK_P);
-    itemFileExit.setMnemonic(KeyEvent.VK_X);
-    menuEdit.setMnemonic(KeyEvent.VK_E);
-    menuView.setMnemonic(KeyEvent.VK_V);
-    menuHelp.setMnemonic(KeyEvent.VK_H);
-
-    menuBar.add(menuFile);
-    menuBar.add(menuEdit);
-    //menuBar.add(menuView);
-    menuBar.add(menuHelp);
-
-    menuFile.add(itemFileNew);
-    menuFile.add(itemFileOpen);
-    menuFile.add(itemFileSave);
-    menuFile.add(itemFileSaveAs);
-    menuFile.add(itemFilePrint);
-    menuFile.addSeparator();
-    menuFile.add(itemFileExit);
-
-    menuEdit.add(itemEditCut);
-    menuEdit.add(itemEditCopy);
-    menuEdit.add(itemEditPaste);
-    menuEdit.addSeparator();
-    menuEdit.add(itemEditExpandAll);
-
-    menuHelp.add(itemHelpAbout);
-
-    return menuBar;
-  }
-
-  private JToolBar initToolBar() {
-    JToolBar toolBar = new JToolBar();
-
-    selectButton = new JToggleButtonEx(diagramSelect);
-    selectButton.setText("");
-    selectButton.setMnemonic(KeyEvent.VK_S);
-    selectButton.setSelected(true);
-    panButton = new JToggleButtonEx(diagramPan);
-    panButton.setText("");
-    panButton.setMnemonic(KeyEvent.VK_P);
-    zoomButton = new JToggleButtonEx(diagramZoom);
-    zoomButton.setText("");
-    zoomButton.setMnemonic(KeyEvent.VK_Z);
-    ButtonGroup buttonGroup = new ButtonGroup();
-    buttonGroup.add(selectButton);
-    buttonGroup.add(panButton);
-    buttonGroup.add(zoomButton);
-
-    newButton = new JButtonEx(fileNew);
-    newButton.setText("");
-    newButton.setToolTipText("New");
-    newButton.setIcon(new ImageIcon("images/New24.gif"));
-    openButton = new JButtonEx(fileOpen);
-    openButton.setText("");
-    openButton.setIcon(new ImageIcon("images/Open24.gif"));
-    openButton.setToolTipText("Open");
-    saveButton = new JButtonEx(fileSave);
-    saveButton.setText("");
-    saveButton.setIcon(new ImageIcon("images/Save24.gif"));
-    saveButton.setToolTipText("Save");
-
-    toolBar.add(selectButton);
-    toolBar.add(panButton);
-    toolBar.add(zoomButton);
-
-    JSeparator sep = new JSeparator(JSeparator.VERTICAL);
-    Dimension d1 = new Dimension(2,20);
-    Dimension d2 = new Dimension(10,20);
-    sep.setPreferredSize(d1);
-    sep.setMaximumSize(d1);
-    toolBar.addSeparator(d2);
-    toolBar.add(sep);
-    toolBar.addSeparator(d2);
-
-    toolBar.add(newButton);
-    toolBar.add(openButton);
-    toolBar.add(saveButton);
-
-    return toolBar;
-  }
-
-  private void initTree() {
-    String imageName = SETTINGS.getString("simulTreeBk","images/tb1.jpg");
-    Image i = Toolkit.getDefaultToolkit().createImage(imageName);
-    MediaTracker mt = new MediaTracker(this);
-    GraphWorkHolderImage.setMediaTracker(mt);
-    mt.addImage(i,0);
-    try {
-      mt.waitForAll(); // wait for image
-    } catch(InterruptedException ie) { ie.printStackTrace(); }
-    simulTree =
-      new JTreeEx(new BaseSimTreeModel((GraphDiagram)baseSim.getGraph()));
-    simulTree.getSelectionModel().setSelectionMode
-        (TreeSelectionModel.SINGLE_TREE_SELECTION);
-    simulTree.setCellRenderer(new GraphCellRenderer());
-    simulTree.setBackground(i);
-
-    //Listen for when the selection changes.
-    simulTree.addTreeSelectionListener(new TreeSelectionListener() {
-      Graph lastGraph;
-      public void valueChanged(TreeSelectionEvent e) {
-        Object object = simulTree.getLastSelectedPathComponent();
-        if (object == null) {
-          if (lastGraph == null) return; else object = lastGraph;
-        }
-        if (object instanceof Graph) {
-            Graph graph = (Graph)object;
-            if (!graph.isVisible()) return;
-            lastGraph = graph;
-          if (inspectionMode) {
-            if (graph instanceof GraphComposite) {
-              baseSim.setGraph((GraphComposite)graph);
-            }
-          } else {
-            SelectionManager selMan = graph.getGraphManager().getSelectionManager();
-            selMan.setInverseSelection(graph);
-            baseSim.centerGraph(graph,false);
-          }
-        }
-      }
-    });
-  }
-
-  private void initXMLEditor() {
-    xmlEditor = new JEditTextArea();
-    xmlEditor.setTokenMarker(new XMLTokenMarker());
-    loadFileInEditor(new File("template.xml"));
-    outOfSync = true;
-    xmlEditor.getDocument().addDocumentListener(this);
-    int offset = xmlEditor.getLineStartOffset(10);
-    xmlEditor.setCaretPosition(offset);
-    xmlEditor.registerKeyboardAction(     // register Ctrl-S (save)
-      this,
-      KeyStroke.getKeyStroke(KeyEvent.VK_S,Event.CTRL_MASK),
-      JComponent.WHEN_IN_FOCUSED_WINDOW
-    );
-  }
-
-  /** Helper function that centers a frame in the middle of the screen */
-  public void centerFrame ()
-  {
-    //Center the window
-    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
-    Dimension frameSize = getSize();
-    if (frameSize.height > screenSize.height) {
-      frameSize.height = screenSize.height;
-    }
-    if (frameSize.width > screenSize.width) {
-      frameSize.width = screenSize.width;
-    }
-    setLocation((screenSize.width - frameSize.width) / 2,
-                (screenSize.height - frameSize.height) / 2);
-    setVisible(true);
-  }
-
-  //-- Implementation of the GraphSelectionListener interface
-  /** Display info panel for this component */
-  public void valueChanged(GraphSelectionEvent e) {
-    //REVISIT: implement
-    if (e.isSelected()) {
-    } else {
-    }
-  }
-
-  /** Send a message to the notifier */
-  public void fireMessage(MessageEvent e) { notifier.note(e); }
-
-  /** Sets the keyboard focus to a specific component. Is called by the
-   *  MessageEvents in the JNotifier class.
-   *
-   *  @param component Can be COMP_DIAGRAM or COMP_TEXTEDITOR */
-  public void setFocus(int component) {
-    switch(component) {
-      case COMP_DIAGRAM:
-        tabbedPane.setSelectedIndex(0);
-        break;
-      case COMP_TEXTEDITOR:
-        tabbedPane.setSelectedIndex(1);
-        break;
-    }
-  }
-
-  /** Retreive a handle to the (xml) editor component*/
-  public JEditTextArea getEditor() {
-    return xmlEditor;
-  }
-
-  // -- ChangeListener implementation
-
-  public void stateChanged(ChangeEvent e) {
-    if (e.getSource() == tabbedPane) {
-      // if the user switched between the XML editor and the diagram we must
-      // synchronize the document and the visualisation with each other.
-
-      if (tabbedPane.getSelectedIndex() == COMP_DIAGRAM) {
-        // the user switched to the diagram; reparse the document
-        syncToDocument();
-
-        // set controls states
-        selectButton.setEnabled(true);
-        panButton.setEnabled(true);
-        zoomButton.setEnabled(true);
-      }
-
-      if (tabbedPane.getSelectedIndex() == COMP_TEXTEDITOR) {
-        // the user switched to the editor; explicitly set the keyboard focus
-        xmlEditor.grabFocus();
-
-        // set controls states
-        selectButton.setEnabled(false);
-        panButton.setEnabled(false);
-        zoomButton.setEnabled(false);
-      }
-    }
-  }
-
-  // -- DocumentListener implementation
-
-  public void changedUpdate(DocumentEvent e) {
-  }
-  public void insertUpdate(DocumentEvent e) {
-    outOfSync = true;
-    documentChanged = true;
-  }
-  public void removeUpdate(DocumentEvent e) {
-    outOfSync = true;
-    documentChanged = true;
-  }
-
-  // -- ActionListener implementation
-
-  public void actionPerformed(ActionEvent e) {
-    //REVISIT: save file (ctrl-s)
-    System.out.println("actionPerformed: "+e);
-  }
-
-  public static void main(String[] args) {
-    try {
-      UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
-    }
-    catch(Exception e) {
-      e.printStackTrace();
-    }
-    Main main1 = new Main();
-  }
-  private class ActionFileNew extends AbstractAction {
-    public ActionFileNew() {
-      super("New", new ImageIcon("images/New16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      if (documentChanged) {
-        int retval =
-          JOptionPane.showConfirmDialog(null,
-                                        "Save the document before exiting?",
-                                        "Document changed",
-                                        JOptionPane.YES_NO_CANCEL_OPTION);
-        if (retval == JOptionPane.CANCEL_OPTION) {
-          return;
-        }
-        if (retval == JOptionPane.YES_OPTION) {
-          try {
-            if (currentFile == null) {
-              JFileChooser fileC = new JFileChooser();
-              fileC.addChoosableFileFilter(new FileFilterXML());
-              String lastPath = SETTINGS.getProperty(LAST_SAVE_PATH);
-              if (lastPath != null)
-              fileC.setCurrentDirectory(new File(lastPath));
-              fileC.setSelectedFile(new File("Noname.xml"));
-              int retVal = fileC.showSaveDialog(_contentPane);
-              if (retVal == JFileChooser.APPROVE_OPTION) {
-                currentFile = fileC.getSelectedFile();
-                SETTINGS.setProperty(LAST_SAVE_PATH,currentFile.getPath());
-              } else {
-                return;
-              }
-            }
-            FileOutputStream oStream = new FileOutputStream(currentFile);
-            oStream.write(xmlEditor.getText().getBytes());
-          } catch (IOException x) { x.printStackTrace(); }
-        }
-      }
-      initXMLEditor();
-      outOfSync = true;
-      syncToDocument();
-
-      currentFile = null;
-
-      // adjust caption of main window
-      setTitle("BaseSim GUI");
-    }
-  }
-  private class ActionFileOpen extends AbstractAction {
-    public ActionFileOpen() {
-      super("Open...", new ImageIcon("images/Open16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      JFileChooser fileC = new JFileChooser();
-      fileC.addChoosableFileFilter(new FileFilterXML());
-      String lastPath = SETTINGS.getProperty(LAST_OPEN_PATH);
-      if (lastPath != null) fileC.setCurrentDirectory(new File(lastPath));
-      int retVal = fileC.showOpenDialog(_contentPane);
-      if (retVal == JFileChooser.APPROVE_OPTION) {
-        currentFile = fileC.getSelectedFile();
-        SETTINGS.setProperty(LAST_OPEN_PATH,currentFile.getPath());
-        loadFile(currentFile);
-      }
-    }
-  }
-  private class ActionFileSave extends AbstractAction {
-    public ActionFileSave() {
-      super("Save", new ImageIcon("images/Save16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      try {
-        if (currentFile == null) {
-          JFileChooser fileC = new JFileChooser();
-          fileC.addChoosableFileFilter(new FileFilterXML());
-          String lastPath = SETTINGS.getProperty(LAST_SAVE_PATH);
-          if (lastPath != null) fileC.setCurrentDirectory(new File(lastPath));
-          fileC.setSelectedFile(new File("Noname.xml"));
-          int retVal = fileC.showSaveDialog(_contentPane);
-          if (retVal == JFileChooser.APPROVE_OPTION) {
-            currentFile = fileC.getSelectedFile();
-            SETTINGS.setProperty(LAST_SAVE_PATH,currentFile.getPath());
-          } else return;
-        }
-        FileOutputStream oStream = new FileOutputStream(currentFile);
-         oStream.write(xmlEditor.getText().getBytes());
-        documentChanged = false;
-      } catch (IOException x) {
-        x.printStackTrace();
-      }
-    }
-  }
-  private class ActionFileSaveAs extends AbstractAction {
-    public ActionFileSaveAs() {
-      super("Save As...", new ImageIcon("images/SaveAs16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      try {
-        JFileChooser fileC = new JFileChooser();
-        fileC.addChoosableFileFilter(new FileFilterXML());
-        if (currentFile == null) {
-          fileC.setSelectedFile(new File("Noname.xml"));
-        } else {
-          fileC.setSelectedFile(currentFile);
-        }
-        String lastPath = SETTINGS.getProperty(LAST_SAVE_PATH);
-        if (lastPath != null) fileC.setCurrentDirectory(new File(lastPath));
-        int retVal = fileC.showSaveDialog(_contentPane);
-        if (retVal == JFileChooser.APPROVE_OPTION) {
-         currentFile = fileC.getSelectedFile();
-         SETTINGS.setProperty(LAST_SAVE_PATH,currentFile.getPath());
-        } else return;
-        FileOutputStream oStream = new FileOutputStream(currentFile);
-        oStream.write(xmlEditor.getText().getBytes());
-        documentChanged = false;
-      } catch (IOException x) {
-        x.printStackTrace();
-      }
-    }
-  }
-  private class ActionFileExit extends AbstractAction {
-    public ActionFileExit() {
-      super("Exit", new ImageIcon("images/Stop16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      if (documentChanged) {
-        int retval =
-          JOptionPane.showConfirmDialog(null,
-                                        "Save the document before exiting?",
-                                        "Document changed",
-                                        JOptionPane.YES_NO_CANCEL_OPTION);
-        if (retval == JOptionPane.CANCEL_OPTION) {
-          return;
-        }
-        if (retval == JOptionPane.YES_OPTION) {
-          try {
-            if (currentFile == null) {
-              JFileChooser fileC = new JFileChooser();
-              fileC.addChoosableFileFilter(new FileFilterXML());
-              String lastPath = SETTINGS.getProperty(LAST_SAVE_PATH);
-              if (lastPath != null)
-              fileC.setCurrentDirectory(new File(lastPath));
-              fileC.setSelectedFile(new File("Noname.xml"));
-              int retVal = fileC.showSaveDialog(_contentPane);
-              if (retVal == JFileChooser.APPROVE_OPTION) {
-                currentFile = fileC.getSelectedFile();
-                SETTINGS.setProperty(LAST_SAVE_PATH,currentFile.getPath());
-              } else {
-                return;
-              }
-            }
-            FileOutputStream oStream = new FileOutputStream(currentFile);
-            oStream.write(xmlEditor.getText().getBytes());
-          } catch (IOException x) { x.printStackTrace(); }
-        }
-      }
-
-      try {
-        SETTINGS.store();
-      } catch(Exception x) { x.printStackTrace(); }
-      System.exit(0);
-   }
-  }
-  private class ActionFilePrint extends AbstractAction {
-    public ActionFilePrint() {
-      super("Print...", new ImageIcon("images/Print16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      JOptionPane.showMessageDialog(null,"Not yet implemented");
-    }
-  }
-  private class ActionEditCut extends AbstractAction {
-    public ActionEditCut() {
-      super("Cut", new ImageIcon("images/Cut16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      if (tabbedPane.getSelectedIndex() == COMP_TEXTEDITOR) {
-        xmlEditor.cut();
-      }
-    }
-  }
-  private class ActionEditCopy extends AbstractAction {
-    public ActionEditCopy() {
-      super("Copy",new ImageIcon("images/Copy16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      if (tabbedPane.getSelectedIndex() == COMP_TEXTEDITOR) {
-        xmlEditor.copy();
-      }
-    }
-  }
-  private class ActionEditPaste extends AbstractAction {
-    public ActionEditPaste() {
-      super("Paste", new ImageIcon("images/Paste16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      if (tabbedPane.getSelectedIndex() == COMP_TEXTEDITOR) {
-        xmlEditor.paste();
-      }
-    }
-  }
-  private class ActionEditExpandAll extends AbstractAction {
-    public ActionEditExpandAll() {
-      super("Expand all");
-    }
-    public void actionPerformed(ActionEvent e) {
-
-      GraphSimul gs = (GraphSimul)baseSim.getGraph();
-      gs.setState(GraphStep.STATE_DRAWCHILDREN,true);
-
-      if (gs.getGraphManager().dimensionsChanged()) {
-        gs.layoutAll();
-        baseSim.fitDiagram();
-        baseSim.centerGraph((Graph)gs,false);
-        baseSim.repaint();
-      }
-      // REVISIT: zoom history should be cleared
-    }
-  }
-  private class ActionHelpAbout extends AbstractAction {
-    public ActionHelpAbout() {
-      super("About...", new ImageIcon("images/Help16.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      JOptionPane.showMessageDialog(null,"BaseSimGUI (c) ASTRON 2001");
-    }
-  }
-
-  private class ActionDiagramSelect extends AbstractAction {
-    public ActionDiagramSelect() {
-      super("Select",new ImageIcon("images/select.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      baseSim.setMode(JBaseSim.MODUS_SELECT);
-    }
-  }
-
-  private class ActionDiagramZoom extends AbstractAction {
-    public ActionDiagramZoom() {
-      super("Zoom",new ImageIcon("images/Zoom24.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      baseSim.setMode(JBaseSim.MODUS_ZOOM);
-    }
-  }
-
-  private class ActionDiagramPan extends AbstractAction {
-    public ActionDiagramPan() {
-      super("Pan",new ImageIcon("images/pan.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      baseSim.setMode(JBaseSim.MODUS_PAN);
-    }
-  }
-
-  private class FileFilterXML extends javax.swing.filechooser.FileFilter {
-    public boolean accept (File f) {
-      if (f.isDirectory()) {
-        return true;
-      }
-      String extension = Utils.getExtension(f);
-      if ("xml".equals(extension)) return true; else return false;
-    }
-    public String getDescription() {
-      return "XML files (*.xml)";
-    }
-  }
-
-  /** Our own custom tree cell renderer */
-  private class GraphCellRenderer extends JLabel implements TreeCellRenderer
-  {
-	public GraphCellRenderer()
-	{
-          setOpaque(false);
-	  this.setBackground(null);
-	}
-
-	public Component getTreeCellRendererComponent(JTree tree,
-                                                      Object value,
-                                                      boolean sel,
-                                                      boolean expanded,
-                                                      boolean leaf,
-                                                      int row,
-                                                      boolean hasFocus)
-        {
-          setFont(tree.getFont());
-          Graph graph = null;
-          if (value instanceof Graph) {
-            graph = (Graph)value;
-            setEnabled(graph.isVisible());
-	    setText(graph.getName());
-            Icon icon = graph.getIcon();
-            if (icon == null) {
-              if (leaf) {
-                setIcon(UIManager.getIcon("Tree.leafIcon"));
-                setDisabledIcon(UIManager.getIcon("Tree.leafIcon"));
-	      } else if (expanded) {
-	        setIcon(UIManager.getIcon("Tree.openIcon"));
-                setDisabledIcon(UIManager.getIcon("Tree.openIcon"));
-	      } else {
-	        setIcon(UIManager.getIcon("Tree.closedIcon"));
-                setDisabledIcon(UIManager.getIcon("Tree.closedIcon"));
-	      }
-            }
-	    if(sel && graph.isVisible()) {
-              setForeground(Color.white);
-              setBackground(Color.blue);
-              setOpaque(true);
-            } else {
-              setForeground(Color.black);
-              setBackground(Color.white);
-              setOpaque(false);
-            }
-          } else {
-            setText((String)value);
-          }
-	  return this;
-	}
-    }
-
-  private class JParseDialog extends JDialog implements ActionListener {
-
-    Container content;
-    Thread thread;
-
-    public JParseDialog(Frame frame,Thread thread) {
-      super(frame,"SAX Parser",true);
-      content = getContentPane();
-      content.setLayout(new BorderLayout(10,10));
-      JLabel label = new JLabel("Parsing the document...",JLabel.CENTER);
-      JButton button = new JButton("Interrupt");
-      button.addActionListener(this);
-      content.add(label,BorderLayout.CENTER);
-      content.add(button,BorderLayout.SOUTH);
-      ((Main)frame).setParseDialog(this);
-      this.thread = thread;
-      thread.start();
-      pack();
-      centerFrame();
-      show();
-    }
-
-    public void actionPerformed(ActionEvent e) {
-      thread.interrupt();
-    }
-
-    /** Helper function that centers a frame in the middle of the screen */
-    public void centerFrame ()
-    {
-      //Center the window
-      Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
-      Dimension frameSize = getSize();
-      if (frameSize.height > screenSize.height) {
-        frameSize.height = screenSize.height;
-      }
-      if (frameSize.width > screenSize.width) {
-        frameSize.width = screenSize.width;
-      }
-      setLocation((screenSize.width - frameSize.width) / 2,
-                  (screenSize.height - frameSize.height) / 2);
-      setVisible(true);
-    }
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/Main.jbx b/support/tools/BaseSimGUI/src/org/astron/basesim/Main.jbx
deleted file mode 100644
index 0113ff3e0317e9ee22d15e9dd524c1009283bb83..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/Main.jbx
+++ /dev/null
@@ -1,6 +0,0 @@
-[PropertyInfo]
-[IconNames]
-
-
-
-
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/MessageApp.java b/support/tools/BaseSimGUI/src/org/astron/basesim/MessageApp.java
deleted file mode 100644
index 657a7ab29fa62548f388b27735df0ad52c9de5c4..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/MessageApp.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.astron.basesim;
-
-import org.astron.util.gui.*;
-import javax.swing.*;
-import javax.swing.event.*;
-import java.util.*;
-import java.awt.*;
-
-/** Displays exception messages in a message box. */
-public class MessageApp extends MessageEvent {
-
-  final static boolean to_stdout = Main.SETTINGS.getBoolean("enableStdout");
-
-  /** XML message icon */
-  final static ImageIcon appIcon = new ImageIcon("images/4.gif");
-
-  public MessageApp(Exception e) {
-    super((Object)e,e.toString());
-    if (to_stdout) e.printStackTrace();
-  }
-  public MessageApp(Exception e, String text) {
-    super((Object)e,text);
-    if (to_stdout) e.printStackTrace();
-  }
-
-  public ImageIcon getIcon() { return appIcon; }
-
-  /** Displays exception message in message box. */
-  public boolean onClick(JNotifier notifier) {
-    Exception e = (Exception)getSource();
-    // REVISIT: make this a little more readable
-    Main main = (Main)notifier.getParent()
-                .getParent().getParent().getParent().getParent();
-    JOptionPane.showMessageDialog(main,e.toString(),"Program exception",
-                                    JOptionPane.ERROR_MESSAGE);
-    //REVISIT: add 'show stack trace' button
-    return true;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/MessageGraph.java b/support/tools/BaseSimGUI/src/org/astron/basesim/MessageGraph.java
deleted file mode 100644
index 7bed92fb79de77cc18358670452118763cf1cde5..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/MessageGraph.java
+++ /dev/null
@@ -1,103 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Class MessageEvent
- * Description: Message events that are generated by Graph objects.
- * Copyright:    Copyright (c)
- * Company: Atron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import org.astron.util.gui.*;
-import javax.swing.*;
-
-/**
- * Message class for Graph object. Implements the onClick() method. When
- * a user clicks on a MessageGraph, the Graph that send the message is selected
- * and centered in the diagram view.
- */
-public class MessageGraph extends MessageEvent {
-
-  /** Holds destination Graph in case of a Connection error */
-  private Graph dest;
-
-  public MessageGraph(Object source, String text) {
-    super(source,text);
-  }
-  /** This constructor should be used to report a connection error.*/
-  public MessageGraph(Object source, Object dest, String text) {
-    super(source,text);
-    if (dest instanceof Graph) this.dest = (Graph)dest;
-  }
-  public MessageGraph(Object source, String text, int type) {
-    super(source,text,type);
-  }
-  /** This constructor should be used to report a connection error.*/
-  public MessageGraph(Object source, Object dest, String text, int type) {
-    super(source,text,type);
-    if (dest instanceof Graph) this.dest = (Graph)dest;
-  }
-
-  /** Selects a Graph from which the message originates. */
-  public boolean onClick(JNotifier notifier) {
-    Graph graph;
-    if (source instanceof Graph) {
-      graph = (Graph)source;
-    } else {
-      System.err.println("MessageGraph.onClick(): source of MessageGraph"
-        + " (" + source + ") is expected to be instance of Graph!");
-      return false;
-    }
-
-    // get the Main window object; focus on GraphComponent
-    // REVISIT: make this a little more readable
-    Main main = (Main)notifier.getParent()
-                .getParent().getParent().getParent().getParent();
-    main.setFocus(Main.COMP_DIAGRAM);
-
-    if (graph.isVisible()) {
-      GraphManager manager = graph.getGraphManager();
-      if (manager.getContainer() instanceof JBaseSim) {
-        JBaseSim baseSim = (JBaseSim)manager.getContainer();
-        baseSim.centerGraph(graph,false);
-        SelectionManager selMan = manager.getSelectionManager();
-        selMan.setSelection(graph);
-        if (dest != null) selMan.addSelection(dest);
-        baseSim.repaint();
-      } else {
-        System.err.println("MessageGraph.onClick() handler cannot obtain a "
-          + "handler to a JBaseSim from the GraphManager.");
-        return false;
-      }
-    } else {
-      JOptionPane.showMessageDialog(
-        null,
-        "This message is related to " + graph.getName() + " which is currently"
-        + " invisible. \nPlease expand its parent and click on the message again.",
-        graph.getName(),
-        JOptionPane.INFORMATION_MESSAGE);
-    }
-    return true;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/MessageXML.java b/support/tools/BaseSimGUI/src/org/astron/basesim/MessageXML.java
deleted file mode 100644
index eeae71bd6da57e2a3108d731c7f911b006e189e7..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/MessageXML.java
+++ /dev/null
@@ -1,80 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title: Class MessageEvent
- * Description: Message class for SAX (XML) related messages.
- * Copyright:    Copyright (c) 2001
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import javax.swing.event.*;
-import java.util.*;
-import java.awt.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-
-public class MessageXML extends MessageEvent {
-
-  /** XML message icon */
-  final static ImageIcon xmlIcon = new ImageIcon("images/closeAllWindows16.gif");
-
-  private int lineNr;
-  private int columnNr;
-
-  public MessageXML(Object source, String text) {
-    super(source,text);
-    lineNr = -1;
-    columnNr = -1;
-  }
-  public MessageXML(Object source, String text, int type) {
-    super(source,text,type);
-    lineNr = -1;
-    columnNr = -1;
-  }
-  public MessageXML(Object source, String text, int type,
-    int lineNr, int columnNr) {
-    super(source,text,type);
-    this.lineNr = lineNr;
-    this.columnNr = columnNr;
-  }
-  public ImageIcon getIcon() { return xmlIcon; }
-
-  /** Jumps to line number where error occured. */
-  public boolean onClick(JNotifier notifier) {
-
-    if (lineNr == -1) return false;
-
-    // get the Main window object; focus on XML editor component
-    // REVISIT: make this a little more readable
-    Main main = (Main)notifier.getParent()
-                .getParent().getParent().getParent().getParent();
-    main.setFocus(Main.COMP_TEXTEDITOR);
-    // linenr - 1 because parser is 0 based while jedit is 1 based (for lines).
-    int offset = main.getEditor().getLineStartOffset(lineNr-1);
-    main.getEditor().setCaretPosition(offset);
-    return true;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/Reference.java b/support/tools/BaseSimGUI/src/org/astron/basesim/Reference.java
deleted file mode 100644
index 27bf711c9b1396f4a9067c65da0e0b47c13a284a..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/Reference.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.astron.basesim;
-
-import java.util.*;
-
-/**
- * @author Robbert Dam
- * @version 1.0
- */
-
-/** A Reference is a name that refers to some object. This name
- *  can be scoped. A name can be related to a context. A context is the
- *  scope from where the reference was used */
-public class Reference {
-
-  static private String delim = ".";
-  private String ref;
-  private String scope;
-
-  public Reference(String name) {
-    ref = new String(name);
-  }
-
-  public Reference(String name, String scope) {
-    this.scope = scope;
-    ref = name;
-  }
-
-  public String toString() {
-    if (ref.length() == 0) return ref;
-    if (ref.substring(0,1).equals(delim)) {
-      return scope + ref;
-    } else {
-      return scope + delim + ref;
-    }
-  }
-
-  static public String getDelimiter() { return delim; }
-  static public void setDelimiter(String d) { delim = d; }
-
-  /** Get name of this reference. */
-  public String getName() {
-    int i = ref.lastIndexOf(delim);
-    if (i == -1) return ref;
-    return new String(ref.getBytes(),i+1,ref.length()-i-1);
-  }
-
-  public String getScope() { return scope; }
-
-  /** Check if the scope of the specified Reference matches the scope
-   *  of this Reference. */
-  public boolean inScope(Reference r) {
-    StringTokenizer stThat = new StringTokenizer(r.getScope(),delim);
-    StringTokenizer stThis = new StringTokenizer(this.scope,delim);
-
-    while (stThis.hasMoreTokens()) {
-      if (!stThat.hasMoreTokens()) return false;
-      if (!stThat.nextToken().equals(stThis.nextToken())) return false;
-    }
-    return true;
-  }
-
-  /** Compare this reference with another reference. */
-  public boolean equals(Reference r) {
-    if (toString().equals(r.toString())) return true;
-    else return false;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/SelectionManager.java b/support/tools/BaseSimGUI/src/org/astron/basesim/SelectionManager.java
deleted file mode 100644
index d64b6f48cfe8986c51fb1bd53c797a912ad22349..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/SelectionManager.java
+++ /dev/null
@@ -1,173 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c)
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import java.util.*;
-
-/**
- * This class manages a list of user selections from a JBaseSim diagram.
- * Selections can be reset, added, deleted, etc.
- */
-public class SelectionManager {
-
-  private Vector _selection = new Vector();
-
-  private Vector listener = new Vector();
-
-  public SelectionManager() {}
-
-  public void setSelection(Graph graph) {
-    unselectAll();
-    addSelection(graph);
-  }
-
-  public void setSelection(Vector graph) {
-    unselectAll();
-    for (int i=0; i<graph.size(); i++) {
-      addSelection((Graph)graph.get(i));
-    }
-  }
-
-  public void addSelection(Vector graph) {
-    for (int i=0; i<graph.size(); i++) {
-      addSelection((Graph)graph.get(i));
-    }
- }
-
-  public void addSelection(Graph graph) {
-    _selection.add(graph);
-    graph.setSelected(true);
-    repaintJComponent(graph);
-    fireGraphSelected(graph);
-  }
-
-  public void unselectAll() {
-    Graph tGraph = null;
-    for (int i=0; i<_selection.size(); i++) {
-      if (i==0) tGraph = getSelected(0);                  // for repainting
-      getSelected(i).setSelected(false);                  // unselect all
-      fireGraphUnselected(getSelected(i));
-    }
-    _selection.removeAllElements();
-    if (tGraph != null) repaintJComponent(tGraph);
-  }
-
-  public void unselect(Vector graph) {
-    for (int i=0; i<graph.size(); i++) {
-      unselect((Graph)graph.get(i));
-    }
-  }
-
-  public void unselect(Graph graph) {
-    graph.setSelected(false);
-    _selection.remove(graph);
-    repaintJComponent(graph);
-    fireGraphUnselected(graph);
-  }
-
-  public void setInverseSelection(Vector graph) {
-    Graph g = null;
-    unselectAll();
-    for (int i=0; i<graph.size(); i++) {
-      g = (Graph)graph.get(i);
-      if (g.isSelected()) {
-        unselect(g);
-      } else {
-        addSelection(g);
-      }
-    }
-    if (g != null) repaintJComponent(g);
-  }
-
-  public void setInverseSelection(Graph graph) {
-    if (graph.isSelected()) {
-      unselect(graph);
-    } else {
-      setSelection(graph);
-    }
-    repaintJComponent(graph);
-  }
-
-  public void addInverseSelection(Vector graph) {
-    Graph g = null;
-    for (int i=0; i<graph.size(); i++) {
-      g = (Graph)graph.get(i);
-      if (g.isSelected()) {
-        unselect(graph);
-      } else {
-        addSelection(graph);
-      }
-    }
-    if (g != null) repaintJComponent(g);
-  }
-
-  public void addInverseSelection(Graph graph) {
-    if (graph.isSelected()) {
-      unselect(graph);
-    } else {
-      addSelection(graph);
-    }
-    repaintJComponent(graph);
-  }
-
-  public int nrOfSelections() { return _selection.size(); }
-
-  public Graph getSelected(int index) {
-    return (Graph)_selection.get(index);
-  }
-
-  private void repaintJComponent(Graph graph) {
-    JComponent jComp = graph.getGraphManager().getContainer();
-    if (jComp != null) jComp.repaint();
-  }
-
-  public void fireGraphSelected(Graph graph) {
-    GraphSelectionEvent e = new GraphSelectionEvent(this,graph,true);
-    for (int i=0; i<listener.size(); i++) {
-      ((GraphSelectionListener)listener.get(i)).valueChanged(e);
-    }
-  }
-
-  public void fireGraphUnselected(Graph graph) {
-    GraphSelectionEvent e = new GraphSelectionEvent(this,graph,false);
-    for (int i=0; i<listener.size(); i++) {
-      ((GraphSelectionListener)listener.get(i)).valueChanged(e);
-    }
-  }
-
-  public void addGraphSelectionListener(GraphSelectionListener l) {
-    listener.add(l);
-  }
-
-  public void removeGraphSelectionListener(GraphSelectionListener l) {
-    listener.remove(l);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/TestMain.java b/support/tools/BaseSimGUI/src/org/astron/basesim/TestMain.java
deleted file mode 100644
index 403a73f83d887a905f3fc1698b2784a9f7c4f513..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/TestMain.java
+++ /dev/null
@@ -1,271 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.basesim;
-
-/**
- * Title:        Class Main<p>
- * Description:  Main window<p>
- * Copyright:    Copyright (c) <p>
- * Company:      Astron<p>
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import javax.swing.tree.*;
-import javax.swing.event.*;
-import java.awt.event.*;
-import java.awt.*;
-import java.io.*;
-import org.astron.util.*;
-import org.astron.util.gui.*;
-
-/** Was used to low-level test the Graph tree strucute, layout controllers */
-public class TestMain extends JFrame{
-
-  private final static String LAST_PATH = "lastPath";
-
-  AbstractAction fileOpen = new ActionFileOpen();
-  AbstractAction fileNew = new ActionFileNew();
-  AbstractAction fileExit = new ActionFileExit();
-  AbstractAction filePrint = new ActionFilePrint();
-  AbstractAction helpAbout = new ActionHelpAbout();
-  AbstractAction diagramSelect = new ActionDiagramSelect();
-  AbstractAction diagramZoom = new ActionDiagramZoom();
-  AbstractAction diagramPan = new ActionDiagramPan();
-
-  JPanel _contentPane;
-  JBaseSim baseSim;
-  JNotifier notifier;
-  JTree simulTree;
-
-  public TestMain() {
-    super ("BaseSim GUI");
-        addWindowListener(new WindowAdapter() {
-        public void windowClosing(WindowEvent e) {
-          try {
-            Main.SETTINGS.store();
-          } catch (IOException x) {
-            System.out.println("failed to write config file: "+x);
-          }
-          System.exit(0);
-        }
-    });
-    getContentPane().add(new JTestGraph());
-    pack();
-    show();
-  }
-
-  private void loadFile(File file) {/*
-    notifier.clearAll();
-    GraphManager manager = new GraphManager();
-    manager.setContainer(baseSim);
-    GraphDiagram diagram = new GraphDiagram(manager,"Base simulation");
-    diagram.getGraphManager().addMessageListener(notifier);
-    FileInputStream inputStream;
-    try {
-      inputStream = new FileInputStream(file);
-    } catch (IOException e) { e.printStackTrace(); return; }
-    if (diagram.parseSimul(inputStream,file.getName())) {
-      baseSim.setGraph(diagram);
-      setTitle("BaseSim GUI ("+file.getAbsoluteFile()+")");
-      ((BaseSimTreeModel)simulTree.getModel()).setGraphDiagram(diagram);
-    } else baseSim.clearDiagram();
-*/  }
-
-  private JMenuBar initMenu() {
-    JMenuBar menuBar = new JMenuBar();
-
-    JMenu menuFile = new JMenu("File");
-    JMenu menuHelp = new JMenu("Help");
-
-    JMenuItem itemFileNew = new JMenuItem(fileNew);
-    JMenuItem itemFileOpen = new JMenuItem(fileOpen);
-    JMenuItem itemFilePrint = new JMenuItem(filePrint);
-    JMenuItem itemFileExit = new JMenuItem(fileExit);
-
-    JMenuItem itemHelpAbout = new JMenuItem(helpAbout);
-
-    menuBar.add(menuFile);
-    menuBar.add(menuHelp);
-    menuFile.add(itemFileNew);
-    menuFile.add(itemFileOpen);
-    menuFile.add(itemFilePrint);
-    menuFile.addSeparator();
-    menuFile.add(itemFileExit);
-    menuHelp.add(itemHelpAbout);
-
-    return menuBar;
-  }
-
-  private JToolBar initDiagramToolBar() {
-    JToolBar toolBar = new JToolBar();
-
-    toolBar.add(diagramSelect);
-    toolBar.add(diagramPan);
-    toolBar.add(diagramZoom);
-
-    return toolBar;
-  }
-
-  private void initTree() {
-    simulTree =
-      new JTree(new BaseSimTreeModel((GraphDiagram)baseSim.getGraph()));
-    simulTree.getSelectionModel().setSelectionMode
-        (TreeSelectionModel.SINGLE_TREE_SELECTION);
-
-    //Listen for when the selection changes.
-    simulTree.addTreeSelectionListener(new TreeSelectionListener() {
-      Graph lastGraph;
-      public void valueChanged(TreeSelectionEvent e) {
-        Object object = simulTree.getLastSelectedPathComponent();
-        if (object == null) {
-          if (lastGraph == null) return; else object = lastGraph;
-        }
-        if (object instanceof Graph) {
-          Graph graph = (Graph)object;
-          lastGraph = graph;
-          SelectionManager selMan = graph.getGraphManager().getSelectionManager();
-          selMan.setInverseSelection(graph);
-          baseSim.centerGraph(graph,false);
-        }
-      }
-    });
-  }
-
-  /** Helper function that centers a frame in the middle of the screen */
-  public void centerFrame ()
-  {
-    //Center the window
-    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
-    Dimension frameSize = getSize();
-    if (frameSize.height > screenSize.height) {
-      frameSize.height = screenSize.height;
-    }
-    if (frameSize.width > screenSize.width) {
-      frameSize.width = screenSize.width;
-    }
-    setLocation((screenSize.width - frameSize.width) / 2,
-                (screenSize.height - frameSize.height) / 2);
-    setVisible(true);
-  }
-
-  /** Send a message to the notifier */
-  public void fireMessage(MessageEvent e) { notifier.note(e); }
-
-  public static void main(String[] args) {
-    try {
-      UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
-    }
-    catch(Exception e) {
-      e.printStackTrace();
-    }
-    TestMain main1 = new TestMain();
-  }
-
-  private class ActionFileOpen extends AbstractAction {
-    public ActionFileOpen() {
-      super("Open...");
-    }
-    public void actionPerformed(ActionEvent e) {
-      JFileChooser fileC = new JFileChooser();
-      String lastPath = Main.SETTINGS.getProperty(LAST_PATH);
-      if (lastPath != null) fileC.setCurrentDirectory(new File(lastPath));
-      int retVal = fileC.showOpenDialog(_contentPane);
-      if (retVal == JFileChooser.APPROVE_OPTION) {
-        Main.SETTINGS.setProperty(LAST_PATH,fileC.getSelectedFile().getPath());
-        loadFile(fileC.getSelectedFile());
-      }
-    }
-  }
-  private class ActionFileNew extends AbstractAction {
-    public ActionFileNew() {
-      super("New");
-    }
-    public void actionPerformed(ActionEvent e) {}
-  }
-  private class ActionFileExit extends AbstractAction {
-    public ActionFileExit() {
-      super("Exit");
-    }
-    public void actionPerformed(ActionEvent e) {
-      System.exit(0);
-    }
-  }
-  private class ActionFilePrint extends AbstractAction {
-    public ActionFilePrint() {
-      super("Print...");
-    }
-    public void actionPerformed(ActionEvent e) {}
-  }
-  private class ActionHelpAbout extends AbstractAction {
-    public ActionHelpAbout() {
-      super("About...");
-    }
-    public void actionPerformed(ActionEvent e) {}
-  }
-
-  private class ActionDiagramSelect extends AbstractAction {
-    public ActionDiagramSelect() {
-      super("Select",new ImageIcon("images/select.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      baseSim.setMode(JBaseSim.MODUS_SELECT);
-    }
-  }
-
-  private class ActionDiagramZoom extends AbstractAction {
-    public ActionDiagramZoom() {
-      super("Zoom",new ImageIcon("images/zoom.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      baseSim.setMode(JBaseSim.MODUS_ZOOM);
-    }
-  }
-
-  private class ActionDiagramPan extends AbstractAction {
-    public ActionDiagramPan() {
-      super("Pan",new ImageIcon("images/pan.gif"));
-    }
-    public void actionPerformed(ActionEvent e) {
-      baseSim.setMode(JBaseSim.MODUS_PAN);
-    }
-  }
-
-  /** Little hack that changes the default gray color of a JViewPort */
-  private class XScrollPane extends JScrollPane {
-
-    private Color m_color;
-
-    public XScrollPane(JComponent comp) {
-        super(comp);
-        //m_color = comp.getBackground();
-        m_color = new Color (255,255,240);
-        // Needed for Java v1.3.0
-        getViewport().setBackground(m_color);
-    }  // Needed for Java v1.2.2_005
-    public void paintComponent(Graphics g) {
-        Rectangle r = g.getClipBounds();
-        g.setColor(m_color);
-        g.fillRect(r.x, r.y, r.width, r.height);
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConCorba.java b/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConCorba.java
deleted file mode 100644
index 5a5208859e18e94a3c297f57da1cb9c26ef7f709..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConCorba.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.astron.basesim.def;
-
-import org.astron.basesim.*;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class ConCorba extends Connection {
-  public ConCorba() {
-    super();
-    init();
-  }
-  public ConCorba(Graph graphOutput, Graph graphInput) {
-    super(graphOutput,graphInput);
-    init();
-  }
-  private void init() {
-    setColor(Color.blue.darker());
-    setStroke(SIMPLE_DOTTED_STROKE);
-    setStrokeSelected(THICK_DOTTED_STROKE);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConMPI.java b/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConMPI.java
deleted file mode 100644
index e71d3b94c87754bc0b54712b82ba6ba9e377c722..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConMPI.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.astron.basesim.def;
-
-import org.astron.basesim.*;
-import java.awt.*;
-
-/** The equivalent for the TH_MPI class in BaseSim. */
-public class ConMPI extends Connection {
-  public ConMPI() {
-    super();
-    init();
-  }
-  public ConMPI(Graph graphOutput, Graph graphInput) {
-    super(graphOutput,graphInput);
-    init();
-  }
-  private void init() {
-    setColor(Color.blue);
-    setStroke(SIMPLE_DASH_STROKE);
-    setStrokeSelected(THICK_DASH_STROKE);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConMem.java b/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConMem.java
deleted file mode 100644
index dcbae695a83e19b3b7513777a84df471b613e207..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/def/ConMem.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.basesim.def;
-
-import org.astron.basesim.*;
-import java.awt.*;
-
-/** The equivalent for the TH_Mem class in BaseSim. */
-public class ConMem extends Connection {
-
-  public ConMem() {
-    super();
-    init();
-  }
-  public ConMem(Graph graphOutput, Graph graphInput) {
-    super(graphOutput,graphInput);
-    init();
-  }
-
-  private void init() {
-    setStroke(SIMPLE_DASH_STROKE);
-    setStrokeSelected(THICK_DASH_STROKE);
-    setColor(Color.gray);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/basesim/def/DHEmpty.java b/support/tools/BaseSimGUI/src/org/astron/basesim/def/DHEmpty.java
deleted file mode 100644
index 7762a08f98d83fc02c786178a40b649f215cb320..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/basesim/def/DHEmpty.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.astron.basesim.def;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHEmpty extends GraphDataHolder {
-
-  public DHEmpty() {
-    super();
-    setBackground(Color.white);
-  }
-
-  /** Paint this Empty DataHolder. Overloaded from Graph. */
-  protected void paintGraph(Graphics2D g, Point abs) {
-    g.drawLine(abs.x,abs.y,abs.x+width,abs.y+height);
-    g.drawLine(abs.x,abs.y+height,abs.x+width,abs.y);
-  }
-
-  public String getClassName() { return "DH_Empty"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHAntenna.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHAntenna.java
deleted file mode 100644
index 7f90bb032fe62bb2336c2c8cdc4838493e9c5ecf..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHAntenna.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHAntenna extends GraphDataHolder {
-
-  public DHAntenna() {
-    super();
-    setBackground(Color.red);
-  }
-
-  public String getClassName() { return "DH_Antenna"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeam.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeam.java
deleted file mode 100644
index c6656b2e1229548ec2686e4b094b5b0238d3c841..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeam.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHBeam extends GraphDataHolder {
-
-  public DHBeam() {
-    super();
-    setBackground(Color.blue);
-  }
-
-  public String getClassName() { return "DH_Beam"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeamBand.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeamBand.java
deleted file mode 100644
index e8894774353e909204968365885f73a1616155b2..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeamBand.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHBeamBand extends GraphDataHolder {
-
-  public DHBeamBand() {
-    super();
-    setBackground(Color.magenta);
-  }
-  public String getClassName() { return "DH_BeamBand"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeamT.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeamT.java
deleted file mode 100644
index 36e74ee626706a627873bc1fdb9ee038a9bb44bf..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHBeamT.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHBeamT extends GraphDataHolder {
-
-  public DHBeamT() {
-    super();
-    setBackground(Color.darkGray);
-  }
-
-  public String getClassName() { return "DH_BeamT"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHCorr.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHCorr.java
deleted file mode 100644
index 58969cede7a9ce511fd096d68319197fbc93ba96..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHCorr.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHCorr extends GraphDataHolder {
-
-  public DHCorr() {
-    super();
-    setBackground(Color.green);
-  }
-
-  public String getClassName() { return "DH_Corr"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHFreq.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHFreq.java
deleted file mode 100644
index 2ad9ff90bab0b1f316c1f8c5af5cf6bfe0cb1da1..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHFreq.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHFreq extends GraphDataHolder {
-
-  public DHFreq() {
-    super();
-    setBackground(Color.cyan);
-  }
-
-  public String getClassName() { return "DH_Freq"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHFreqT.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHFreqT.java
deleted file mode 100644
index 08fe93c3d0b05c1007bf88cc33073e4ef57d4cae..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/DHFreqT.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphDataHolder;
-import java.awt.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-public class DHFreqT extends GraphDataHolder {
-
-  public DHFreqT() {
-    super();
-    setBackground(Color.cyan);
-  }
-
-  public String getClassName() { return "DH_FreqT"; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHAntenna.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHAntenna.java
deleted file mode 100644
index 809d85e797fc4e4892b4684ad8d2f6fb4f6f1cf8..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHAntenna.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.*;
-import java.awt.Toolkit;
-import java.awt.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company: ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHAntenna extends GraphWorkHolderImage {
-
-  final static Image iWHAntenna =
-    Toolkit.getDefaultToolkit().getImage("images/Antenna01.gif");
-
-  public WHAntenna() {
-    super();
-    setBaseRoundSize(2);
-    setImage(iWHAntenna);
-  }
-
-  public String getClassName() { return "Antenna"; }
-  public GraphDataHolder buildDataHolder(boolean input) { return new DHAntenna(); }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHBeam.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHBeam.java
deleted file mode 100644
index 11b540a90555336a84166b4766132c73d1b99d86..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHBeam.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package org.astron.lofarsim;
-
-import java.awt.*;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHBeam extends GraphWorkHolderImage {
-
-  public WHBeam() {
-    super();
-    setBaseSize(new Dimension(60,5));
-  }
-  public String getClassName() { return "Beam"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHFreqT();
-    } else {
-      return new DHBeamT();
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHCPInput.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHCPInput.java
deleted file mode 100644
index 0b7055886a0998bec4444b20cfabcf642bcb0357..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHCPInput.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHCPInput extends GraphWorkHolderImage {
-
-  public WHCPInput() {
-    super();
-  }
-
-  public String getClassName() { return "CPInput"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHBeam();
-    } else {
-      return new DHBeamBand();
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHController.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHController.java
deleted file mode 100644
index 0bfee6fde0ed30c3d4b03bba8fc49aec89c033a7..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHController.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHController extends GraphWorkHolderImage {
-
-  public WHController() {
-    super();
-  }
-
-  public String getClassName() { return "Controller"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    return new DHEmpty();
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHConvolve.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHConvolve.java
deleted file mode 100644
index c9ce95de765266b12f681fe973882a999524b750..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHConvolve.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHConvolve extends GraphWorkHolderImage {
-
-  public WHConvolve() {
-    super();
-  }
-
-  public String getClassName() { return "Convolve"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    return new DHCorr();
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHCorr.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHCorr.java
deleted file mode 100644
index 4521bef80287c06efb0ffb19f3983b01069afa74..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHCorr.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHCorr extends GraphWorkHolderImage {
-
-  public WHCorr() {
-    super();
-  }
-
-  public String getClassName() { return "WHCorr"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHBeamBand();
-    } else {
-      return new DHCorr();
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHDataProc.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHDataProc.java
deleted file mode 100644
index 4c34103c7cf07b8771e8a0103e80d7f1e2d6b1f8..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHDataProc.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHDataProc extends GraphWorkHolderImage {
-
-  public WHDataProc() {
-    super();
-  }
-
-  public String getClassName() { return "Data processor"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHBeam();
-    } else {
-      return new DHCorr();
-    }
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHFFT.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHFFT.java
deleted file mode 100644
index 7c365267e907f33ef3a35c6a180b63195256ae6c..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHFFT.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHFFT extends GraphWorkHolderImage {
-
-  public WHFFT() {
-    super();
-  }
-
-  public String getClassName() { return "FFT"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHAntenna();
-    } else {
-      return new DHFreq();
-    }
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHIntegrator.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHIntegrator.java
deleted file mode 100644
index cfd2ce25279585e196bf6761b5738da3c3608132..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHIntegrator.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHIntegrator extends GraphWorkHolderImage {
-
-  public WHIntegrator() {
-    super();
-  }
-
-  public String getClassName() { return "Integrator"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-      return new DHCorr();
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHMakeMS.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHMakeMS.java
deleted file mode 100644
index 7b8c5aa357da1e55a739fa19033d7e30f829401b..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHMakeMS.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHMakeMS extends GraphWorkHolderImage {
-
-  public WHMakeMS() {
-    super();
-  }
-
-  public String getClassName() { return "Make MS"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHCorr();
-    } else {
-      return new DHEmpty();
-    }
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHStation.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHStation.java
deleted file mode 100644
index dddfcad5a9e7c92ca44604e5b47cb356157295dd..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHStation.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHStation extends GraphWorkHolderImage {
-
-  public WHStation() {
-    super();
-  }
-
-  public String getClassName() { return "Station"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHAntenna();
-    } else {
-      return new DHBeam();
-    }
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHTransB.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHTransB.java
deleted file mode 100644
index 17bd9ff1b7cbea9a057e4ef128db93c6f4f2d72c..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHTransB.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.GraphWorkHolderImage;
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHTransB extends GraphWorkHolderImage {
-
-  public WHTransB() {
-    super();
-  }
-
-  public String getClassName() { return "TransB"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHBeamT();
-    } else {
-      return new DHBeam();
-    }
-  }
-
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHTransF.java b/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHTransF.java
deleted file mode 100644
index d51b10554f0b6062f288b77546a943e468ef0e8f..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/lofarsim/WHTransF.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.astron.lofarsim;
-
-import org.astron.basesim.*;
-import org.astron.basesim.def.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class WHTransF extends GraphWorkHolderImage {
-
-  public WHTransF() {
-    super();
-  }
-
-  public String getClassName() { return "TransF"; }
-  public GraphDataHolder buildDataHolder(boolean input) {
-    if (input) {
-      return new DHFreq();
-    } else {
-      return new DHFreqT();
-    }
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/Arguments.java b/support/tools/BaseSimGUI/src/org/astron/util/Arguments.java
deleted file mode 100644
index 6ef0213a897a7870c1a777feb561d4d7a8464e14..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/Arguments.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/*
- * The Apache Software License, Version 1.1
- *
- *
- * Copyright (c) 1999, 2000  The Apache Software Foundation.  All rights
- * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * 3. The end-user documentation included with the redistribution,
- *    if any, must include the following acknowledgment:
- *       "This product includes software developed by the
- *        Apache Software Foundation (http://www.apache.org/)."
- *    Alternately, this acknowledgment may appear in the software itself,
- *    if and wherever such third-party acknowledgments normally appear.
- *
- * 4. The names "Xerces" and "Apache Software Foundation" must
- *    not be used to endorse or promote products derived from this
- *    software without prior written permission. For written
- *    permission, please contact apache@apache.org.
- *
- * 5. Products derived from this software may not be called "Apache",
- *    nor may "Apache" appear in their name, without prior written
- *    permission of the Apache Software Foundation.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation and was
- * originally based on software copyright (c) 1999, International
- * Business Machines, Inc., http://www.apache.org.  For more
- * information on the Apache Software Foundation, please see
- * <http://www.apache.org/>.
- */
-
-
-
-package org.astron.util;
-import java.lang.Integer;
-
-
-
-/**
- * Utility like Unix getopt.
- *
- * Usage:
- *
- * int c;
- *
- *         parseArgumentTokens(argv);
- *         while ( (c =  getArguments()) != -1 ){
- *
- *          switch (c) {
- *             case 'v':
- *                 System.out.println( "v" );
- *                 break;
- *             case 'V':
- *                 System.out.println( "V" );
- *                 break;
- *
- * @version $id$
- * @author Jeffrey Rodriguez
- */
-
-public class Arguments {
-    private  boolean      fDbug                        = false;
-    private  Queue        queueOfSwitches              = new Queue(20);
-    private  Queue        queueStringParameters        = new Queue(20);
-    private  Queue        queueOfOtherStringParameters = new Queue(20);
-    private  String[]     messageArray                 = null;
-    private  int          lastPopArgument              = 0;
-
-
-    public Arguments() {
-    }
-
-    /**
-     * Takes the array of standar Args passed
-     * from main method and parses the '-' and
-     * the characters after arg.
-     *
-     * - The value -1 is a special flag that is
-     * used to indicate the beginning of the queue
-     * of flags and it is also to tell the end of
-     * a group of switches.
-     *
-     * This method will generate 3 internal queues.
-     * - A queue that has the switch flag arguments.
-     *   e.g.
-     *          -dvV
-     *   will hold  d, v, V, -1.
-     *
-     * - A queue holding the string arguments needed by
-     *   the switch flag arguments.
-     *   If character -p requires a string argument.
-     *   The string argument is saved in the string argument
-     *   queue.
-     *
-     * - A queue holding a list of files string parameters
-     *   not associated with a switch flag.
-     *   -a -v -p myvalue  test.xml test1.xml
-     *   this queue will containt test.xml test1.xml
-     *
-     * @param arguments
-     * @param argsWithOptions
-     */
-    public void    parseArgumentTokens(  String[] arguments , char[] argsWithOptions ){
-        int  theDash         = 0;
-        int  lengthOfToken   = 0;
-        char []bufferOfToken = null;
-        Object[] temp;
-
-        int  argLength = arguments.length;
-
-        outer:
-        for ( int i = 0; i<argLength; i++ ){
-            bufferOfToken = arguments[i].toCharArray();
-            lengthOfToken = bufferOfToken.length;
-            if ( bufferOfToken[0] == '-' ){
-                int   token;
-                //System.out.println( "argv = " + arguments[i] );
-                //System.out.println( "leng = " + lengthOfToken );
-                for ( int j = 1; j<lengthOfToken; j++ ){
-                    token = bufferOfToken[j];
-                    //System.out.println( "token = " + token );
-                    queueOfSwitches.push( (Object ) new Integer( token ));
-                    for ( int k = 0; k< argsWithOptions.length; k++) {
-                        if ( token == argsWithOptions[k] ){
-                            if ( this.fDbug  ) {
-                                System.out.println( "token = " + token );
-                            }
-                            //queueOfSwitches.push( (Object ) new Integer( -1 ));
-                            queueStringParameters.push( arguments[++i] );
-                            continue outer;
-                        }
-                    }
-
-                }
-
-                if ( i+1 < argLength ){
-                    if ( !( arguments[i+1].charAt(0) == '-') ) //next argument not start '-'
-                        queueOfSwitches.push( (Object ) new Integer( -1 )); //put -1 marker
-                }
-
-            } else{
-                queueOfOtherStringParameters.push( arguments[i] );
-            }
-        }
-
-
-        if ( this.fDbug ) {
-            queueOfSwitches.print();
-            queueStringParameters.print();
-            queueOfOtherStringParameters.print();
-        }
-    }
-
-
-    /**
-     *
-     * @return
-     */
-    public  int getArguments(){
-        if ( this.fDbug ){
-            queueOfSwitches.print();
-        }
-
-        //int value = ((Integer ) queueOfSwitches.pop()).intValue();
-        //if ( this.fDbug ) {
-          //  System.out.println("value = " + value );
-        //}
-        return queueOfSwitches.empty() ? -1:((Integer ) queueOfSwitches.pop()).intValue();
-    }
-
-
-
-    /**
-     *
-     * @return
-     */
-    public String getStringParameter(){
-        String    s = (String) queueStringParameters.pop();
-        if ( this.fDbug ){
-            queueStringParameters.print();
-        }
-        if ( this.fDbug )  {
-            System.out.println( "string par = " + s );
-        }
-        return s;
-    }
-
-
-    public String getlistFiles(){
-
-        if ( this.fDbug ) {
-            queueOfOtherStringParameters.print();
-        }
-
-        String s = (String) queueOfOtherStringParameters.pop();
-        return s;
-    }
-
-
-
-    public int stringParameterLeft( ){
-        return queueStringParameters.size();
-    }
-
-
-    public void setUsage( String[] message ){
-        messageArray = message;
-    }
-
-    public void printUsage() {
-        for ( int i = 0; i< messageArray.length; i++ ){
-            System.err.println( messageArray[i] );
-        }
-    }
-
-    // Private methods
-
-    // Private inner classes
-
-
-    private static final int  maxIncrement = 10;
-
-    private  class Queue   {
-        //private LinkedList queue;
-        private Object[]          queue;
-        private int               max;
-        private int               front;
-        private int               rear;
-        private int               items;
-
-
-        public Queue( int size) {
-            queue  = new Object[size];
-            front  = 0;
-            rear   = -1;
-            items  = 0;
-            max    = size;
-            //queue = new LinkedList();
-        }
-        public void push( Object token ) {
-            try {
-                queue[++rear] = token;
-                items++;
-            } catch ( ArrayIndexOutOfBoundsException ex ){
-                Object[] holdQueue = new Object[max + maxIncrement];
-                System.arraycopy(queue, 0, holdQueue,0,max );
-                queue = holdQueue;
-                max   += maxIncrement;
-                queue[rear] = token;
-                items++;
-            }
-
-            //queue.addLast( token );
-        }
-        public Object pop() {
-            Object token = null;
-            if ( items != 0 ) {
-                token = queue[front++];
-                items--;
-            }
-            return token;
-        }
-        public boolean empty(){
-            return(items==0);
-        }
-
-        public int size(){
-            return items;
-        }
-
-        public void clear(){
-            front  = 0;
-            rear   = -1;
-            items  = 0;
-        }
-
-
-        public void print(){
-            for ( int i = front; i <= rear;i++ ){
-                System.out.println( "token[ " +  i
-                                    + "] = " +  queue[i] ) ;
-            }
-
-        }
-
-    }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/Sample.java b/support/tools/BaseSimGUI/src/org/astron/util/Sample.java
deleted file mode 100644
index 6c7ed1cb738be50d91ad4162a984330fd4cb2e03..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/Sample.java
+++ /dev/null
@@ -1,93 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.util;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-import javax.swing.*;
-import java.awt.event.*;
-import java.awt.*;
-import java.util.*;
-import org.astron.util.gui.*;
-
-public class Sample {
-
-  public Sample() {
-    JFrame frame = new JFrame("JNotifier demo");
-    JNotifier notifier = new JNotifier();
-    addMessageListener(notifier);
-    fireMessage(new MessageEvent (this,"Dit is een foutmelding",MessageEvent.ERROR));
-    fireMessage(new MessageEvent (this,"Nu een waarschuwing",MessageEvent.WARNING));
-    fireMessage(new MessageEvent (this,"Dit is een gewone melding"));
-    fireMessage(new MessageEvent (this,"MessageEvent"));
-    fireMessage(new MessageEvent (this,"Dit is een gewone melding"));
-    fireMessage(new MessageEvent (this,"Dit is een gewone melding"));
-    fireMessage(new MessageEvent (this,"Dit is een gewone melding"));
-    frame.getContentPane().add(notifier);
-    frame.pack();
-    frame.show();
-    frame.addWindowListener(new MyWindowListener());
-  }
-
-  /** Classes that wish to report active messages to the user should implement
-   *  these methods.
-   *
-   *  ----------------------------
-   */
-
-  ArrayList _mlisteners = new ArrayList();
-
-  public void addMessageListener (MessageListener messageListener) {
-    _mlisteners.add(messageListener);
-  }
-  public void removeMessageListener (MessageListener messageListener) {
-    _mlisteners.remove(messageListener);
-  }
-  public void fireMessage(MessageEvent event) {
-    for (int i=0; i<_mlisteners.size(); i++) {
-      ((MessageListener)_mlisteners.get(i)).note(event);
-    }
-  }
-
-  /** -------------------------------- */
-
-
-  /*** Main ***/
-  public static void main(String[] args) {
-    Sample sample1 = new Sample();
-  }
-  private class MyWindowListener implements WindowListener {
-    public void windowActivated(WindowEvent e) {}
-    public void windowClosed(WindowEvent e) {}
-    public void windowClosing(WindowEvent e) { System.exit(0); }
-    public void windowDeactivated(WindowEvent e) {}
-    public void windowDeiconified(WindowEvent e) {}
-    public void windowIconified(WindowEvent e) {}
-    public void windowOpened(WindowEvent e) {}
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/Utils.java b/support/tools/BaseSimGUI/src/org/astron/util/Utils.java
deleted file mode 100644
index 2383bd842dfb80a6be51f38613109410e45b3126..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/Utils.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package org.astron.util;
-
-import java.io.File;;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company: ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-/** Collection of handy methods */
-public class Utils {
-
-  /* Get the extension of a file in lowercase. */
-  public static String getExtension(File f) {
-    String ext = null;
-    String s = f.getName();
-    int i = s.lastIndexOf('.');
-
-    if (i > 0 &&  i < s.length() - 1) {
-      ext = s.substring(i+1).toLowerCase();
-    }
-    return ext;
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/BatchFileTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/BatchFileTokenMarker.java
deleted file mode 100644
index d94c288e2a776e9145dac7bdf45566d581468977..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/BatchFileTokenMarker.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * BatchFileTokenMarker.java - Batch file token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Batch file token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class BatchFileTokenMarker extends TokenMarker
-{
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		int lastOffset = offset;
-		int length = line.count + offset;
-
-		if(SyntaxUtilities.regionMatches(true,line,offset,"rem"))
-		{
-			addToken(line.count,Token.COMMENT1);
-			return Token.NULL;
-		}
-
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(array[i])
-				{
-				case '%':
-					addToken(i - lastOffset,token);
-					lastOffset = i;
-					if(length - i <= 3 || array[i+2] == ' ')
-					{
-						addToken(2,Token.KEYWORD2);
-						i += 2;
-						lastOffset = i;
-					}
-					else
-						token = Token.KEYWORD2;
-					break;
-				case '"':
-					addToken(i - lastOffset,token);
-					token = Token.LITERAL1;
-					lastOffset = i;
-					break;
-				case ':':
-					if(i == offset)
-					{
-						addToken(line.count,Token.LABEL);
-						lastOffset = length;
-						break loop;
-					}
-					break;
-				case ' ':
-					if(lastOffset == offset)
-					{
-						addToken(i - lastOffset,Token.KEYWORD1);
-						lastOffset = i;
-					}
-					break;
-				}
-				break;
-			case Token.KEYWORD2:
-				if(array[i] == '%')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = i1;
-				}
-				break;
-			case Token.LITERAL1:
-				if(array[i] == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = i1;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: " + token);
-			}
-		}
-
-		if(lastOffset != length)
-		{
-			if(token != Token.NULL)
-				token = Token.INVALID;
-			else if(lastOffset == offset)
-				token = Token.KEYWORD1;
-			addToken(length - lastOffset,token);
-		}
-		return Token.NULL;
-	}
-
-	public boolean supportsMultilineTokens()
-	{
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/CCTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/CCTokenMarker.java
deleted file mode 100644
index 4655875b89d1d49bf5b6c2b90b31327fb012bada..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/CCTokenMarker.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * CCTokenMarker.java - C++ token marker
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.text.Segment;
-
-/**
- * C++ token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class CCTokenMarker extends CTokenMarker
-{
-	public CCTokenMarker()
-	{
-		super(true,getKeywords());
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if(ccKeywords == null)
-		{
-			ccKeywords = new KeywordMap(false);
-
-			ccKeywords.add("and", Token.KEYWORD3);
-			ccKeywords.add("and_eq", Token.KEYWORD3);
-			ccKeywords.add("asm", Token.KEYWORD2);         //
-			ccKeywords.add("auto", Token.KEYWORD1);        //
-			ccKeywords.add("bitand", Token.KEYWORD3);
-			ccKeywords.add("bitor", Token.KEYWORD3);
-			ccKeywords.add("bool",Token.KEYWORD3);
-			ccKeywords.add("break", Token.KEYWORD1);	   //
-			ccKeywords.add("case", Token.KEYWORD1);		   //
-			ccKeywords.add("catch", Token.KEYWORD1);
-			ccKeywords.add("char", Token.KEYWORD3);		   //
-			ccKeywords.add("class", Token.KEYWORD3);
-			ccKeywords.add("compl", Token.KEYWORD3);
-			ccKeywords.add("const", Token.KEYWORD1);	   //
-			ccKeywords.add("const_cast", Token.KEYWORD3);
-			ccKeywords.add("continue", Token.KEYWORD1);	   //
-			ccKeywords.add("default", Token.KEYWORD1);	   //
-			ccKeywords.add("delete", Token.KEYWORD1);
-			ccKeywords.add("do",Token.KEYWORD1);           //
-			ccKeywords.add("double" ,Token.KEYWORD3);	   //
-			ccKeywords.add("dynamic_cast", Token.KEYWORD3);
-			ccKeywords.add("else", 	Token.KEYWORD1);	   //
-			ccKeywords.add("enum",  Token.KEYWORD3);	   //
-			ccKeywords.add("explicit", Token.KEYWORD1);			
-			ccKeywords.add("export", Token.KEYWORD2);
-			ccKeywords.add("extern", Token.KEYWORD2);	   //
-			ccKeywords.add("false", Token.LITERAL2);
-			ccKeywords.add("float", Token.KEYWORD3);	   //
-			ccKeywords.add("for", Token.KEYWORD1);		   //
-			ccKeywords.add("friend", Token.KEYWORD1);			
-			ccKeywords.add("goto", Token.KEYWORD1);        //
-			ccKeywords.add("if", Token.KEYWORD1);		   //
-			ccKeywords.add("inline", Token.KEYWORD1);
-			ccKeywords.add("int", Token.KEYWORD3);		   //
-			ccKeywords.add("long", Token.KEYWORD3);		   //
-			ccKeywords.add("mutable", Token.KEYWORD3);
-			ccKeywords.add("namespace", Token.KEYWORD2);
-			ccKeywords.add("new", Token.KEYWORD1);
-			ccKeywords.add("not", Token.KEYWORD3);
-			ccKeywords.add("not_eq", Token.KEYWORD3);
-			ccKeywords.add("operator", Token.KEYWORD3);
-			ccKeywords.add("or", Token.KEYWORD3);
-			ccKeywords.add("or_eq", Token.KEYWORD3);
-			ccKeywords.add("private", Token.KEYWORD1);
-			ccKeywords.add("protected", Token.KEYWORD1);
-			ccKeywords.add("public", Token.KEYWORD1);
-			ccKeywords.add("register", Token.KEYWORD1);
-			ccKeywords.add("reinterpret_cast", Token.KEYWORD3);
-			ccKeywords.add("return", Token.KEYWORD1);      //
-			ccKeywords.add("short", Token.KEYWORD3);	   //
-			ccKeywords.add("signed", Token.KEYWORD3);	   //
-			ccKeywords.add("sizeof", Token.KEYWORD1);	   //
-			ccKeywords.add("static", Token.KEYWORD1);	   //
-			ccKeywords.add("static_cast", Token.KEYWORD3);
-			ccKeywords.add("struct", Token.KEYWORD3);	   //
-			ccKeywords.add("switch", Token.KEYWORD1);	   //
-			ccKeywords.add("template", Token.KEYWORD3);
-			ccKeywords.add("this", Token.LITERAL2);
-			ccKeywords.add("throw", Token.KEYWORD1);
-			ccKeywords.add("true", Token.LITERAL2);
-			ccKeywords.add("try", Token.KEYWORD1);
-			ccKeywords.add("typedef", Token.KEYWORD3);	   //
-			ccKeywords.add("typeid", Token.KEYWORD3);
-			ccKeywords.add("typename", Token.KEYWORD3);
-			ccKeywords.add("union", Token.KEYWORD3);	   //
-			ccKeywords.add("unsigned", Token.KEYWORD3);	   //
-			ccKeywords.add("using", Token.KEYWORD2);
-			ccKeywords.add("virtual", Token.KEYWORD1);
-			ccKeywords.add("void", Token.KEYWORD1);		   //
-			ccKeywords.add("volatile", Token.KEYWORD1);	   //
-			ccKeywords.add("wchar_t", Token.KEYWORD3);
-			ccKeywords.add("while", Token.KEYWORD1);	   //
-			ccKeywords.add("xor", Token.KEYWORD3);
-			ccKeywords.add("xor_eq", Token.KEYWORD3);            
-
-			// non ANSI keywords
-			ccKeywords.add("NULL", Token.LITERAL2);
-		}
-		return ccKeywords;
-	}
-
-	// private members
-	private static KeywordMap ccKeywords;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/CTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/CTokenMarker.java
deleted file mode 100644
index 8c33340372eff1aaadab9e1819b9037027e8ea4c..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/CTokenMarker.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*
- * CTokenMarker.java - C token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * C token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class CTokenMarker extends TokenMarker
-{
-	public CTokenMarker()
-	{
-		this(true,getKeywords());
-	}
-
-	public CTokenMarker(boolean cpp, KeywordMap keywords)
-	{
-		this.cpp = cpp;
-		this.keywords = keywords;
-	}
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		lastOffset = offset;
-		lastKeyword = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(c)
-				{
-				case '#':
-					if(backslash)
-						backslash = false;
-					else if(cpp)
-					{
-						if(doKeyword(line,i,c))
-							break;
-						addToken(i - lastOffset,token);
-						addToken(length - i,Token.KEYWORD2);
-						lastOffset = lastKeyword = length;
-						break loop;
-					}
-					break;
-				case '"':
-					doKeyword(line,i,c);
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL1;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case '\'':
-					doKeyword(line,i,c);
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL2;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case ':':
-					if(lastKeyword == offset)
-					{
-						if(doKeyword(line,i,c))
-							break;
-						backslash = false;
-						addToken(i1 - lastOffset,Token.LABEL);
-						lastOffset = lastKeyword = i1;
-					}
-					else if(doKeyword(line,i,c))
-						break;
-					break;
-				case '/':
-					backslash = false;
-					doKeyword(line,i,c);
-					if(length - i > 1)
-					{
-						switch(array[i1])
-						{
-						case '*':
-							addToken(i - lastOffset,token);
-							lastOffset = lastKeyword = i;
-							if(length - i > 2 && array[i+2] == '*')
-								token = Token.COMMENT2;
-							else
-								token = Token.COMMENT1;
-							break;
-						case '/':
-							addToken(i - lastOffset,token);
-							addToken(length - i,Token.COMMENT1);
-							lastOffset = lastKeyword = length;
-							break loop;
-						}
-					}
-					break;
-				default:
-					backslash = false;
-					if(!Character.isLetterOrDigit(c)
-						&& c != '_')
-						doKeyword(line,i,c);
-					break;
-				}
-				break;
-			case Token.COMMENT1:
-			case Token.COMMENT2:
-				backslash = false;
-				if(c == '*' && length - i > 1)
-				{
-					if(array[i1] == '/')
-					{
-						i++;
-						addToken((i+1) - lastOffset,token);
-						token = Token.NULL;
-						lastOffset = lastKeyword = i+1;
-					}
-				}
-				break;
-			case Token.LITERAL1:
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			case Token.LITERAL2:
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-
-		if(token == Token.NULL)
-			doKeyword(line,length,'\0');
-
-		switch(token)
-		{
-		case Token.LITERAL1:
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.INVALID);
-			token = Token.NULL;
-			break;
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,token);
-			if(!backslash)
-				token = Token.NULL;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-
-		return token;
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if(cKeywords == null)
-		{
-			cKeywords = new KeywordMap(false);
-			cKeywords.add("char",Token.KEYWORD3);
-			cKeywords.add("double",Token.KEYWORD3);
-			cKeywords.add("enum",Token.KEYWORD3);
-			cKeywords.add("float",Token.KEYWORD3);
-			cKeywords.add("int",Token.KEYWORD3);
-			cKeywords.add("long",Token.KEYWORD3);
-			cKeywords.add("short",Token.KEYWORD3);
-			cKeywords.add("signed",Token.KEYWORD3);
-			cKeywords.add("struct",Token.KEYWORD3);
-			cKeywords.add("typedef",Token.KEYWORD3);
-			cKeywords.add("union",Token.KEYWORD3);
-			cKeywords.add("unsigned",Token.KEYWORD3);
-			cKeywords.add("void",Token.KEYWORD3);
-			cKeywords.add("auto",Token.KEYWORD1);
-			cKeywords.add("const",Token.KEYWORD1);
-			cKeywords.add("extern",Token.KEYWORD1);
-			cKeywords.add("register",Token.KEYWORD1);
-			cKeywords.add("static",Token.KEYWORD1);
-			cKeywords.add("volatile",Token.KEYWORD1);
-			cKeywords.add("break",Token.KEYWORD1);
-			cKeywords.add("case",Token.KEYWORD1);
-			cKeywords.add("continue",Token.KEYWORD1);
-			cKeywords.add("default",Token.KEYWORD1);
-			cKeywords.add("do",Token.KEYWORD1);
-			cKeywords.add("else",Token.KEYWORD1);
-			cKeywords.add("for",Token.KEYWORD1);
-			cKeywords.add("goto",Token.KEYWORD1);
-			cKeywords.add("if",Token.KEYWORD1);
-			cKeywords.add("return",Token.KEYWORD1);
-			cKeywords.add("sizeof",Token.KEYWORD1);
-			cKeywords.add("switch",Token.KEYWORD1);
-			cKeywords.add("while",Token.KEYWORD1);
-			cKeywords.add("asm",Token.KEYWORD2);
-			cKeywords.add("asmlinkage",Token.KEYWORD2);
-			cKeywords.add("far",Token.KEYWORD2);
-			cKeywords.add("huge",Token.KEYWORD2);
-			cKeywords.add("inline",Token.KEYWORD2);
-			cKeywords.add("near",Token.KEYWORD2);
-			cKeywords.add("pascal",Token.KEYWORD2);
-			cKeywords.add("true",Token.LITERAL2);
-			cKeywords.add("false",Token.LITERAL2);
-			cKeywords.add("NULL",Token.LITERAL2);
-		}
-		return cKeywords;
-	}
-
-	// private members
-	private static KeywordMap cKeywords;
-
-	private boolean cpp;
-	private KeywordMap keywords;
-	private int lastOffset;
-	private int lastKeyword;
-
-	private boolean doKeyword(Segment line, int i, char c)
-	{
-		int i1 = i+1;
-
-		int len = i - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,id);
-			lastOffset = i;
-		}
-		lastKeyword = i1;
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/DefaultInputHandler.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/DefaultInputHandler.java
deleted file mode 100644
index 74ae773c9212db8ef6adc9f91258b89862c8a261..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/DefaultInputHandler.java
+++ /dev/null
@@ -1,346 +0,0 @@
-/*
- * DefaultInputHandler.java - Default implementation of an input handler
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.KeyStroke;
-import java.awt.event.*;
-import java.awt.Toolkit;
-import java.util.Hashtable;
-import java.util.StringTokenizer;
-
-/**
- * The default input handler. It maps sequences of keystrokes into actions
- * and inserts key typed events into the text area.
- * @author Slava Pestov
- * @version $Id$
- */
-public class DefaultInputHandler extends InputHandler
-{
-	/**
-	 * Creates a new input handler with no key bindings defined.
-	 */
-	public DefaultInputHandler()
-	{
-		bindings = currentBindings = new Hashtable();
-	}
-
-	/**
-	 * Sets up the default key bindings.
-	 */
-	public void addDefaultKeyBindings()
-	{
-		addKeyBinding("BACK_SPACE",BACKSPACE);
-		addKeyBinding("C+BACK_SPACE",BACKSPACE_WORD);
-		addKeyBinding("DELETE",DELETE);
-		addKeyBinding("C+DELETE",DELETE_WORD);
-
-		addKeyBinding("ENTER",INSERT_BREAK);
-		addKeyBinding("TAB",INSERT_TAB);
-
-		addKeyBinding("INSERT",OVERWRITE);
-		addKeyBinding("C+\\",TOGGLE_RECT);
-
-		addKeyBinding("HOME",HOME);
-		addKeyBinding("END",END);
-		addKeyBinding("S+HOME",SELECT_HOME);
-		addKeyBinding("S+END",SELECT_END);
-		addKeyBinding("C+HOME",DOCUMENT_HOME);
-		addKeyBinding("C+END",DOCUMENT_END);
-		addKeyBinding("CS+HOME",SELECT_DOC_HOME);
-		addKeyBinding("CS+END",SELECT_DOC_END);
-
-		addKeyBinding("PAGE_UP",PREV_PAGE);
-		addKeyBinding("PAGE_DOWN",NEXT_PAGE);
-		addKeyBinding("S+PAGE_UP",SELECT_PREV_PAGE);
-		addKeyBinding("S+PAGE_DOWN",SELECT_NEXT_PAGE);
-
-		addKeyBinding("LEFT",PREV_CHAR);
-		addKeyBinding("S+LEFT",SELECT_PREV_CHAR);
-		addKeyBinding("C+LEFT",PREV_WORD);
-		addKeyBinding("CS+LEFT",SELECT_PREV_WORD);
-		addKeyBinding("RIGHT",NEXT_CHAR);
-		addKeyBinding("S+RIGHT",SELECT_NEXT_CHAR);
-		addKeyBinding("C+RIGHT",NEXT_WORD);
-		addKeyBinding("CS+RIGHT",SELECT_NEXT_WORD);
-		addKeyBinding("UP",PREV_LINE);
-		addKeyBinding("S+UP",SELECT_PREV_LINE);
-		addKeyBinding("DOWN",NEXT_LINE);
-		addKeyBinding("S+DOWN",SELECT_NEXT_LINE);
-
-		addKeyBinding("C+ENTER",REPEAT);
-	}
-
-	/**
-	 * Adds a key binding to this input handler. The key binding is
-	 * a list of white space separated key strokes of the form
-	 * <i>[modifiers+]key</i> where modifier is C for Control, A for Alt,
-	 * or S for Shift, and key is either a character (a-z) or a field
-	 * name in the KeyEvent class prefixed with VK_ (e.g., BACK_SPACE)
-	 * @param keyBinding The key binding
-	 * @param action The action
-	 */
-	public void addKeyBinding(String keyBinding, ActionListener action)
-	{
-	        Hashtable current = bindings;
-
-		StringTokenizer st = new StringTokenizer(keyBinding);
-		while(st.hasMoreTokens())
-		{
-			KeyStroke keyStroke = parseKeyStroke(st.nextToken());
-			if(keyStroke == null)
-				return;
-
-			if(st.hasMoreTokens())
-			{
-				Object o = current.get(keyStroke);
-				if(o instanceof Hashtable)
-					current = (Hashtable)o;
-				else
-				{
-					o = new Hashtable();
-					current.put(keyStroke,o);
-					current = (Hashtable)o;
-				}
-			}
-			else
-				current.put(keyStroke,action);
-		}
-	}
-
-	/**
-	 * Removes a key binding from this input handler. This is not yet
-	 * implemented.
-	 * @param keyBinding The key binding
-	 */
-	public void removeKeyBinding(String keyBinding)
-	{
-		throw new InternalError("Not yet implemented");
-	}
-
-	/**
-	 * Removes all key bindings from this input handler.
-	 */
-	public void removeAllKeyBindings()
-	{
-		bindings.clear();
-	}
-
-	/**
-	 * Returns a copy of this input handler that shares the same
-	 * key bindings. Setting key bindings in the copy will also
-	 * set them in the original.
-	 */
-	public InputHandler copy()
-	{
-		return new DefaultInputHandler(this);
-	}
-
-	/**
-	 * Handle a key pressed event. This will look up the binding for
-	 * the key stroke and execute it.
-	 */
-	public void keyPressed(KeyEvent evt)
-	{
-		int keyCode = evt.getKeyCode();
-		int modifiers = evt.getModifiers();
-
-		if(keyCode == KeyEvent.VK_CONTROL ||
-			keyCode == KeyEvent.VK_SHIFT ||
-			keyCode == KeyEvent.VK_ALT ||
-			keyCode == KeyEvent.VK_META)
-			return;
-
-		if((modifiers & ~KeyEvent.SHIFT_MASK) != 0
-			|| evt.isActionKey()
-			|| keyCode == KeyEvent.VK_BACK_SPACE
-			|| keyCode == KeyEvent.VK_DELETE
-			|| keyCode == KeyEvent.VK_ENTER
-			|| keyCode == KeyEvent.VK_TAB
-			|| keyCode == KeyEvent.VK_ESCAPE)
-		{
-			if(grabAction != null)
-			{
-				handleGrabAction(evt);
-				return;
-			}
-
-			KeyStroke keyStroke = KeyStroke.getKeyStroke(keyCode,
-				modifiers);
-			Object o = currentBindings.get(keyStroke);
-			if(o == null)
-			{
-				// Don't beep if the user presses some
-				// key we don't know about unless a
-				// prefix is active. Otherwise it will
-				// beep when caps lock is pressed, etc.
-				if(currentBindings != bindings)
-				{
-					Toolkit.getDefaultToolkit().beep();
-					// F10 should be passed on, but C+e F10
-					// shouldn't
-					repeatCount = 0;
-					repeat = false;
-					evt.consume();
-				}
-				currentBindings = bindings;
-				return;
-			}
-			else if(o instanceof ActionListener)
-			{
-				currentBindings = bindings;
-
-				executeAction(((ActionListener)o),
-					evt.getSource(),null);
-
-				evt.consume();
-				return;
-			}
-			else if(o instanceof Hashtable)
-			{
-				currentBindings = (Hashtable)o;
-				evt.consume();
-				return;
-			}
-		}
-	}
-
-	/**
-	 * Handle a key typed event. This inserts the key into the text area.
-	 */
-	public void keyTyped(KeyEvent evt)
-	{
-		int modifiers = evt.getModifiers();
-		char c = evt.getKeyChar();
-		if(c != KeyEvent.CHAR_UNDEFINED &&
-			(modifiers & KeyEvent.ALT_MASK) == 0)
-		{
-			if(c >= 0x20 && c != 0x7f)
-			{
-				KeyStroke keyStroke = KeyStroke.getKeyStroke(
-					Character.toUpperCase(c));
-				Object o = currentBindings.get(keyStroke);
-
-				if(o instanceof Hashtable)
-				{
-					currentBindings = (Hashtable)o;
-					return;
-				}
-				else if(o instanceof ActionListener)
-				{
-					currentBindings = bindings;
-					executeAction((ActionListener)o,
-						evt.getSource(),
-						String.valueOf(c));
-					return;
-				}
-
-				currentBindings = bindings;
-
-				if(grabAction != null)
-				{
-					handleGrabAction(evt);
-					return;
-				}
-
-				// 0-9 adds another 'digit' to the repeat number
-				if(repeat && Character.isDigit(c))
-				{
-					repeatCount *= 10;
-					repeatCount += (c - '0');
-					return;
-				}
-
-				executeAction(INSERT_CHAR,evt.getSource(),
-					String.valueOf(evt.getKeyChar()));
-
-				repeatCount = 0;
-				repeat = false;
-			}
-		}
-	}
-
-	/**
-	 * Converts a string to a keystroke. The string should be of the
-	 * form <i>modifiers</i>+<i>shortcut</i> where <i>modifiers</i>
-	 * is any combination of A for Alt, C for Control, S for Shift
-	 * or M for Meta, and <i>shortcut</i> is either a single character,
-	 * or a keycode name from the <code>KeyEvent</code> class, without
-	 * the <code>VK_</code> prefix.
-	 * @param keyStroke A string description of the key stroke
-	 */
-	public static KeyStroke parseKeyStroke(String keyStroke)
-	{
-		if(keyStroke == null)
-			return null;
-		int modifiers = 0;
-		int index = keyStroke.indexOf('+');
-		if(index != -1)
-		{
-			for(int i = 0; i < index; i++)
-			{
-				switch(Character.toUpperCase(keyStroke
-					.charAt(i)))
-				{
-				case 'A':
-					modifiers |= InputEvent.ALT_MASK;
-					break;
-				case 'C':
-					modifiers |= InputEvent.CTRL_MASK;
-					break;
-				case 'M':
-					modifiers |= InputEvent.META_MASK;
-					break;
-				case 'S':
-					modifiers |= InputEvent.SHIFT_MASK;
-					break;
-				}
-			}
-		}
-		String key = keyStroke.substring(index + 1);
-		if(key.length() == 1)
-		{
-			char ch = Character.toUpperCase(key.charAt(0));
-			if(modifiers == 0)
-				return KeyStroke.getKeyStroke(ch);
-			else
-				return KeyStroke.getKeyStroke(ch,modifiers);
-		}
-		else if(key.length() == 0)
-		{
-			System.err.println("Invalid key stroke: " + keyStroke);
-			return null;
-		}
-		else
-		{
-			int ch;
-
-			try
-			{
-				ch = KeyEvent.class.getField("VK_".concat(key))
-					.getInt(null);
-			}
-			catch(Exception e)
-			{
-				System.err.println("Invalid key stroke: "
-					+ keyStroke);
-				return null;
-			}
-
-			return KeyStroke.getKeyStroke(ch,modifiers);
-		}
-	}
-
-	// private members
-	private Hashtable bindings;
-	private Hashtable currentBindings;
-
-	private DefaultInputHandler(DefaultInputHandler copy)
-	{
-		bindings = currentBindings = copy.bindings;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/DefaultTransparentListCellRenderer.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/DefaultTransparentListCellRenderer.java
deleted file mode 100644
index cfd676242e51a19b8ac6f9f0a151012590585324..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/DefaultTransparentListCellRenderer.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * SwingEx Project
- *
- * This class is part of the Swing Extension Project. The goal of this project
- * is to provide Swing components with extra functionality that isn't available
- * in the standard Swing components from Sun.
- *
- * @author Jeroen Zwartepoorte (Jeroen@xs4all.nl)
- */
-package org.astron.util.gui;
-import java.awt.Component;
-import javax.swing.*;
-
-/**
- * This component contains extended functionality that DefaultListCellRenderer
- * doesn't have. The DefaultListCellRenderer doesn't work when using a background
- * image in a JList. The opaque (transparency) value is set to true (not
- * transparent) when the cell is selected. It's set to false (transparent) when
- * the is not selected.<BR><BR>
- *
- * <B>Notes :</B> Any suggestions on extra functionality are welcome!
- *
- * @author Jeroen Zwartepoorte (<A HREF="mailto:Jeroen@xs4all.nl">Jeroen@xs4all.nl</A>)
- * @version 1.0 (13-02-1999)
- */
-public class DefaultTransparentListCellRenderer extends DefaultListCellRenderer
-{
-	/**
-     * Constructor.
-     */
-	public DefaultTransparentListCellRenderer()
-    {
-    	super();
-    }
-
-    /**
-     * Set the cells opaque value to true when selected, false when not selected.
-     * Source used of DefaultListCellRenderer.java.
-     */
-    public Component getListCellRendererComponent(JList list, Object value,
-    int index, boolean isSelected, boolean cellHasFocus)
-    {
-		if (isSelected)
-        {
-    		setOpaque(true);
-		    setBackground(list.getSelectionBackground());
-		    setForeground(list.getSelectionForeground());
-		}
-		else
-        {
-	    	setOpaque(false);
-		    setBackground(list.getBackground());
-	    	setForeground(list.getForeground());
-		}
-
-		if (value instanceof Icon)
-	    	setIcon((Icon)value);
-		else
-	    	setText((value == null) ? "" : value.toString());
-
-		setEnabled(list.isEnabled());
-		setFont(list.getFont());
-		setBorder((cellHasFocus) ? UIManager.getBorder("List.focusCellHighlightBorder") : noFocusBorder);
-
-		return this;
-    }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/EiffelTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/EiffelTokenMarker.java
deleted file mode 100644
index 15f8546198df579d44688063e7e76266df19d8ee..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/EiffelTokenMarker.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*
- * EiffelTokenMarker.java - Eiffel token marker
- * Copyright (C) 1999 Slava Pestov
- * Copyright (C) 1999 Artur Biesiadowski
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.text.Segment;
-
-/**
- * Eiffel token Marker.
- *
- * @author Artur Biesiadowski
- */
-public class EiffelTokenMarker extends TokenMarker
-{
-
-	public EiffelTokenMarker()
-	{
-		this.keywords = getKeywords();
-	}
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		lastOffset = offset;
-		lastKeyword = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '%')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(c)
-				{
-				case '"':
-					doKeyword(line,i,c);
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL1;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case '\'':
-					doKeyword(line,i,c);
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL2;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case ':':
-					if(lastKeyword == offset)
-					{
-						if(doKeyword(line,i,c))
-							break;
-						backslash = false;
-						addToken(i1 - lastOffset,Token.LABEL);
-						lastOffset = lastKeyword = i1;
-					}
-					else if(doKeyword(line,i,c))
-						break;
-					break;
-				case '-':
-					backslash = false;
-					doKeyword(line,i,c);
-					if(length - i > 1)
-					{
-						switch(array[i1])
-						{
-						case '-':
-							addToken(i - lastOffset,token);
-							addToken(length - i,Token.COMMENT1);
-							lastOffset = lastKeyword = length;
-							break loop;
-						}
-					}
-					break;
-				default:
-					backslash = false;
-					if(!Character.isLetterOrDigit(c)
-						&& c != '_')
-						doKeyword(line,i,c);
-					break;
-				}
-				break;
-			case Token.COMMENT1:
-			case Token.COMMENT2:
-				throw new RuntimeException("Wrong eiffel parser state");
-			case Token.LITERAL1:
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			case Token.LITERAL2:
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-
-		if(token == Token.NULL)
-			doKeyword(line,length,'\0');
-
-		switch(token)
-		{
-		case Token.LITERAL1:
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.INVALID);
-			token = Token.NULL;
-			break;
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,token);
-			if(!backslash)
-				token = Token.NULL;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-
-		return token;
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if(eiffelKeywords == null)
-		{
-			eiffelKeywords = new KeywordMap(true);
-			eiffelKeywords.add("alias", Token.KEYWORD1);
-			eiffelKeywords.add("all", Token.KEYWORD1);
-			eiffelKeywords.add("and", Token.KEYWORD1);
-			eiffelKeywords.add("as", Token.KEYWORD1);
-			eiffelKeywords.add("check", Token.KEYWORD1);
-			eiffelKeywords.add("class", Token.KEYWORD1);
-			eiffelKeywords.add("creation", Token.KEYWORD1);
-			eiffelKeywords.add("debug", Token.KEYWORD1);
-			eiffelKeywords.add("deferred", Token.KEYWORD1);
-			eiffelKeywords.add("do", Token.KEYWORD1);
-			eiffelKeywords.add("else",Token.KEYWORD1);
-			eiffelKeywords.add("elseif", Token.KEYWORD1);
-			eiffelKeywords.add("end", Token.KEYWORD1);
-			eiffelKeywords.add("ensure", Token.KEYWORD1);
-			eiffelKeywords.add("expanded", Token.KEYWORD1);
-			eiffelKeywords.add("export", Token.KEYWORD1);
-			eiffelKeywords.add("external", Token.KEYWORD1);
-			eiffelKeywords.add("feature", Token.KEYWORD1);
-			eiffelKeywords.add("from", Token.KEYWORD1);
-			eiffelKeywords.add("frozen", Token.KEYWORD1);
-			eiffelKeywords.add("if", Token.KEYWORD1);
-			eiffelKeywords.add("implies",Token.KEYWORD1);
-			eiffelKeywords.add("indexing", Token.KEYWORD1);
-			eiffelKeywords.add("infix", Token.KEYWORD1);
-			eiffelKeywords.add("inherit", Token.KEYWORD1);
-			eiffelKeywords.add("inspect", Token.KEYWORD1);
-			eiffelKeywords.add("invariant", Token.KEYWORD1);
-			eiffelKeywords.add("is", Token.KEYWORD1);
-			eiffelKeywords.add("like", Token.KEYWORD1);
-			eiffelKeywords.add("local", Token.KEYWORD1);
-			eiffelKeywords.add("loop", Token.KEYWORD1);
-			eiffelKeywords.add("not", Token.KEYWORD1);
-			eiffelKeywords.add("obsolete", Token.KEYWORD1);
-			eiffelKeywords.add("old",Token.KEYWORD1);
-			eiffelKeywords.add("once", Token.KEYWORD1);
-			eiffelKeywords.add("or", Token.KEYWORD1);
-			eiffelKeywords.add("prefix", Token.KEYWORD1);
-			eiffelKeywords.add("redefine", Token.KEYWORD1);
-			eiffelKeywords.add("rename", Token.KEYWORD1);
-			eiffelKeywords.add("require", Token.KEYWORD1);
-			eiffelKeywords.add("rescue", Token.KEYWORD1);
-			eiffelKeywords.add("retry", Token.KEYWORD1);
-			eiffelKeywords.add("select", Token.KEYWORD1);
-			eiffelKeywords.add("separate", Token.KEYWORD1);
-			eiffelKeywords.add("then",Token.KEYWORD1);
-			eiffelKeywords.add("undefine", Token.KEYWORD1);
-			eiffelKeywords.add("until", Token.KEYWORD1);
-			eiffelKeywords.add("variant", Token.KEYWORD1);
-			eiffelKeywords.add("when", Token.KEYWORD1);
-			eiffelKeywords.add("xor", Token.KEYWORD1);
-
-			eiffelKeywords.add("current",Token.LITERAL2);
-			eiffelKeywords.add("false",Token.LITERAL2);
-			eiffelKeywords.add("precursor",Token.LITERAL2);
-			eiffelKeywords.add("result",Token.LITERAL2);
-			eiffelKeywords.add("strip",Token.LITERAL2);
-			eiffelKeywords.add("true",Token.LITERAL2);
-			eiffelKeywords.add("unique",Token.LITERAL2);
-			eiffelKeywords.add("void",Token.LITERAL2);
-
-		}
-		return eiffelKeywords;
-	}
-
-	// private members
-	private static KeywordMap eiffelKeywords;
-
-	private boolean cpp;
-	private KeywordMap keywords;
-	private int lastOffset;
-	private int lastKeyword;
-
-	private boolean doKeyword(Segment line, int i, char c)
-	{
-		int i1 = i+1;
-		boolean klassname = false;
-
-		int len = i - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if ( id == Token.NULL )
-		{
-			klassname = true;
-			for ( int at = lastKeyword; at < lastKeyword + len; at++ )
-			{
-				char ch = line.array[at];
-				if ( ch != '_' && !Character.isUpperCase(ch) )
-				{
-					klassname = false;
-					break;
-				}
-			}
-			if ( klassname )
-				id = Token.KEYWORD3;
-		}
-
-		if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,id);
-			lastOffset = i;
-		}
-		lastKeyword = i1;
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/HTMLTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/HTMLTokenMarker.java
deleted file mode 100644
index f3c784004c0f9d8ed1a838a489ec09d0a81dd579..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/HTMLTokenMarker.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
- * HTMLTokenMarker.java - HTML token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * HTML token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class HTMLTokenMarker extends TokenMarker
-{
-	public static final byte JAVASCRIPT = Token.INTERNAL_FIRST;
-
-	public HTMLTokenMarker()
-	{
-		this(true);
-	}
-
-	public HTMLTokenMarker(boolean js)
-	{
-		this.js = js;
-		keywords = JavaScriptTokenMarker.getKeywords();
-	}
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		lastOffset = offset;
-		lastKeyword = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL: // HTML text
-				backslash = false;
-				switch(c)
-				{
-				case '<':
-					addToken(i - lastOffset,token);
-					lastOffset = lastKeyword = i;
-					if(SyntaxUtilities.regionMatches(false,
-						line,i1,"!--"))
-					{
-						i += 3;
-						token = Token.COMMENT1;
-					}
-					else if(js && SyntaxUtilities.regionMatches(
-						true,line,i1,"script>"))
-					{
-						addToken(8,Token.KEYWORD1);
-						lastOffset = lastKeyword = (i += 8);
-						token = JAVASCRIPT;
-					}
-					else
-					{
-						token = Token.KEYWORD1;
-					}
-					break;
-				case '&':
-					addToken(i - lastOffset,token);
-					lastOffset = lastKeyword = i;
-					token = Token.KEYWORD2;
-					break;
-				}
-				break;
-			case Token.KEYWORD1: // Inside a tag
-				backslash = false;
-				if(c == '>')
-				{
-					addToken(i1 - lastOffset,token);
-					lastOffset = lastKeyword = i1;
-					token = Token.NULL;
-				}
-				break;
-			case Token.KEYWORD2: // Inside an entity
-				backslash = false;
-				if(c == ';')
-				{
-					addToken(i1 - lastOffset,token);
-					lastOffset = lastKeyword = i1;
-					token = Token.NULL;
-					break;
-				}
-				break;
-			case Token.COMMENT1: // Inside a comment
-				backslash = false;
-				if(SyntaxUtilities.regionMatches(false,line,i,"-->"))
-				{
-					addToken((i + 3) - lastOffset,token);
-					lastOffset = lastKeyword = i + 3;
-					token = Token.NULL;
-				}
-				break;
-			case JAVASCRIPT: // Inside a JavaScript
-				switch(c)
-				{
-				case '<':
-					backslash = false;
-					doKeyword(line,i,c);
-					if(SyntaxUtilities.regionMatches(true,
-						line,i1,"/script>"))
-					{
-						addToken(i - lastOffset,
-							Token.NULL);
-						addToken(9,Token.KEYWORD1);
-						lastOffset = lastKeyword = (i += 9);
-						token = Token.NULL;
-					}
-					break;
-				case '"':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						doKeyword(line,i,c);
-						addToken(i - lastOffset,Token.NULL);
-						lastOffset = lastKeyword = i;
-						token = Token.LITERAL1;
-					}
-					break;
-				case '\'':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						doKeyword(line,i,c);
-						addToken(i - lastOffset,Token.NULL);
-						lastOffset = lastKeyword = i;
-						token = Token.LITERAL2;
-					}
-					break;
-				case '/':
-					backslash = false;
-					doKeyword(line,i,c);
-					if(length - i > 1)
-					{
-						addToken(i - lastOffset,Token.NULL);
-						lastOffset = lastKeyword = i;
-						if(array[i1] == '/')
-						{
-							addToken(length - i,Token.COMMENT2);
-							lastOffset = lastKeyword = length;
-							break loop;
-						}
-						else if(array[i1] == '*')
-						{
-							token = Token.COMMENT2;
-						}
-					}
-					break;
-				default:					backslash = false;
-					if(!Character.isLetterOrDigit(c)
-						&& c != '_')
-						doKeyword(line,i,c);
-					break;
-				}
-				break;
-			case Token.LITERAL1: // JavaScript "..."
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					lastOffset = lastKeyword = i1;
-					token = JAVASCRIPT;
-				}
-				break;
-			case Token.LITERAL2: // JavaScript '...'
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					lastOffset = lastKeyword = i1;
-					token = JAVASCRIPT;
-				}
-				break;
-			case Token.COMMENT2: // Inside a JavaScript comment
-				backslash = false;
-				if(c == '*' && length - i > 1 && array[i1] == '/')
-				{
-					addToken((i+=2) - lastOffset,Token.COMMENT2);
-					lastOffset = lastKeyword = i;
-					token = JAVASCRIPT;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-
-		switch(token)
-		{
-		case Token.LITERAL1:
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.INVALID);
-			token = JAVASCRIPT;
-			break;
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,Token.INVALID);
-			token = Token.NULL;
-			break;
-		case JAVASCRIPT:
-			doKeyword(line,length,'\0');
-			addToken(length - lastOffset,Token.NULL);
-			break;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-
-		return token;
-	}
-
-	// private members
-	private KeywordMap keywords;
-	private boolean js;
-	private int lastOffset;
-	private int lastKeyword;
-
-	private boolean doKeyword(Segment line, int i, char c)
-	{
-		int i1 = i+1;
-
-		int len = i - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,id);
-			lastOffset = i;
-		}
-		lastKeyword = i1;
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/IDLTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/IDLTokenMarker.java
deleted file mode 100644
index f1ae0d78d2a6d5b61a56f5578a710f577dcf1fa1..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/IDLTokenMarker.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * IDLTokenMarker.java - IDL token marker
- * Copyright (C) 1999 Slava Pestov
- * Copyright (C) 1999 Juha Lindfors
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * IDL token marker.
- *
- * @author Slava Pestov
- * @author Juha Lindfors
- * @version $Id$
- */
-public class IDLTokenMarker extends CTokenMarker
-{
-	public IDLTokenMarker()
-	{
-		super(true,getKeywords());
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if(idlKeywords == null)
-		{
-			idlKeywords = new KeywordMap(false);
-
-			idlKeywords.add("any",      Token.KEYWORD3);
-			idlKeywords.add("attribute",Token.KEYWORD1);
-			idlKeywords.add("boolean",  Token.KEYWORD3);
-			idlKeywords.add("case",     Token.KEYWORD1);
-			idlKeywords.add("char",     Token.KEYWORD3);
-			idlKeywords.add("const",    Token.KEYWORD1);
-			idlKeywords.add("context",  Token.KEYWORD1);
-			idlKeywords.add("default",  Token.KEYWORD1);
-			idlKeywords.add("double",   Token.KEYWORD3);
-			idlKeywords.add("enum",     Token.KEYWORD3);
-			idlKeywords.add("exception",Token.KEYWORD1);
-			idlKeywords.add("FALSE",    Token.LITERAL2);
-			idlKeywords.add("fixed",    Token.KEYWORD1);
-			idlKeywords.add("float",    Token.KEYWORD3);
-			idlKeywords.add("in",       Token.KEYWORD1);
-			idlKeywords.add("inout",    Token.KEYWORD1);
-			idlKeywords.add("interface",Token.KEYWORD1);
-			idlKeywords.add("long",     Token.KEYWORD3);
-			idlKeywords.add("module",   Token.KEYWORD1);
-			idlKeywords.add("Object",   Token.KEYWORD3);
-			idlKeywords.add("octet",    Token.KEYWORD3);
-			idlKeywords.add("oneway",   Token.KEYWORD1);
-			idlKeywords.add("out",      Token.KEYWORD1);
-			idlKeywords.add("raises",   Token.KEYWORD1);
-			idlKeywords.add("readonly", Token.KEYWORD1);
-			idlKeywords.add("sequence", Token.KEYWORD3);
-			idlKeywords.add("short",    Token.KEYWORD3);
-			idlKeywords.add("string",   Token.KEYWORD3);
-			idlKeywords.add("struct",   Token.KEYWORD3);
-			idlKeywords.add("switch",   Token.KEYWORD1);
-			idlKeywords.add("TRUE",     Token.LITERAL2);
-			idlKeywords.add("typedef",  Token.KEYWORD3);
-			idlKeywords.add("unsigned", Token.KEYWORD3);
-			idlKeywords.add("union",    Token.KEYWORD3);
-			idlKeywords.add("void",     Token.KEYWORD3);
-			idlKeywords.add("wchar",    Token.KEYWORD3);
-			idlKeywords.add("wstring",  Token.KEYWORD3);
-		}
-		return idlKeywords;
-	}
-
-	// private members
-	private static KeywordMap idlKeywords;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/InputHandler.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/InputHandler.java
deleted file mode 100644
index 05c0afc496a0b2ee66cfbbe04bc1bc3488fa62b7..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/InputHandler.java
+++ /dev/null
@@ -1,1071 +0,0 @@
-/*
- * InputHandler.java - Manages key bindings and executes actions
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.text.*;
-import javax.swing.JPopupMenu;
-import java.awt.event.*;
-import java.awt.Component;
-import java.util.*;
-
-/**
- * An input handler converts the user's key strokes into concrete actions.
- * It also takes care of macro recording and action repetition.<p>
- *
- * This class provides all the necessary support code for an input
- * handler, but doesn't actually do any key binding logic. It is up
- * to the implementations of this class to do so.
- *
- * @author Slava Pestov
- * @version $Id$
- * @see org.gjt.sp.jedit.textarea.DefaultInputHandler
- */
-public abstract class InputHandler extends KeyAdapter
-{
-	/**
-	 * If this client property is set to Boolean.TRUE on the text area,
-	 * the home/end keys will support 'smart' BRIEF-like behaviour
-	 * (one press = start/end of line, two presses = start/end of
-	 * viewscreen, three presses = start/end of document). By default,
-	 * this property is not set.
-	 */
-	public static final String SMART_HOME_END_PROPERTY = "InputHandler.homeEnd";
-
-	public static final ActionListener BACKSPACE = new backspace();
-	public static final ActionListener BACKSPACE_WORD = new backspace_word();
-	public static final ActionListener DELETE = new delete();
-	public static final ActionListener DELETE_WORD = new delete_word();
-	public static final ActionListener END = new end(false);
-	public static final ActionListener DOCUMENT_END = new document_end(false);
-	public static final ActionListener SELECT_END = new end(true);
-	public static final ActionListener SELECT_DOC_END = new document_end(true);
-	public static final ActionListener INSERT_BREAK = new insert_break();
-	public static final ActionListener INSERT_TAB = new insert_tab();
-	public static final ActionListener HOME = new home(false);
-	public static final ActionListener DOCUMENT_HOME = new document_home(false);
-	public static final ActionListener SELECT_HOME = new home(true);
-	public static final ActionListener SELECT_DOC_HOME = new document_home(true);
-	public static final ActionListener NEXT_CHAR = new next_char(false);
-	public static final ActionListener NEXT_LINE = new next_line(false);
-	public static final ActionListener NEXT_PAGE = new next_page(false);
-	public static final ActionListener NEXT_WORD = new next_word(false);
-	public static final ActionListener SELECT_NEXT_CHAR = new next_char(true);
-	public static final ActionListener SELECT_NEXT_LINE = new next_line(true);
-	public static final ActionListener SELECT_NEXT_PAGE = new next_page(true);
-	public static final ActionListener SELECT_NEXT_WORD = new next_word(true);
-	public static final ActionListener OVERWRITE = new overwrite();
-	public static final ActionListener PREV_CHAR = new prev_char(false);
-	public static final ActionListener PREV_LINE = new prev_line(false);
-	public static final ActionListener PREV_PAGE = new prev_page(false);
-	public static final ActionListener PREV_WORD = new prev_word(false);
-	public static final ActionListener SELECT_PREV_CHAR = new prev_char(true);
-	public static final ActionListener SELECT_PREV_LINE = new prev_line(true);
-	public static final ActionListener SELECT_PREV_PAGE = new prev_page(true);
-	public static final ActionListener SELECT_PREV_WORD = new prev_word(true);
-	public static final ActionListener REPEAT = new repeat();
-	public static final ActionListener TOGGLE_RECT = new toggle_rect();
-
-	// Default action
-	public static final ActionListener INSERT_CHAR = new insert_char();
-
-	private static Hashtable actions;
-
-	static
-	{
-		actions = new Hashtable();
-		actions.put("backspace",BACKSPACE);
-		actions.put("backspace-word",BACKSPACE_WORD);
-		actions.put("delete",DELETE);
-		actions.put("delete-word",DELETE_WORD);
-		actions.put("end",END);
-		actions.put("select-end",SELECT_END);
-		actions.put("document-end",DOCUMENT_END);
-		actions.put("select-doc-end",SELECT_DOC_END);
-		actions.put("insert-break",INSERT_BREAK);
-		actions.put("insert-tab",INSERT_TAB);
-		actions.put("home",HOME);
-		actions.put("select-home",SELECT_HOME);
-		actions.put("document-home",DOCUMENT_HOME);
-		actions.put("select-doc-home",SELECT_DOC_HOME);
-		actions.put("next-char",NEXT_CHAR);
-		actions.put("next-line",NEXT_LINE);
-		actions.put("next-page",NEXT_PAGE);
-		actions.put("next-word",NEXT_WORD);
-		actions.put("select-next-char",SELECT_NEXT_CHAR);
-		actions.put("select-next-line",SELECT_NEXT_LINE);
-		actions.put("select-next-page",SELECT_NEXT_PAGE);
-		actions.put("select-next-word",SELECT_NEXT_WORD);
-		actions.put("overwrite",OVERWRITE);
-		actions.put("prev-char",PREV_CHAR);
-		actions.put("prev-line",PREV_LINE);
-		actions.put("prev-page",PREV_PAGE);
-		actions.put("prev-word",PREV_WORD);
-		actions.put("select-prev-char",SELECT_PREV_CHAR);
-		actions.put("select-prev-line",SELECT_PREV_LINE);
-		actions.put("select-prev-page",SELECT_PREV_PAGE);
-		actions.put("select-prev-word",SELECT_PREV_WORD);
-		actions.put("repeat",REPEAT);
-		actions.put("toggle-rect",TOGGLE_RECT);
-		actions.put("insert-char",INSERT_CHAR);
-	}
-
-	/**
-	 * Returns a named text area action.
-	 * @param name The action name
-	 */
-	public static ActionListener getAction(String name)
-	{
-		return (ActionListener)actions.get(name);
-	}
-
-	/**
-	 * Returns the name of the specified text area action.
-	 * @param listener The action
-	 */
-	public static String getActionName(ActionListener listener)
-	{
-		Enumeration enum = getActions();
-		while(enum.hasMoreElements())
-		{
-			String name = (String)enum.nextElement();
-			ActionListener _listener = getAction(name);
-			if(_listener == listener)
-				return name;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns an enumeration of all available actions.
-	 */
-	public static Enumeration getActions()
-	{
-		return actions.keys();
-	}
-
-	/**
-	 * Adds the default key bindings to this input handler.
-	 * This should not be called in the constructor of this
-	 * input handler, because applications might load the
-	 * key bindings from a file, etc.
-	 */
-	public abstract void addDefaultKeyBindings();
-
-	/**
-	 * Adds a key binding to this input handler.
-	 * @param keyBinding The key binding (the format of this is
-	 * input-handler specific)
-	 * @param action The action
-	 */
-	public abstract void addKeyBinding(String keyBinding, ActionListener action);
-
-	/**
-	 * Removes a key binding from this input handler.
-	 * @param keyBinding The key binding
-	 */
-	public abstract void removeKeyBinding(String keyBinding);
-
-	/**
-	 * Removes all key bindings from this input handler.
-	 */
-	public abstract void removeAllKeyBindings();
-
-	/**
-	 * Grabs the next key typed event and invokes the specified
-	 * action with the key as a the action command.
-	 * @param action The action
-	 */
-	public void grabNextKeyStroke(ActionListener listener)
-	{
-		grabAction = listener;
-	}
-
-	/**
-	 * Returns if repeating is enabled. When repeating is enabled,
-	 * actions will be executed multiple times. This is usually
-	 * invoked with a special key stroke in the input handler.
-	 */
-	public boolean isRepeatEnabled()
-	{
-		return repeat;
-	}
-
-	/**
-	 * Enables repeating. When repeating is enabled, actions will be
-	 * executed multiple times. Once repeating is enabled, the input
-	 * handler should read a number from the keyboard.
-	 */
-	public void setRepeatEnabled(boolean repeat)
-	{
-		this.repeat = repeat;
-	}
-
-	/**
-	 * Returns the number of times the next action will be repeated.
-	 */
-	public int getRepeatCount()
-	{
-		return (repeat ? Math.max(1,repeatCount) : 1);
-	}
-
-	/**
-	 * Sets the number of times the next action will be repeated.
-	 * @param repeatCount The repeat count
-	 */
-	public void setRepeatCount(int repeatCount)
-	{
-		this.repeatCount = repeatCount;
-	}
-
-	/**
-	 * Returns the macro recorder. If this is non-null, all executed
-	 * actions should be forwarded to the recorder.
-	 */
-	public InputHandler.MacroRecorder getMacroRecorder()
-	{
-		return recorder;
-	}
-
-	/**
-	 * Sets the macro recorder. If this is non-null, all executed
-	 * actions should be forwarded to the recorder.
-	 * @param recorder The macro recorder
-	 */
-	public void setMacroRecorder(InputHandler.MacroRecorder recorder)
-	{
-		this.recorder = recorder;
-	}
-
-	/**
-	 * Returns a copy of this input handler that shares the same
-	 * key bindings. Setting key bindings in the copy will also
-	 * set them in the original.
-	 */
-	public abstract InputHandler copy();
-
-	/**
-	 * Executes the specified action, repeating and recording it as
-	 * necessary.
-	 * @param listener The action listener
-	 * @param source The event source
-	 * @param actionCommand The action command
-	 */
-	public void executeAction(ActionListener listener, Object source,
-		String actionCommand)
-	{
-		// create event
-		ActionEvent evt = new ActionEvent(source,
-			ActionEvent.ACTION_PERFORMED,
-			actionCommand);
-
-		// don't do anything if the action is a wrapper
-		// (like EditAction.Wrapper)
-		if(listener instanceof Wrapper)
-		{
-			listener.actionPerformed(evt);
-			return;
-		}
-
-		// remember old values, in case action changes them
-		boolean _repeat = repeat;
-		int _repeatCount = getRepeatCount();
-
-		// execute the action
-		if(listener instanceof InputHandler.NonRepeatable)
-			listener.actionPerformed(evt);
-		else
-		{
-			for(int i = 0; i < Math.max(1,repeatCount); i++)
-				listener.actionPerformed(evt);
-		}
-
-		// do recording. Notice that we do no recording whatsoever
-		// for actions that grab keys
-		if(grabAction == null)
-		{
-			if(recorder != null)
-			{
-				if(!(listener instanceof InputHandler.NonRecordable))
-				{
-					if(_repeatCount != 1)
-						recorder.actionPerformed(REPEAT,String.valueOf(_repeatCount));
-
-					recorder.actionPerformed(listener,actionCommand);
-				}
-			}
-
-			// If repeat was true originally, clear it
-			// Otherwise it might have been set by the action, etc
-			if(_repeat)
-			{
-				repeat = false;
-				repeatCount = 0;
-			}
-		}
-	}
-
-	/**
-	 * Returns the text area that fired the specified event.
-	 * @param evt The event
-	 */
-	public static JEditTextArea getTextArea(EventObject evt)
-	{
-		if(evt != null)
-		{
-			Object o = evt.getSource();
-			if(o instanceof Component)
-			{
-				// find the parent text area
-				Component c = (Component)o;
-				for(;;)
-				{
-					if(c instanceof JEditTextArea)
-						return (JEditTextArea)c;
-					else if(c == null)
-						break;
-					if(c instanceof JPopupMenu)
-						c = ((JPopupMenu)c)
-							.getInvoker();
-					else
-						c = c.getParent();
-				}
-			}
-		}
-
-		// this shouldn't happen
-		System.err.println("BUG: getTextArea() returning null");
-		System.err.println("Report this to Slava Pestov <sp@gjt.org>");
-		return null;
-	}
-
-	// protected members
-
-	/**
-	 * If a key is being grabbed, this method should be called with
-	 * the appropriate key event. It executes the grab action with
-	 * the typed character as the parameter.
-	 */
-	protected void handleGrabAction(KeyEvent evt)
-	{
-		// Clear it *before* it is executed so that executeAction()
-		// resets the repeat count
-		ActionListener _grabAction = grabAction;
-		grabAction = null;
-		executeAction(_grabAction,evt.getSource(),
-			String.valueOf(evt.getKeyChar()));
-	}
-
-	// protected members
-	protected ActionListener grabAction;
-	protected boolean repeat;
-	protected int repeatCount;
-	protected InputHandler.MacroRecorder recorder;
-
-	/**
-	 * If an action implements this interface, it should not be repeated.
-	 * Instead, it will handle the repetition itself.
-	 */
-	public interface NonRepeatable {}
-
-	/**
-	 * If an action implements this interface, it should not be recorded
-	 * by the macro recorder. Instead, it will do its own recording.
-	 */
-	public interface NonRecordable {}
-
-	/**
-	 * For use by EditAction.Wrapper only.
-	 * @since jEdit 2.2final
-	 */
-	public interface Wrapper {}
-
-	/**
-	 * Macro recorder.
-	 */
-	public interface MacroRecorder
-	{
-		void actionPerformed(ActionListener listener,
-			String actionCommand);
-	}
-
-	public static class backspace implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-
-			if(!textArea.isEditable())
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			if(textArea.getSelectionStart()
-			   != textArea.getSelectionEnd())
-			{
-				textArea.setSelectedText("");
-			}
-			else
-			{
-				int caret = textArea.getCaretPosition();
-				if(caret == 0)
-				{
-					textArea.getToolkit().beep();
-					return;
-				}
-				try
-				{
-					textArea.getDocument().remove(caret - 1,1);
-				}
-				catch(BadLocationException bl)
-				{
-					bl.printStackTrace();
-				}
-			}
-		}
-	}
-
-	public static class backspace_word implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int start = textArea.getSelectionStart();
-			if(start != textArea.getSelectionEnd())
-			{
-				textArea.setSelectedText("");
-			}
-
-			int line = textArea.getCaretLine();
-			int lineStart = textArea.getLineStartOffset(line);
-			int caret = start - lineStart;
-
-			String lineText = textArea.getLineText(textArea
-				.getCaretLine());
-
-			if(caret == 0)
-			{
-				if(lineStart == 0)
-				{
-					textArea.getToolkit().beep();
-					return;
-				}
-				caret--;
-			}
-			else
-			{
-				String noWordSep = (String)textArea.getDocument().getProperty("noWordSep");
-				caret = TextUtilities.findWordStart(lineText,caret,noWordSep);
-			}
-
-			try
-			{
-				textArea.getDocument().remove(
-						caret + lineStart,
-						start - (caret + lineStart));
-			}
-			catch(BadLocationException bl)
-			{
-				bl.printStackTrace();
-			}
-		}
-	}
-
-	public static class delete implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-
-			if(!textArea.isEditable())
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			if(textArea.getSelectionStart()
-			   != textArea.getSelectionEnd())
-			{
-				textArea.setSelectedText("");
-			}
-			else
-			{
-				int caret = textArea.getCaretPosition();
-				if(caret == textArea.getDocumentLength())
-				{
-					textArea.getToolkit().beep();
-					return;
-				}
-				try
-				{
-					textArea.getDocument().remove(caret,1);
-				}
-				catch(BadLocationException bl)
-				{
-					bl.printStackTrace();
-				}
-			}
-		}
-	}
-
-	public static class delete_word implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int start = textArea.getSelectionStart();
-			if(start != textArea.getSelectionEnd())
-			{
-				textArea.setSelectedText("");
-			}
-
-			int line = textArea.getCaretLine();
-			int lineStart = textArea.getLineStartOffset(line);
-			int caret = start - lineStart;
-
-			String lineText = textArea.getLineText(textArea
-				.getCaretLine());
-
-			if(caret == lineText.length())
-			{
-				if(lineStart + caret == textArea.getDocumentLength())
-				{
-					textArea.getToolkit().beep();
-					return;
-				}
-				caret++;
-			}
-			else
-			{
-				String noWordSep = (String)textArea.getDocument().getProperty("noWordSep");
-				caret = TextUtilities.findWordEnd(lineText,caret,noWordSep);
-			}
-
-			try
-			{
-				textArea.getDocument().remove(start,
-					(caret + lineStart) - start);
-			}
-			catch(BadLocationException bl)
-			{
-				bl.printStackTrace();
-			}
-		}
-	}
-
-	public static class end implements ActionListener
-	{
-		private boolean select;
-
-		public end(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-
-			int caret = textArea.getCaretPosition();
-
-			int lastOfLine = textArea.getLineEndOffset(
-				textArea.getCaretLine()) - 1;
-			int lastVisibleLine = textArea.getFirstLine()
-				+ textArea.getVisibleLines();
-			if(lastVisibleLine >= textArea.getLineCount())
-			{
-				lastVisibleLine = Math.min(textArea.getLineCount() - 1,
-					lastVisibleLine);
-			}
-			else
-				lastVisibleLine -= (textArea.getElectricScroll() + 1);
-
-			int lastVisible = textArea.getLineEndOffset(lastVisibleLine) - 1;
-			int lastDocument = textArea.getDocumentLength();
-
-			if(caret == lastDocument)
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-			else if(!Boolean.TRUE.equals(textArea.getClientProperty(
-				SMART_HOME_END_PROPERTY)))
-				caret = lastOfLine;
-			else if(caret == lastVisible)
-				caret = lastDocument;
-			else if(caret == lastOfLine)
-				caret = lastVisible;
-			else
-				caret = lastOfLine;
-
-			if(select)
-				textArea.select(textArea.getMarkPosition(),caret);
-			else
-				textArea.setCaretPosition(caret);
-		}
-	}
-
-	public static class document_end implements ActionListener
-	{
-		private boolean select;
-
-		public document_end(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			if(select)
-				textArea.select(textArea.getMarkPosition(),
-					textArea.getDocumentLength());
-			else
-				textArea.setCaretPosition(textArea
-					.getDocumentLength());
-		}
-	}
-
-	public static class home implements ActionListener
-	{
-		private boolean select;
-
-		public home(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-
-			int caret = textArea.getCaretPosition();
-
-			int firstLine = textArea.getFirstLine();
-
-			int firstOfLine = textArea.getLineStartOffset(
-				textArea.getCaretLine());
-			int firstVisibleLine = (firstLine == 0 ? 0 :
-				firstLine + textArea.getElectricScroll());
-			int firstVisible = textArea.getLineStartOffset(
-				firstVisibleLine);
-
-			if(caret == 0)
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-			else if(!Boolean.TRUE.equals(textArea.getClientProperty(
-				SMART_HOME_END_PROPERTY)))
-				caret = firstOfLine;
-			else if(caret == firstVisible)
-				caret = 0;
-			else if(caret == firstOfLine)
-				caret = firstVisible;
-			else
-				caret = firstOfLine;
-
-			if(select)
-				textArea.select(textArea.getMarkPosition(),caret);
-			else
-				textArea.setCaretPosition(caret);
-		}
-	}
-
-	public static class document_home implements ActionListener
-	{
-		private boolean select;
-
-		public document_home(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			if(select)
-				textArea.select(textArea.getMarkPosition(),0);
-			else
-				textArea.setCaretPosition(0);
-		}
-	}
-
-	public static class insert_break implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-
-			if(!textArea.isEditable())
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			textArea.setSelectedText("\n");
-		}
-	}
-
-	public static class insert_tab implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-
-			if(!textArea.isEditable())
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			textArea.overwriteSetSelectedText("\t");
-		}
-	}
-
-	public static class next_char implements ActionListener
-	{
-		private boolean select;
-
-		public next_char(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int caret = textArea.getCaretPosition();
-			if(caret == textArea.getDocumentLength())
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			if(select)
-				textArea.select(textArea.getMarkPosition(),
-					caret + 1);
-			else
-				textArea.setCaretPosition(caret + 1);
-		}
-	}
-
-	public static class next_line implements ActionListener
-	{
-		private boolean select;
-
-		public next_line(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int caret = textArea.getCaretPosition();
-			int line = textArea.getCaretLine();
-
-			if(line == textArea.getLineCount() - 1)
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			int magic = textArea.getMagicCaretPosition();
-			if(magic == -1)
-			{
-				magic = textArea.offsetToX(line,
-					caret - textArea.getLineStartOffset(line));
-			}
-
-			caret = textArea.getLineStartOffset(line + 1)
-				+ textArea.xToOffset(line + 1,magic);
-			if(select)
-				textArea.select(textArea.getMarkPosition(),caret);
-			else
-				textArea.setCaretPosition(caret);
-			textArea.setMagicCaretPosition(magic);
-		}
-	}
-
-	public static class next_page implements ActionListener
-	{
-		private boolean select;
-
-		public next_page(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int lineCount = textArea.getLineCount();
-			int firstLine = textArea.getFirstLine();
-			int visibleLines = textArea.getVisibleLines();
-			int line = textArea.getCaretLine();
-
-			firstLine += visibleLines;
-
-			if(firstLine + visibleLines >= lineCount - 1)
-				firstLine = lineCount - visibleLines;
-
-			textArea.setFirstLine(firstLine);
-
-			int caret = textArea.getLineStartOffset(
-				Math.min(textArea.getLineCount() - 1,
-				line + visibleLines));
-			if(select)
-				textArea.select(textArea.getMarkPosition(),caret);
-			else
-				textArea.setCaretPosition(caret);
-		}
-	}
-
-	public static class next_word implements ActionListener
-	{
-		private boolean select;
-
-		public next_word(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int caret = textArea.getCaretPosition();
-			int line = textArea.getCaretLine();
-			int lineStart = textArea.getLineStartOffset(line);
-			caret -= lineStart;
-
-			String lineText = textArea.getLineText(textArea
-				.getCaretLine());
-
-			if(caret == lineText.length())
-			{
-				if(lineStart + caret == textArea.getDocumentLength())
-				{
-					textArea.getToolkit().beep();
-					return;
-				}
-				caret++;
-			}
-			else
-			{
-				String noWordSep = (String)textArea.getDocument().getProperty("noWordSep");
-				caret = TextUtilities.findWordEnd(lineText,caret,noWordSep);
-			}
-
-			if(select)
-				textArea.select(textArea.getMarkPosition(),
-					lineStart + caret);
-			else
-				textArea.setCaretPosition(lineStart + caret);
-		}
-	}
-
-	public static class overwrite implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			textArea.setOverwriteEnabled(
-				!textArea.isOverwriteEnabled());
-		}
-	}
-
-	public static class prev_char implements ActionListener
-	{
-		private boolean select;
-
-		public prev_char(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int caret = textArea.getCaretPosition();
-			if(caret == 0)
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			if(select)
-				textArea.select(textArea.getMarkPosition(),
-					caret - 1);
-			else
-				textArea.setCaretPosition(caret - 1);
-		}
-	}
-
-	public static class prev_line implements ActionListener
-	{
-		private boolean select;
-
-		public prev_line(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int caret = textArea.getCaretPosition();
-			int line = textArea.getCaretLine();
-
-			if(line == 0)
-			{
-				textArea.getToolkit().beep();
-				return;
-			}
-
-			int magic = textArea.getMagicCaretPosition();
-			if(magic == -1)
-			{
-				magic = textArea.offsetToX(line,
-					caret - textArea.getLineStartOffset(line));
-			}
-
-			caret = textArea.getLineStartOffset(line - 1)
-				+ textArea.xToOffset(line - 1,magic);
-			if(select)
-				textArea.select(textArea.getMarkPosition(),caret);
-			else
-				textArea.setCaretPosition(caret);
-			textArea.setMagicCaretPosition(magic);
-		}
-	}
-
-	public static class prev_page implements ActionListener
-	{
-		private boolean select;
-
-		public prev_page(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int firstLine = textArea.getFirstLine();
-			int visibleLines = textArea.getVisibleLines();
-			int line = textArea.getCaretLine();
-
-			if(firstLine < visibleLines)
-				firstLine = visibleLines;
-
-			textArea.setFirstLine(firstLine - visibleLines);
-
-			int caret = textArea.getLineStartOffset(
-				Math.max(0,line - visibleLines));
-			if(select)
-				textArea.select(textArea.getMarkPosition(),caret);
-			else
-				textArea.setCaretPosition(caret);
-		}
-	}
-
-	public static class prev_word implements ActionListener
-	{
-		private boolean select;
-
-		public prev_word(boolean select)
-		{
-			this.select = select;
-		}
-
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			int caret = textArea.getCaretPosition();
-			int line = textArea.getCaretLine();
-			int lineStart = textArea.getLineStartOffset(line);
-			caret -= lineStart;
-
-			String lineText = textArea.getLineText(textArea
-				.getCaretLine());
-
-			if(caret == 0)
-			{
-				if(lineStart == 0)
-				{
-					textArea.getToolkit().beep();
-					return;
-				}
-				caret--;
-			}
-			else
-			{
-				String noWordSep = (String)textArea.getDocument().getProperty("noWordSep");
-				caret = TextUtilities.findWordStart(lineText,caret,noWordSep);
-			}
-
-			if(select)
-				textArea.select(textArea.getMarkPosition(),
-					lineStart + caret);
-			else
-				textArea.setCaretPosition(lineStart + caret);
-		}
-	}
-
-	public static class repeat implements ActionListener,
-		InputHandler.NonRecordable
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			textArea.getInputHandler().setRepeatEnabled(true);
-			String actionCommand = evt.getActionCommand();
-			if(actionCommand != null)
-			{
-				textArea.getInputHandler().setRepeatCount(
-					Integer.parseInt(actionCommand));
-			}
-		}
-	}
-
-	public static class toggle_rect implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			textArea.setSelectionRectangular(
-				!textArea.isSelectionRectangular());
-		}
-	}
-
-	public static class insert_char implements ActionListener,
-		InputHandler.NonRepeatable
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			JEditTextArea textArea = getTextArea(evt);
-			String str = evt.getActionCommand();
-			int repeatCount = textArea.getInputHandler().getRepeatCount();
-
-			if(textArea.isEditable())
-			{
-				StringBuffer buf = new StringBuffer();
-				for(int i = 0; i < repeatCount; i++)
-					buf.append(str);
-				textArea.overwriteSetSelectedText(buf.toString());
-			}
-			else
-			{
-				textArea.getToolkit().beep();
-			}
-		}
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JButtonEx.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JButtonEx.java
deleted file mode 100644
index 8ffc13ff7e3a4c9c95cc1b74336256a115fec126..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JButtonEx.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package org.astron.util.gui;
-
-import javax.swing.JButton;
-import java.awt.event.*;
-import javax.swing.border.*;
-import java.awt.*;
-import javax.swing.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class JButtonEx extends JButton
-                       implements MouseListener {
-  private Border emptyBorder;
-  private Border etchedBorder;
-
-  public JButtonEx() {
-    super();
-  }
-
-  public JButtonEx(Action a) {
-    super(a);
-    init();
-  }
-  public JButtonEx(Icon icon) {
-    super(icon);
-    init();
-  }
-  public JButtonEx(String text) {
-    super(text);
-    init();
-  }
-  public JButtonEx(String text, Icon icon) {
-    super(text,icon);
-    init();
-  }
-  private void init() {
-    emptyBorder = BorderFactory.createEmptyBorder();
-    etchedBorder = BorderFactory.createEtchedBorder();
-    setBorder(emptyBorder);
-    addMouseListener(this);
-    Dimension d = new Dimension(34,26);
-    setPreferredSize(d);
-    setMaximumSize(d);
-  }
-  public void mouseClicked(MouseEvent e) {}
-  public void mousePressed(MouseEvent e) {}
-  public void mouseReleased(MouseEvent e) {}
-  public void mouseEntered(MouseEvent e) {
-    if (!isEnabled()) {
-      setBorder(emptyBorder);
-      return;
-    }
-    setBorder(etchedBorder);
-  }
-  public void mouseExited(MouseEvent e) {
-    setBorder(emptyBorder);
-  }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JEditTextArea.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JEditTextArea.java
deleted file mode 100644
index 28315e4a616eb32f3f6d1780fd2804d7676000dc..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JEditTextArea.java
+++ /dev/null
@@ -1,2137 +0,0 @@
-/*
- * JEditTextArea.java - jEdit's text component
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-
-import javax.swing.event.*;
-import javax.swing.text.*;
-import javax.swing.undo.*;
-import javax.swing.*;
-import java.awt.datatransfer.*;
-import java.awt.event.*;
-import java.awt.*;
-import java.util.Enumeration;
-import java.util.Vector;
-
-/**
- * jEdit's text area component. It is more suited for editing program
- * source code than JEditorPane, because it drops the unnecessary features
- * (images, variable-width lines, and so on) and adds a whole bunch of
- * useful goodies such as:
- * <ul>
- * <li>More flexible key binding scheme
- * <li>Supports macro recorders
- * <li>Rectangular selection
- * <li>Bracket highlighting
- * <li>Syntax highlighting
- * <li>Command repetition
- * <li>Block caret can be enabled
- * </ul>
- * It is also faster and doesn't have as many problems. It can be used
- * in other applications; the only other part of jEdit it depends on is
- * the syntax package.<p>
- *
- * To use it in your app, treat it like any other component, for example:
- * <pre>JEditTextArea ta = new JEditTextArea();
- * ta.setTokenMarker(new JavaTokenMarker());
- * ta.setText("public class Test {\n"
- *     + "    public static void main(String[] args) {\n"
- *     + "        System.out.println(\"Hello World\");\n"
- *     + "    }\n"
- *     + "}");</pre>
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class JEditTextArea extends JComponent
-{
-	/**
-	 * Adding components with this name to the text area will place
-	 * them left of the horizontal scroll bar. In jEdit, the status
-	 * bar is added this way.
-	 */
-	public static String LEFT_OF_SCROLLBAR = "los";
-
-	/**
-	 * Creates a new JEditTextArea with the default settings.
-	 */
-	public JEditTextArea()
-	{
-		this(TextAreaDefaults.getDefaults());
-	}
-
-	/**
-	 * Creates a new JEditTextArea with the specified settings.
-	 * @param defaults The default settings
-	 */
-	public JEditTextArea(TextAreaDefaults defaults)
-	{
-		// Enable the necessary events
-		enableEvents(AWTEvent.KEY_EVENT_MASK);
-
-		// Initialize some misc. stuff
-		painter = new TextAreaPainter(this,defaults);
-		documentHandler = new DocumentHandler();
-		listenerList = new EventListenerList();
-		caretEvent = new MutableCaretEvent();
-		lineSegment = new Segment();
-		bracketLine = bracketPosition = -1;
-		blink = true;
-
-		// Initialize the GUI
-		setLayout(new ScrollLayout());
-		add(CENTER,painter);
-		add(RIGHT,vertical = new JScrollBar(JScrollBar.VERTICAL));
-		add(BOTTOM,horizontal = new JScrollBar(JScrollBar.HORIZONTAL));
-
-		// Add some event listeners
-		vertical.addAdjustmentListener(new AdjustHandler());
-		horizontal.addAdjustmentListener(new AdjustHandler());
-		painter.addComponentListener(new ComponentHandler());
-		painter.addMouseListener(new MouseHandler());
-		painter.addMouseMotionListener(new DragHandler());
-		addFocusListener(new FocusHandler());
-
-		// Load the defaults
-		setInputHandler(defaults.inputHandler);
-		setDocument(defaults.document);
-		editable = defaults.editable;
-		caretVisible = defaults.caretVisible;
-		caretBlinks = defaults.caretBlinks;
-		electricScroll = defaults.electricScroll;
-
-		popup = defaults.popup;
-
-		// We don't seem to get the initial focus event?
-		focusedComponent = this;
-	}
-
-	/**
-	 * Returns if this component can be traversed by pressing
-	 * the Tab key. This returns false.
-	 */
-	public final boolean isManagingFocus()
-	{
-		return true;
-	}
-
-	/**
-	 * Returns the object responsible for painting this text area.
-	 */
-	public final TextAreaPainter getPainter()
-	{
-		return painter;
-	}
-
-	/**
-	 * Returns the input handler.
-	 */
-	public final InputHandler getInputHandler()
-	{
-		return inputHandler;
-	}
-
-	/**
-	 * Sets the input handler.
-	 * @param inputHandler The new input handler
-	 */
-	public void setInputHandler(InputHandler inputHandler)
-	{
-		this.inputHandler = inputHandler;
-	}
-
-	/**
-	 * Returns true if the caret is blinking, false otherwise.
-	 */
-	public final boolean isCaretBlinkEnabled()
-	{
-		return caretBlinks;
-	}
-
-	/**
-	 * Toggles caret blinking.
-	 * @param caretBlinks True if the caret should blink, false otherwise
-	 */
-	public void setCaretBlinkEnabled(boolean caretBlinks)
-	{
-		this.caretBlinks = caretBlinks;
-		if(!caretBlinks)
-			blink = false;
-
-		painter.invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns true if the caret is visible, false otherwise.
-	 */
-	public final boolean isCaretVisible()
-	{
-		return (!caretBlinks || blink) && caretVisible;
-	}
-
-	/**
-	 * Sets if the caret should be visible.
-	 * @param caretVisible True if the caret should be visible, false
-	 * otherwise
-	 */
-	public void setCaretVisible(boolean caretVisible)
-	{
-		this.caretVisible = caretVisible;
-		blink = true;
-
-		painter.invalidateSelectedLines();
-	}
-
-	/**
-	 * Blinks the caret.
-	 */
-	public final void blinkCaret()
-	{
-		if(caretBlinks)
-		{
-			blink = !blink;
-			painter.invalidateSelectedLines();
-		}
-		else
-			blink = true;
-	}
-
-	/**
-	 * Returns the number of lines from the top and button of the
-	 * text area that are always visible.
-	 */
-	public final int getElectricScroll()
-	{
-		return electricScroll;
-	}
-
-	/**
-	 * Sets the number of lines from the top and bottom of the text
-	 * area that are always visible
-	 * @param electricScroll The number of lines always visible from
-	 * the top or bottom
-	 */
-	public final void setElectricScroll(int electricScroll)
-	{
-		this.electricScroll = electricScroll;
-	}
-
-	/**
-	 * Updates the state of the scroll bars. This should be called
-	 * if the number of lines in the document changes, or when the
-	 * size of the text are changes.
-	 */
-	public void updateScrollBars()
-	{
-		if(vertical != null && visibleLines != 0)
-		{
-			vertical.setValues(firstLine,visibleLines,0,getLineCount());
-			vertical.setUnitIncrement(2);
-			vertical.setBlockIncrement(visibleLines);
-		}
-
-		int width = painter.getWidth();
-		if(horizontal != null && width != 0)
-		{
-			horizontal.setValues(-horizontalOffset,width,0,width * 5);
-			horizontal.setUnitIncrement(painter.getFontMetrics()
-				.charWidth('w'));
-			horizontal.setBlockIncrement(width / 2);
-		}
-	}
-
-	/**
-	 * Returns the line displayed at the text area's origin.
-	 */
-	public final int getFirstLine()
-	{
-		return firstLine;
-	}
-
-	/**
-	 * Sets the line displayed at the text area's origin without
-	 * updating the scroll bars.
-	 */
-	public void setFirstLine(int firstLine)
-	{
-		if(firstLine == this.firstLine)
-			return;
-		int oldFirstLine = this.firstLine;
-		this.firstLine = firstLine;
-		if(firstLine != vertical.getValue())
-			updateScrollBars();
-		painter.repaint();
-	}
-
-	/**
-	 * Returns the number of lines visible in this text area.
-	 */
-	public final int getVisibleLines()
-	{
-		return visibleLines;
-	}
-
-	/**
-	 * Recalculates the number of visible lines. This should not
-	 * be called directly.
-	 */
-	public final void recalculateVisibleLines()
-	{
-		if(painter == null)
-			return;
-		int height = painter.getHeight();
-		int lineHeight = painter.getFontMetrics().getHeight();
-		int oldVisibleLines = visibleLines;
-		visibleLines = height / lineHeight;
-		updateScrollBars();
-	}
-
-	/**
-	 * Returns the horizontal offset of drawn lines.
-	 */
-	public final int getHorizontalOffset()
-	{
-		return horizontalOffset;
-	}
-
-	/**
-	 * Sets the horizontal offset of drawn lines. This can be used to
-	 * implement horizontal scrolling.
-	 * @param horizontalOffset offset The new horizontal offset
-	 */
-	public void setHorizontalOffset(int horizontalOffset)
-	{
-		if(horizontalOffset == this.horizontalOffset)
-			return;
-		this.horizontalOffset = horizontalOffset;
-		if(horizontalOffset != horizontal.getValue())
-			updateScrollBars();
-		painter.repaint();
-	}
-
-	/**
-	 * A fast way of changing both the first line and horizontal
-	 * offset.
-	 * @param firstLine The new first line
-	 * @param horizontalOffset The new horizontal offset
-	 * @return True if any of the values were changed, false otherwise
-	 */
-	public boolean setOrigin(int firstLine, int horizontalOffset)
-	{
-		boolean changed = false;
-		int oldFirstLine = this.firstLine;
-
-		if(horizontalOffset != this.horizontalOffset)
-		{
-			this.horizontalOffset = horizontalOffset;
-			changed = true;
-		}
-
-		if(firstLine != this.firstLine)
-		{
-			this.firstLine = firstLine;
-			changed = true;
-		}
-
-		if(changed)
-		{
-			updateScrollBars();
-			painter.repaint();
-		}
-
-		return changed;
-	}
-
-	/**
-	 * Ensures that the caret is visible by scrolling the text area if
-	 * necessary.
-	 * @return True if scrolling was actually performed, false if the
-	 * caret was already visible
-	 */
-	public boolean scrollToCaret()
-	{
-		int line = getCaretLine();
-		int lineStart = getLineStartOffset(line);
-		int offset = Math.max(0,Math.min(getLineLength(line) - 1,
-			getCaretPosition() - lineStart));
-
-		return scrollTo(line,offset);
-	}
-
-	/**
-	 * Ensures that the specified line and offset is visible by scrolling
-	 * the text area if necessary.
-	 * @param line The line to scroll to
-	 * @param offset The offset in the line to scroll to
-	 * @return True if scrolling was actually performed, false if the
-	 * line and offset was already visible
-	 */
-	public boolean scrollTo(int line, int offset)
-	{
-		// visibleLines == 0 before the component is realized
-		// we can't do any proper scrolling then, so we have
-		// this hack...
-		if(visibleLines == 0)
-		{
-			setFirstLine(Math.max(0,line - electricScroll));
-			return true;
-		}
-
-		int newFirstLine = firstLine;
-		int newHorizontalOffset = horizontalOffset;
-
-		if(line < firstLine + electricScroll)
-		{
-			newFirstLine = Math.max(0,line - electricScroll);
-		}
-		else if(line + electricScroll >= firstLine + visibleLines)
-		{
-			newFirstLine = (line - visibleLines) + electricScroll + 1;
-			if(newFirstLine + visibleLines >= getLineCount())
-				newFirstLine = getLineCount() - visibleLines;
-			if(newFirstLine < 0)
-				newFirstLine = 0;
-		}
-
-		int x = _offsetToX(line,offset);
-		int width = painter.getFontMetrics().charWidth('w');
-
-		if(x < 0)
-		{
-			newHorizontalOffset = Math.min(0,horizontalOffset
-				- x + width + 5);
-		}
-		else if(x + width >= painter.getWidth())
-		{
-			newHorizontalOffset = horizontalOffset +
-				(painter.getWidth() - x) - width - 5;
-		}
-
-		return setOrigin(newFirstLine,newHorizontalOffset);
-	}
-
-	/**
-	 * Converts a line index to a y co-ordinate.
-	 * @param line The line
-	 */
-	public int lineToY(int line)
-	{
-		FontMetrics fm = painter.getFontMetrics();
-		return (line - firstLine) * fm.getHeight()
-			- (fm.getLeading() + fm.getMaxDescent());
-	}
-
-	/**
-	 * Converts a y co-ordinate to a line index.
-	 * @param y The y co-ordinate
-	 */
-	public int yToLine(int y)
-	{
-		FontMetrics fm = painter.getFontMetrics();
-		int height = fm.getHeight();
-		return Math.max(0,Math.min(getLineCount() - 1,
-			y / height + firstLine));
-	}
-
-	/**
-	 * Converts an offset in a line into an x co-ordinate. This is a
-	 * slow version that can be used any time.
-	 * @param line The line
-	 * @param offset The offset, from the start of the line
-	 */
-	public final int offsetToX(int line, int offset)
-	{
-		// don't use cached tokens
-		painter.currentLineTokens = null;
-		return _offsetToX(line,offset);
-	}
-
-	/**
-	 * Converts an offset in a line into an x co-ordinate. This is a
-	 * fast version that should only be used if no changes were made
-	 * to the text since the last repaint.
-	 * @param line The line
-	 * @param offset The offset, from the start of the line
-	 */
-	public int _offsetToX(int line, int offset)
-	{
-		TokenMarker tokenMarker = getTokenMarker();
-
-		/* Use painter's cached info for speed */
-		FontMetrics fm = painter.getFontMetrics();
-
-		getLineText(line,lineSegment);
-
-		int segmentOffset = lineSegment.offset;
-		int x = horizontalOffset;
-
-		/* If syntax coloring is disabled, do simple translation */
-		if(tokenMarker == null)
-		{
-			lineSegment.count = offset;
-			return x + Utilities.getTabbedTextWidth(lineSegment,
-				fm,x,painter,0);
-		}
-		/* If syntax coloring is enabled, we have to do this because
-		 * tokens can vary in width */
-		else
-		{
-			Token tokens;
-			if(painter.currentLineIndex == line
-				&& painter.currentLineTokens != null)
-				tokens = painter.currentLineTokens;
-			else
-			{
-				painter.currentLineIndex = line;
-				tokens = painter.currentLineTokens
-					= tokenMarker.markTokens(lineSegment,line);
-			}
-
-			Toolkit toolkit = painter.getToolkit();
-			Font defaultFont = painter.getFont();
-			SyntaxStyle[] styles = painter.getStyles();
-
-			for(;;)
-			{
-				byte id = tokens.id;
-				if(id == Token.END)
-				{
-					return x;
-				}
-
-				if(id == Token.NULL)
-					fm = painter.getFontMetrics();
-				else
-					fm = styles[id].getFontMetrics(defaultFont);
-
-				int length = tokens.length;
-
-				if(offset + segmentOffset < lineSegment.offset + length)
-				{
-					lineSegment.count = offset - (lineSegment.offset - segmentOffset);
-					return x + Utilities.getTabbedTextWidth(
-						lineSegment,fm,x,painter,0);
-				}
-				else
-				{
-					lineSegment.count = length;
-					x += Utilities.getTabbedTextWidth(
-						lineSegment,fm,x,painter,0);
-					lineSegment.offset += length;
-				}
-				tokens = tokens.next;
-			}
-		}
-	}
-
-	/**
-	 * Converts an x co-ordinate to an offset within a line.
-	 * @param line The line
-	 * @param x The x co-ordinate
-	 */
-	public int xToOffset(int line, int x)
-	{
-		TokenMarker tokenMarker = getTokenMarker();
-
-		/* Use painter's cached info for speed */
-		FontMetrics fm = painter.getFontMetrics();
-
-		getLineText(line,lineSegment);
-
-		char[] segmentArray = lineSegment.array;
-		int segmentOffset = lineSegment.offset;
-		int segmentCount = lineSegment.count;
-
-		int width = horizontalOffset;
-
-		if(tokenMarker == null)
-		{
-			for(int i = 0; i < segmentCount; i++)
-			{
-				char c = segmentArray[i + segmentOffset];
-				int charWidth;
-				if(c == '\t')
-					charWidth = (int)painter.nextTabStop(width,i)
-						- width;
-				else
-					charWidth = fm.charWidth(c);
-
-				if(painter.isBlockCaretEnabled())
-				{
-					if(x - charWidth <= width)
-						return i;
-				}
-				else
-				{
-					if(x - charWidth / 2 <= width)
-						return i;
-				}
-
-				width += charWidth;
-			}
-
-			return segmentCount;
-		}
-		else
-		{
-			Token tokens;
-			if(painter.currentLineIndex == line && painter
-				.currentLineTokens != null)
-				tokens = painter.currentLineTokens;
-			else
-			{
-				painter.currentLineIndex = line;
-				tokens = painter.currentLineTokens
-					= tokenMarker.markTokens(lineSegment,line);
-			}
-
-			int offset = 0;
-			Toolkit toolkit = painter.getToolkit();
-			Font defaultFont = painter.getFont();
-			SyntaxStyle[] styles = painter.getStyles();
-
-			for(;;)
-			{
-				byte id = tokens.id;
-				if(id == Token.END)
-					return offset;
-
-				if(id == Token.NULL)
-					fm = painter.getFontMetrics();
-				else
-					fm = styles[id].getFontMetrics(defaultFont);
-
-				int length = tokens.length;
-
-				for(int i = 0; i < length; i++)
-				{
-					char c = segmentArray[segmentOffset + offset + i];
-					int charWidth;
-					if(c == '\t')
-						charWidth = (int)painter.nextTabStop(width,offset + i)
-							- width;
-					else
-						charWidth = fm.charWidth(c);
-
-					if(painter.isBlockCaretEnabled())
-					{
-						if(x - charWidth <= width)
-							return offset + i;
-					}
-					else
-					{
-						if(x - charWidth / 2 <= width)
-							return offset + i;
-					}
-
-					width += charWidth;
-				}
-
-				offset += length;
-				tokens = tokens.next;
-			}
-		}
-	}
-
-	/**
-	 * Converts a point to an offset, from the start of the text.
-	 * @param x The x co-ordinate of the point
-	 * @param y The y co-ordinate of the point
-	 */
-	public int xyToOffset(int x, int y)
-	{
-		int line = yToLine(y);
-		int start = getLineStartOffset(line);
-		return start + xToOffset(line,x);
-	}
-
-	/**
-	 * Returns the document this text area is editing.
-	 */
-	public final SyntaxDocument getDocument()
-	{
-		return document;
-	}
-
-	/**
-	 * Sets the document this text area is editing.
-	 * @param document The document
-	 */
-	public void setDocument(SyntaxDocument document)
-	{
-		if(this.document == document)
-			return;
-		if(this.document != null)
-			this.document.removeDocumentListener(documentHandler);
-		this.document = document;
-
-		document.addDocumentListener(documentHandler);
-
-		select(0,0);
-		updateScrollBars();
-		painter.repaint();
-	}
-
-	/**
-	 * Returns the document's token marker. Equivalent to calling
-	 * <code>getDocument().getTokenMarker()</code>.
-	 */
-	public final TokenMarker getTokenMarker()
-	{
-		return document.getTokenMarker();
-	}
-
-	/**
-	 * Sets the document's token marker. Equivalent to caling
-	 * <code>getDocument().setTokenMarker()</code>.
-	 * @param tokenMarker The token marker
-	 */
-	public final void setTokenMarker(TokenMarker tokenMarker)
-	{
-		document.setTokenMarker(tokenMarker);
-	}
-
-	/**
-	 * Returns the length of the document. Equivalent to calling
-	 * <code>getDocument().getLength()</code>.
-	 */
-	public final int getDocumentLength()
-	{
-		return document.getLength();
-	}
-
-	/**
-	 * Returns the number of lines in the document.
-	 */
-	public final int getLineCount()
-	{
-		return document.getDefaultRootElement().getElementCount();
-	}
-
-	/**
-	 * Returns the line containing the specified offset.
-	 * @param offset The offset
-	 */
-	public final int getLineOfOffset(int offset)
-	{
-		return document.getDefaultRootElement().getElementIndex(offset);
-	}
-
-	/**
-	 * Returns the start offset of the specified line.
-	 * @param line The line
-	 * @return The start offset of the specified line, or -1 if the line is
-	 * invalid
-	 */
-	public int getLineStartOffset(int line)
-	{
-		Element lineElement = document.getDefaultRootElement()
-			.getElement(line);
-		if(lineElement == null)
-			return -1;
-		else
-			return lineElement.getStartOffset();
-	}
-
-	/**
-	 * Returns the end offset of the specified line.
-	 * @param line The line
-	 * @return The end offset of the specified line, or -1 if the line is
-	 * invalid.
-	 */
-	public int getLineEndOffset(int line)
-	{
-		Element lineElement = document.getDefaultRootElement()
-			.getElement(line);
-		if(lineElement == null)
-			return -1;
-		else
-			return lineElement.getEndOffset();
-	}
-
-	/**
-	 * Returns the length of the specified line.
-	 * @param line The line
-	 */
-	public int getLineLength(int line)
-	{
-		Element lineElement = document.getDefaultRootElement()
-			.getElement(line);
-		if(lineElement == null)
-			return -1;
-		else
-			return lineElement.getEndOffset()
-				- lineElement.getStartOffset() - 1;
-	}
-
-	/**
-	 * Returns the entire text of this text area.
-	 */
-	public String getText()
-	{
-		try
-		{
-			return document.getText(0,document.getLength());
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-			return null;
-		}
-	}
-
-	/**
-	 * Sets the entire text of this text area.
-	 */
-	public void setText(String text)
-	{
-		try
-		{
-			document.beginCompoundEdit();
-			document.remove(0,document.getLength());
-			document.insertString(0,text,null);
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-		}
-		finally
-		{
-			document.endCompoundEdit();
-		}
-	}
-
-	/**
-	 * Returns the specified substring of the document.
-	 * @param start The start offset
-	 * @param len The length of the substring
-	 * @return The substring, or null if the offsets are invalid
-	 */
-	public final String getText(int start, int len)
-	{
-		try
-		{
-			return document.getText(start,len);
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-			return null;
-		}
-	}
-
-	/**
-	 * Copies the specified substring of the document into a segment.
-	 * If the offsets are invalid, the segment will contain a null string.
-	 * @param start The start offset
-	 * @param len The length of the substring
-	 * @param segment The segment
-	 */
-	public final void getText(int start, int len, Segment segment)
-	{
-		try
-		{
-			document.getText(start,len,segment);
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-			segment.offset = segment.count = 0;
-		}
-	}
-
-	/**
-	 * Returns the text on the specified line.
-	 * @param lineIndex The line
-	 * @return The text, or null if the line is invalid
-	 */
-	public final String getLineText(int lineIndex)
-	{
-		int start = getLineStartOffset(lineIndex);
-		return getText(start,getLineEndOffset(lineIndex) - start - 1);
-	}
-
-	/**
-	 * Copies the text on the specified line into a segment. If the line
-	 * is invalid, the segment will contain a null string.
-	 * @param lineIndex The line
-	 */
-	public final void getLineText(int lineIndex, Segment segment)
-	{
-		int start = getLineStartOffset(lineIndex);
-		getText(start,getLineEndOffset(lineIndex) - start - 1,segment);
-	}
-
-	/**
-	 * Returns the selection start offset.
-	 */
-	public final int getSelectionStart()
-	{
-		return selectionStart;
-	}
-
-	/**
-	 * Returns the offset where the selection starts on the specified
-	 * line.
-	 */
-	public int getSelectionStart(int line)
-	{
-		if(line == selectionStartLine)
-			return selectionStart;
-		else if(rectSelect)
-		{
-			Element map = document.getDefaultRootElement();
-			int start = selectionStart - map.getElement(selectionStartLine)
-				.getStartOffset();
-
-			Element lineElement = map.getElement(line);
-			int lineStart = lineElement.getStartOffset();
-			int lineEnd = lineElement.getEndOffset() - 1;
-			return Math.min(lineEnd,lineStart + start);
-		}
-		else
-			return getLineStartOffset(line);
-	}
-
-	/**
-	 * Returns the selection start line.
-	 */
-	public final int getSelectionStartLine()
-	{
-		return selectionStartLine;
-	}
-
-	/**
-	 * Sets the selection start. The new selection will be the new
-	 * selection start and the old selection end.
-	 * @param selectionStart The selection start
-	 * @see #select(int,int)
-	 */
-	public final void setSelectionStart(int selectionStart)
-	{
-		select(selectionStart,selectionEnd);
-	}
-
-	/**
-	 * Returns the selection end offset.
-	 */
-	public final int getSelectionEnd()
-	{
-		return selectionEnd;
-	}
-
-	/**
-	 * Returns the offset where the selection ends on the specified
-	 * line.
-	 */
-	public int getSelectionEnd(int line)
-	{
-		if(line == selectionEndLine)
-			return selectionEnd;
-		else if(rectSelect)
-		{
-			Element map = document.getDefaultRootElement();
-			int end = selectionEnd - map.getElement(selectionEndLine)
-				.getStartOffset();
-
-			Element lineElement = map.getElement(line);
-			int lineStart = lineElement.getStartOffset();
-			int lineEnd = lineElement.getEndOffset() - 1;
-			return Math.min(lineEnd,lineStart + end);
-		}
-		else
-			return getLineEndOffset(line) - 1;
-	}
-
-	/**
-	 * Returns the selection end line.
-	 */
-	public final int getSelectionEndLine()
-	{
-		return selectionEndLine;
-	}
-
-	/**
-	 * Sets the selection end. The new selection will be the old
-	 * selection start and the bew selection end.
-	 * @param selectionEnd The selection end
-	 * @see #select(int,int)
-	 */
-	public final void setSelectionEnd(int selectionEnd)
-	{
-		select(selectionStart,selectionEnd);
-	}
-
-	/**
-	 * Returns the caret position. This will either be the selection
-	 * start or the selection end, depending on which direction the
-	 * selection was made in.
-	 */
-	public final int getCaretPosition()
-	{
-		return (biasLeft ? selectionStart : selectionEnd);
-	}
-
-	/**
-	 * Returns the caret line.
-	 */
-	public final int getCaretLine()
-	{
-		return (biasLeft ? selectionStartLine : selectionEndLine);
-	}
-
-	/**
-	 * Returns the mark position. This will be the opposite selection
-	 * bound to the caret position.
-	 * @see #getCaretPosition()
-	 */
-	public final int getMarkPosition()
-	{
-		return (biasLeft ? selectionEnd : selectionStart);
-	}
-
-	/**
-	 * Returns the mark line.
-	 */
-	public final int getMarkLine()
-	{
-		return (biasLeft ? selectionEndLine : selectionStartLine);
-	}
-
-	/**
-	 * Sets the caret position. The new selection will consist of the
-	 * caret position only (hence no text will be selected)
-	 * @param caret The caret position
-	 * @see #select(int,int)
-	 */
-	public final void setCaretPosition(int caret)
-	{
-		select(caret,caret);
-	}
-
-	/**
-	 * Selects all text in the document.
-	 */
-	public final void selectAll()
-	{
-		select(0,getDocumentLength());
-	}
-
-	/**
-	 * Moves the mark to the caret position.
-	 */
-	public final void selectNone()
-	{
-		select(getCaretPosition(),getCaretPosition());
-	}
-
-	/**
-	 * Selects from the start offset to the end offset. This is the
-	 * general selection method used by all other selecting methods.
-	 * The caret position will be start if start &lt; end, and end
-	 * if end &gt; start.
-	 * @param start The start offset
-	 * @param end The end offset
-	 */
-	public void select(int start, int end)
-	{
-		int newStart, newEnd;
-		boolean newBias;
-		if(start <= end)
-		{
-			newStart = start;
-			newEnd = end;
-			newBias = false;
-		}
-		else
-		{
-			newStart = end;
-			newEnd = start;
-			newBias = true;
-		}
-
-		if(newStart < 0 || newEnd > getDocumentLength())
-		{
-			throw new IllegalArgumentException("Bounds out of"
-				+ " range: " + newStart + "," +
-				newEnd);
-		}
-
-		// If the new position is the same as the old, we don't
-		// do all this crap, however we still do the stuff at
-		// the end (clearing magic position, scrolling)
-		if(newStart != selectionStart || newEnd != selectionEnd
-			|| newBias != biasLeft)
-		{
-			int newStartLine = getLineOfOffset(newStart);
-			int newEndLine = getLineOfOffset(newEnd);
-
-			if(painter.isBracketHighlightEnabled())
-			{
-				if(bracketLine != -1)
-					painter.invalidateLine(bracketLine);
-				updateBracketHighlight(end);
-				if(bracketLine != -1)
-					painter.invalidateLine(bracketLine);
-			}
-
-			painter.invalidateLineRange(selectionStartLine,selectionEndLine);
-			painter.invalidateLineRange(newStartLine,newEndLine);
-
-			document.addUndoableEdit(new CaretUndo(
-				selectionStart,selectionEnd));
-
-			selectionStart = newStart;
-			selectionEnd = newEnd;
-			selectionStartLine = newStartLine;
-			selectionEndLine = newEndLine;
-			biasLeft = newBias;
-
-			fireCaretEvent();
-		}
-
-		// When the user is typing, etc, we don't want the caret
-		// to blink
-		blink = true;
-		caretTimer.restart();
-
-		// Disable rectangle select if selection start = selection end
-		if(selectionStart == selectionEnd)
-			rectSelect = false;
-
-		// Clear the `magic' caret position used by up/down
-		magicCaret = -1;
-
-		scrollToCaret();
-	}
-
-	/**
-	 * Returns the selected text, or null if no selection is active.
-	 */
-	public final String getSelectedText()
-	{
-		if(selectionStart == selectionEnd)
-			return null;
-
-		if(rectSelect)
-		{
-			// Return each row of the selection on a new line
-
-			Element map = document.getDefaultRootElement();
-
-			int start = selectionStart - map.getElement(selectionStartLine)
-				.getStartOffset();
-			int end = selectionEnd - map.getElement(selectionEndLine)
-				.getStartOffset();
-
-			// Certain rectangles satisfy this condition...
-			if(end < start)
-			{
-				int tmp = end;
-				end = start;
-				start = tmp;
-			}
-
-			StringBuffer buf = new StringBuffer();
-			Segment seg = new Segment();
-
-			for(int i = selectionStartLine; i <= selectionEndLine; i++)
-			{
-				Element lineElement = map.getElement(i);
-				int lineStart = lineElement.getStartOffset();
-				int lineEnd = lineElement.getEndOffset() - 1;
-				int lineLen = lineEnd - lineStart;
-
-				lineStart = Math.min(lineStart + start,lineEnd);
-				lineLen = Math.min(end - start,lineEnd - lineStart);
-
-				getText(lineStart,lineLen,seg);
-				buf.append(seg.array,seg.offset,seg.count);
-
-				if(i != selectionEndLine)
-					buf.append('\n');
-			}
-
-			return buf.toString();
-		}
-		else
-		{
-			return getText(selectionStart,
-				selectionEnd - selectionStart);
-		}
-	}
-
-	/**
-	 * Replaces the selection with the specified text.
-	 * @param selectedText The replacement text for the selection
-	 */
-	public void setSelectedText(String selectedText)
-	{
-		if(!editable)
-		{
-			throw new InternalError("Text component"
-				+ " read only");
-		}
-
-		document.beginCompoundEdit();
-
-		try
-		{
-			if(rectSelect)
-			{
-				Element map = document.getDefaultRootElement();
-
-				int start = selectionStart - map.getElement(selectionStartLine)
-					.getStartOffset();
-				int end = selectionEnd - map.getElement(selectionEndLine)
-					.getStartOffset();
-
-				// Certain rectangles satisfy this condition...
-				if(end < start)
-				{
-					int tmp = end;
-					end = start;
-					start = tmp;
-				}
-
-				int lastNewline = 0;
-				int currNewline = 0;
-
-				for(int i = selectionStartLine; i <= selectionEndLine; i++)
-				{
-					Element lineElement = map.getElement(i);
-					int lineStart = lineElement.getStartOffset();
-					int lineEnd = lineElement.getEndOffset() - 1;
-					int rectStart = Math.min(lineEnd,lineStart + start);
-
-					document.remove(rectStart,Math.min(lineEnd - rectStart,
-						end - start));
-
-					if(selectedText == null)
-						continue;
-
-					currNewline = selectedText.indexOf('\n',lastNewline);
-					if(currNewline == -1)
-						currNewline = selectedText.length();
-
-					document.insertString(rectStart,selectedText
-						.substring(lastNewline,currNewline),null);
-
-					lastNewline = Math.min(selectedText.length(),
-						currNewline + 1);
-				}
-
-				if(selectedText != null &&
-					currNewline != selectedText.length())
-				{
-					int offset = map.getElement(selectionEndLine)
-						.getEndOffset() - 1;
-					document.insertString(offset,"\n",null);
-					document.insertString(offset + 1,selectedText
-						.substring(currNewline + 1),null);
-				}
-			}
-			else
-			{
-				document.remove(selectionStart,
-					selectionEnd - selectionStart);
-				if(selectedText != null)
-				{
-					document.insertString(selectionStart,
-						selectedText,null);
-				}
-			}
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-			throw new InternalError("Cannot replace"
-				+ " selection");
-		}
-		// No matter what happends... stops us from leaving document
-		// in a bad state
-		finally
-		{
-			document.endCompoundEdit();
-		}
-
-		setCaretPosition(selectionEnd);
-	}
-
-	/**
-	 * Returns true if this text area is editable, false otherwise.
-	 */
-	public final boolean isEditable()
-	{
-		return editable;
-	}
-
-	/**
-	 * Sets if this component is editable.
-	 * @param editable True if this text area should be editable,
-	 * false otherwise
-	 */
-	public final void setEditable(boolean editable)
-	{
-		this.editable = editable;
-	}
-
-	/**
-	 * Returns the right click popup menu.
-	 */
-	public final JPopupMenu getRightClickPopup()
-	{
-		return popup;
-	}
-
-	/**
-	 * Sets the right click popup menu.
-	 * @param popup The popup
-	 */
-	public final void setRightClickPopup(JPopupMenu popup)
-	{
-		this.popup = popup;
-	}
-
-	/**
-	 * Returns the `magic' caret position. This can be used to preserve
-	 * the column position when moving up and down lines.
-	 */
-	public final int getMagicCaretPosition()
-	{
-		return magicCaret;
-	}
-
-	/**
-	 * Sets the `magic' caret position. This can be used to preserve
-	 * the column position when moving up and down lines.
-	 * @param magicCaret The magic caret position
-	 */
-	public final void setMagicCaretPosition(int magicCaret)
-	{
-		this.magicCaret = magicCaret;
-	}
-
-	/**
-	 * Similar to <code>setSelectedText()</code>, but overstrikes the
-	 * appropriate number of characters if overwrite mode is enabled.
-	 * @param str The string
-	 * @see #setSelectedText(String)
-	 * @see #isOverwriteEnabled()
-	 */
-	public void overwriteSetSelectedText(String str)
-	{
-		// Don't overstrike if there is a selection
-		if(!overwrite || selectionStart != selectionEnd)
-		{
-			setSelectedText(str);
-			return;
-		}
-
-		// Don't overstrike if we're on the end of
-		// the line
-		int caret = getCaretPosition();
-		int caretLineEnd = getLineEndOffset(getCaretLine());
-		if(caretLineEnd - caret <= str.length())
-		{
-			setSelectedText(str);
-			return;
-		}
-
-		document.beginCompoundEdit();
-
-		try
-		{
-			document.remove(caret,str.length());
-			document.insertString(caret,str,null);
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-		}
-		finally
-		{
-			document.endCompoundEdit();
-		}
-	}
-
-	/**
-	 * Returns true if overwrite mode is enabled, false otherwise.
-	 */
-	public final boolean isOverwriteEnabled()
-	{
-		return overwrite;
-	}
-
-	/**
-	 * Sets if overwrite mode should be enabled.
-	 * @param overwrite True if overwrite mode should be enabled,
-	 * false otherwise.
-	 */
-	public final void setOverwriteEnabled(boolean overwrite)
-	{
-		this.overwrite = overwrite;
-		painter.invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns true if the selection is rectangular, false otherwise.
-	 */
-	public final boolean isSelectionRectangular()
-	{
-		return rectSelect;
-	}
-
-	/**
-	 * Sets if the selection should be rectangular.
-	 * @param overwrite True if the selection should be rectangular,
-	 * false otherwise.
-	 */
-	public final void setSelectionRectangular(boolean rectSelect)
-	{
-		this.rectSelect = rectSelect;
-		painter.invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns the position of the highlighted bracket (the bracket
-	 * matching the one before the caret)
-	 */
-	public final int getBracketPosition()
-	{
-		return bracketPosition;
-	}
-
-	/**
-	 * Returns the line of the highlighted bracket (the bracket
-	 * matching the one before the caret)
-	 */
-	public final int getBracketLine()
-	{
-		return bracketLine;
-	}
-
-	/**
-	 * Adds a caret change listener to this text area.
-	 * @param listener The listener
-	 */
-	public final void addCaretListener(CaretListener listener)
-	{
-		listenerList.add(CaretListener.class,listener);
-	}
-
-	/**
-	 * Removes a caret change listener from this text area.
-	 * @param listener The listener
-	 */
-	public final void removeCaretListener(CaretListener listener)
-	{
-		listenerList.remove(CaretListener.class,listener);
-	}
-
-	/**
-	 * Deletes the selected text from the text area and places it
-	 * into the clipboard.
-	 */
-	public void cut()
-	{
-		if(editable)
-		{
-			copy();
-			setSelectedText("");
-		}
-	}
-
-	/**
-	 * Places the selected text into the clipboard.
-	 */
-	public void copy()
-	{
-		if(selectionStart != selectionEnd)
-		{
-			Clipboard clipboard = getToolkit().getSystemClipboard();
-
-			String selection = getSelectedText();
-
-			int repeatCount = inputHandler.getRepeatCount();
-			StringBuffer buf = new StringBuffer();
-			for(int i = 0; i < repeatCount; i++)
-				buf.append(selection);
-
-			clipboard.setContents(new StringSelection(buf.toString()),null);
-		}
-	}
-
-	/**
-	 * Inserts the clipboard contents into the text.
-	 */
-	public void paste()
-	{
-		if(editable)
-		{
-			Clipboard clipboard = getToolkit().getSystemClipboard();
-			try
-			{
-				// The MacOS MRJ doesn't convert \r to \n,
-				// so do it here
-				String selection = ((String)clipboard
-					.getContents(this).getTransferData(
-					DataFlavor.stringFlavor))
-					.replace('\r','\n');
-
-				int repeatCount = inputHandler.getRepeatCount();
-				StringBuffer buf = new StringBuffer();
-				for(int i = 0; i < repeatCount; i++)
-					buf.append(selection);
-				selection = buf.toString();
-				setSelectedText(selection);
-			}
-			catch(Exception e)
-			{
-				getToolkit().beep();
-				System.err.println("Clipboard does not"
-					+ " contain a string");
-			}
-		}
-	}
-
-	/**
-	 * Called by the AWT when this component is removed from it's parent.
-	 * This stops clears the currently focused component.
-	 */
-	public void removeNotify()
-	{
-		super.removeNotify();
-		if(focusedComponent == this)
-			focusedComponent = null;
-	}
-
-	/**
-	 * Forwards key events directly to the input handler.
-	 * This is slightly faster than using a KeyListener
-	 * because some Swing overhead is avoided.
-	 */
-	public void processKeyEvent(KeyEvent evt)
-	{
-                // added by Robbert Dam
-                if (evt.getModifiers() == Event.CTRL_MASK
-                    && evt.getID() == KeyEvent.KEY_PRESSED) {
-                  if (evt.getKeyCode() == KeyEvent.VK_C) { copy(); return; }
-                  if (evt.getKeyCode() == KeyEvent.VK_V) { paste(); return; }
-                  if (evt.getKeyCode() == KeyEvent.VK_X) { cut(); return; }
-                }
-
-
-		if(inputHandler == null)
-			return;
-		switch(evt.getID())
-		{
-		case KeyEvent.KEY_TYPED:
-			inputHandler.keyTyped(evt);
-			break;
-		case KeyEvent.KEY_PRESSED:
-			inputHandler.keyPressed(evt);
-			break;
-		case KeyEvent.KEY_RELEASED:
-			inputHandler.keyReleased(evt);
-			break;
-		}
-	}
-
-	// protected members
-	protected static String CENTER = "center";
-	protected static String RIGHT = "right";
-	protected static String BOTTOM = "bottom";
-
-	protected static JEditTextArea focusedComponent;
-	protected static Timer caretTimer;
-
-	protected TextAreaPainter painter;
-
-	protected JPopupMenu popup;
-
-	protected EventListenerList listenerList;
-	protected MutableCaretEvent caretEvent;
-
-	protected boolean caretBlinks;
-	protected boolean caretVisible;
-	protected boolean blink;
-
-	protected boolean editable;
-
-	protected int firstLine;
-	protected int visibleLines;
-	protected int electricScroll;
-
-	protected int horizontalOffset;
-
-	protected JScrollBar vertical;
-	protected JScrollBar horizontal;
-	protected boolean scrollBarsInitialized;
-
-	protected InputHandler inputHandler;
-	protected SyntaxDocument document;
-	protected DocumentHandler documentHandler;
-
-	protected Segment lineSegment;
-
-	protected int selectionStart;
-	protected int selectionStartLine;
-	protected int selectionEnd;
-	protected int selectionEndLine;
-	protected boolean biasLeft;
-
-	protected int bracketPosition;
-	protected int bracketLine;
-
-	protected int magicCaret;
-	protected boolean overwrite;
-	protected boolean rectSelect;
-
-	protected void fireCaretEvent()
-	{
-		Object[] listeners = listenerList.getListenerList();
-		for(int i = listeners.length - 2; i >= 0; i--)
-		{
-			if(listeners[i] == CaretListener.class)
-			{
-				((CaretListener)listeners[i+1]).caretUpdate(caretEvent);
-			}
-		}
-	}
-
-	protected void updateBracketHighlight(int newCaretPosition)
-	{
-		if(newCaretPosition == 0)
-		{
-			bracketPosition = bracketLine = -1;
-			return;
-		}
-
-		try
-		{
-			int offset = TextUtilities.findMatchingBracket(
-				document,newCaretPosition - 1);
-			if(offset != -1)
-			{
-				bracketLine = getLineOfOffset(offset);
-				bracketPosition = offset - getLineStartOffset(bracketLine);
-				return;
-			}
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-		}
-
-		bracketLine = bracketPosition = -1;
-	}
-
-	protected void documentChanged(DocumentEvent evt)
-	{
-		DocumentEvent.ElementChange ch = evt.getChange(
-			document.getDefaultRootElement());
-
-		int count;
-		if(ch == null)
-			count = 0;
-		else
-			count = ch.getChildrenAdded().length -
-				ch.getChildrenRemoved().length;
-
-		int line = getLineOfOffset(evt.getOffset());
-		if(count == 0)
-		{
-			painter.invalidateLine(line);
-		}
-		// do magic stuff
-		else if(line < firstLine)
-		{
-			setFirstLine(firstLine + count);
-		}
-		// end of magic stuff
-		else
-		{
-			painter.invalidateLineRange(line,firstLine + visibleLines);
-			updateScrollBars();
-		}
-	}
-
-	class ScrollLayout implements LayoutManager
-	{
-		public void addLayoutComponent(String name, Component comp)
-		{
-			if(name.equals(CENTER))
-				center = comp;
-			else if(name.equals(RIGHT))
-				right = comp;
-			else if(name.equals(BOTTOM))
-				bottom = comp;
-			else if(name.equals(LEFT_OF_SCROLLBAR))
-				leftOfScrollBar.addElement(comp);
-		}
-
-		public void removeLayoutComponent(Component comp)
-		{
-			if(center == comp)
-				center = null;
-			if(right == comp)
-				right = null;
-			if(bottom == comp)
-				bottom = null;
-			else
-				leftOfScrollBar.removeElement(comp);
-		}
-
-		public Dimension preferredLayoutSize(Container parent)
-		{
-			Dimension dim = new Dimension();
-			Insets insets = getInsets();
-			dim.width = insets.left + insets.right;
-			dim.height = insets.top + insets.bottom;
-
-			Dimension centerPref = center.getPreferredSize();
-			dim.width += centerPref.width;
-			dim.height += centerPref.height;
-			Dimension rightPref = right.getPreferredSize();
-			dim.width += rightPref.width;
-			Dimension bottomPref = bottom.getPreferredSize();
-			dim.height += bottomPref.height;
-
-			return dim;
-		}
-
-		public Dimension minimumLayoutSize(Container parent)
-		{
-			Dimension dim = new Dimension();
-			Insets insets = getInsets();
-			dim.width = insets.left + insets.right;
-			dim.height = insets.top + insets.bottom;
-
-			Dimension centerPref = center.getMinimumSize();
-			dim.width += centerPref.width;
-			dim.height += centerPref.height;
-			Dimension rightPref = right.getMinimumSize();
-			dim.width += rightPref.width;
-			Dimension bottomPref = bottom.getMinimumSize();
-			dim.height += bottomPref.height;
-
-			return dim;
-		}
-
-		public void layoutContainer(Container parent)
-		{
-			Dimension size = parent.getSize();
-			Insets insets = parent.getInsets();
-			int itop = insets.top;
-			int ileft = insets.left;
-			int ibottom = insets.bottom;
-			int iright = insets.right;
-
-			int rightWidth = right.getPreferredSize().width;
-			int bottomHeight = bottom.getPreferredSize().height;
-			int centerWidth = size.width - rightWidth - ileft - iright;
-			int centerHeight = size.height - bottomHeight - itop - ibottom;
-
-			center.setBounds(
-				ileft,
-				itop,
-				centerWidth,
-				centerHeight);
-
-			right.setBounds(
-				ileft + centerWidth,
-				itop,
-				rightWidth,
-				centerHeight);
-
-			// Lay out all status components, in order
-			Enumeration status = leftOfScrollBar.elements();
-			while(status.hasMoreElements())
-			{
-				Component comp = (Component)status.nextElement();
-				Dimension dim = comp.getPreferredSize();
-				comp.setBounds(ileft,
-					itop + centerHeight,
-					dim.width,
-					bottomHeight);
-				ileft += dim.width;
-			}
-
-			bottom.setBounds(
-				ileft,
-				itop + centerHeight,
-				size.width - rightWidth - ileft - iright,
-				bottomHeight);
-		}
-
-		// private members
-		private Component center;
-		private Component right;
-		private Component bottom;
-		private Vector leftOfScrollBar = new Vector();
-	}
-
-	static class CaretBlinker implements ActionListener
-	{
-		public void actionPerformed(ActionEvent evt)
-		{
-			if(focusedComponent != null
-				&& focusedComponent.hasFocus())
-				focusedComponent.blinkCaret();
-		}
-	}
-
-	class MutableCaretEvent extends CaretEvent
-	{
-		MutableCaretEvent()
-		{
-			super(JEditTextArea.this);
-		}
-
-		public int getDot()
-		{
-			return getCaretPosition();
-		}
-
-		public int getMark()
-		{
-			return getMarkPosition();
-		}
-	}
-
-	class AdjustHandler implements AdjustmentListener
-	{
-		public void adjustmentValueChanged(final AdjustmentEvent evt)
-		{
-			if(!scrollBarsInitialized)
-				return;
-
-			// If this is not done, mousePressed events accumilate
-			// and the result is that scrolling doesn't stop after
-			// the mouse is released
-			SwingUtilities.invokeLater(new Runnable() {
-				public void run()
-				{
-					if(evt.getAdjustable() == vertical)
-						setFirstLine(vertical.getValue());
-					else
-						setHorizontalOffset(-horizontal.getValue());
-				}
-			});
-		}
-	}
-
-	class ComponentHandler extends ComponentAdapter
-	{
-		public void componentResized(ComponentEvent evt)
-		{
-			recalculateVisibleLines();
-			scrollBarsInitialized = true;
-		}
-	}
-
-	class DocumentHandler implements DocumentListener
-	{
-		public void insertUpdate(DocumentEvent evt)
-		{
-			documentChanged(evt);
-
-			int offset = evt.getOffset();
-			int length = evt.getLength();
-
-			int newStart;
-			int newEnd;
-
-			if(selectionStart > offset || (selectionStart
-				== selectionEnd && selectionStart == offset))
-				newStart = selectionStart + length;
-			else
-				newStart = selectionStart;
-
-			if(selectionEnd >= offset)
-				newEnd = selectionEnd + length;
-			else
-				newEnd = selectionEnd;
-
-			select(newStart,newEnd);
-		}
-
-		public void removeUpdate(DocumentEvent evt)
-		{
-			documentChanged(evt);
-
-			int offset = evt.getOffset();
-			int length = evt.getLength();
-
-			int newStart;
-			int newEnd;
-
-			if(selectionStart > offset)
-			{
-				if(selectionStart > offset + length)
-					newStart = selectionStart - length;
-				else
-					newStart = offset;
-			}
-			else
-				newStart = selectionStart;
-
-			if(selectionEnd > offset)
-			{
-				if(selectionEnd > offset + length)
-					newEnd = selectionEnd - length;
-				else
-					newEnd = offset;
-			}
-			else
-				newEnd = selectionEnd;
-
-			select(newStart,newEnd);
-		}
-
-		public void changedUpdate(DocumentEvent evt)
-		{
-		}
-	}
-
-	class DragHandler implements MouseMotionListener
-	{
-		public void mouseDragged(MouseEvent evt)
-		{
-			if(popup != null && popup.isVisible())
-				return;
-
-			setSelectionRectangular((evt.getModifiers()
-				& InputEvent.CTRL_MASK) != 0);
-			select(getMarkPosition(),xyToOffset(evt.getX(),evt.getY()));
-		}
-
-		public void mouseMoved(MouseEvent evt) {}
-	}
-
-	class FocusHandler implements FocusListener
-	{
-		public void focusGained(FocusEvent evt)
-		{
-			setCaretVisible(true);
-			focusedComponent = JEditTextArea.this;
-		}
-
-		public void focusLost(FocusEvent evt)
-		{
-			setCaretVisible(false);
-			focusedComponent = null;
-		}
-	}
-
-	class MouseHandler extends MouseAdapter
-	{
-		public void mousePressed(MouseEvent evt)
-		{
-			requestFocus();
-
-			// Focus events not fired sometimes?
-			setCaretVisible(true);
-			focusedComponent = JEditTextArea.this;
-
-			if((evt.getModifiers() & InputEvent.BUTTON3_MASK) != 0
-				&& popup != null)
-			{
-				popup.show(painter,evt.getX(),evt.getY());
-				return;
-			}
-
-			int line = yToLine(evt.getY());
-			int offset = xToOffset(line,evt.getX());
-			int dot = getLineStartOffset(line) + offset;
-
-			switch(evt.getClickCount())
-			{
-			case 1:
-				doSingleClick(evt,line,offset,dot);
-				break;
-			case 2:
-				// It uses the bracket matching stuff, so
-				// it can throw a BLE
-				try
-				{
-					doDoubleClick(evt,line,offset,dot);
-				}
-				catch(BadLocationException bl)
-				{
-					bl.printStackTrace();
-				}
-				break;
-			case 3:
-				doTripleClick(evt,line,offset,dot);
-				break;
-			}
-		}
-
-		private void doSingleClick(MouseEvent evt, int line,
-			int offset, int dot)
-		{
-			if((evt.getModifiers() & InputEvent.SHIFT_MASK) != 0)
-			{
-				rectSelect = (evt.getModifiers() & InputEvent.CTRL_MASK) != 0;
-				select(getMarkPosition(),dot);
-			}
-			else
-				setCaretPosition(dot);
-		}
-
-		private void doDoubleClick(MouseEvent evt, int line,
-			int offset, int dot) throws BadLocationException
-		{
-			// Ignore empty lines
-			if(getLineLength(line) == 0)
-				return;
-
-			try
-			{
-				int bracket = TextUtilities.findMatchingBracket(
-					document,Math.max(0,dot - 1));
-				if(bracket != -1)
-				{
-					int mark = getMarkPosition();
-					// Hack
-					if(bracket > mark)
-					{
-						bracket++;
-						mark--;
-					}
-					select(mark,bracket);
-					return;
-				}
-			}
-			catch(BadLocationException bl)
-			{
-				bl.printStackTrace();
-			}
-
-			// Ok, it's not a bracket... select the word
-			String lineText = getLineText(line);
-			char ch = lineText.charAt(Math.max(0,offset - 1));
-
-			String noWordSep = (String)document.getProperty("noWordSep");
-			if(noWordSep == null)
-				noWordSep = "";
-
-			// If the user clicked on a non-letter char,
-			// we select the surrounding non-letters
-			boolean selectNoLetter = (!Character
-				.isLetterOrDigit(ch)
-				&& noWordSep.indexOf(ch) == -1);
-
-			int wordStart = 0;
-
-			for(int i = offset - 1; i >= 0; i--)
-			{
-				ch = lineText.charAt(i);
-				if(selectNoLetter ^ (!Character
-					.isLetterOrDigit(ch) &&
-					noWordSep.indexOf(ch) == -1))
-				{
-					wordStart = i + 1;
-					break;
-				}
-			}
-
-			int wordEnd = lineText.length();
-			for(int i = offset; i < lineText.length(); i++)
-			{
-				ch = lineText.charAt(i);
-				if(selectNoLetter ^ (!Character
-					.isLetterOrDigit(ch) &&
-					noWordSep.indexOf(ch) == -1))
-				{
-					wordEnd = i;
-					break;
-				}
-			}
-
-			int lineStart = getLineStartOffset(line);
-			select(lineStart + wordStart,lineStart + wordEnd);
-
-			/*
-			String lineText = getLineText(line);
-			String noWordSep = (String)document.getProperty("noWordSep");
-			int wordStart = TextUtilities.findWordStart(lineText,offset,noWordSep);
-			int wordEnd = TextUtilities.findWordEnd(lineText,offset,noWordSep);
-
-			int lineStart = getLineStartOffset(line);
-			select(lineStart + wordStart,lineStart + wordEnd);
-			*/
-		}
-
-		private void doTripleClick(MouseEvent evt, int line,
-			int offset, int dot)
-		{
-			select(getLineStartOffset(line),getLineEndOffset(line)-1);
-		}
-	}
-
-	class CaretUndo extends AbstractUndoableEdit
-	{
-		private int start;
-		private int end;
-
-		CaretUndo(int start, int end)
-		{
-			this.start = start;
-			this.end = end;
-		}
-
-		public boolean isSignificant()
-		{
-			return false;
-		}
-
-		public String getPresentationName()
-		{
-			return "caret move";
-		}
-
-		public void undo() throws CannotUndoException
-		{
-			super.undo();
-
-			select(start,end);
-		}
-
-		public void redo() throws CannotRedoException
-		{
-			super.redo();
-
-			select(start,end);
-		}
-
-		public boolean addEdit(UndoableEdit edit)
-		{
-			if(edit instanceof CaretUndo)
-			{
-				CaretUndo cedit = (CaretUndo)edit;
-				start = cedit.start;
-				end = cedit.end;
-				cedit.die();
-
-				return true;
-			}
-			else
-				return false;
-		}
-	}
-
-	static
-	{
-		caretTimer = new Timer(500,new CaretBlinker());
-		caretTimer.setInitialDelay(500);
-		caretTimer.start();
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JListEx.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JListEx.java
deleted file mode 100644
index 611551e4c61c8d65214739f81e051062d95e5568..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JListEx.java
+++ /dev/null
@@ -1,578 +0,0 @@
-/**
- * SwingEx Project
- *
- * This class is part of the Swing Extension Project. The goal of this project
- * is to provide Swing components with extra functionality that isn't available
- * in the standard Swing components from Sun.
- *
- * @author Jeroen Zwartepoorte (Jeroen@xs4all.nl)
- */
-package org.astron.util.gui;
-
-import java.awt.*;
-import java.awt.event.*;
-import java.util.Vector;
-
-// JFC 1.0.X
-/*import com.sun.java.swing.*;
-import com.sun.java.swing.event.ListSelectionListener;*/
-
-// JFC 1.1.X
-import javax.swing.*;
-import javax.swing.event.ListSelectionListener;
-
-/**
- * This component contains extended functionality that JList doesn't have. It's
- * written so that you only have to change your JList declaration from JList to
- * JListEx. The rest of the changes are transparent. These are the extra
- * functionalities: <BR>
- * <UL>
- * <LI><B>DataTips</B>: When a cell isn't completely visible, it displays a
- * JToolTip when the user holds the cursor over it.</LI>
- * <LI><B>JScrollPane</B>: In order for the datatips to work, JListEx is already
- * in a JScrollPane. You don't have to add JListEx to a scrollpane like you had
- * to do for JList. You can get access to the scrollpane by using the
- * getScrollPane() method.</LI>
- * <LI><B>Background image:</B> You can change the background of the component
- * from a dull white color to a nice image. You can also set the component to
- * either scroll the image when you scroll the JList or to have the background
- * remain fixed while you scroll.</LI></UL>
- *
- * <B>Notes :</B><UL>
- * <LI>There's a bug in Swing 1.1 & 1.1.1 beta1 that causes the tooltips to be
- * be displayed as a panel. The result of this bug is that when JListEx is
- * located near the border of a Frame, the tooltip doesn't display outside the
- * frame. The location provided by list_getToolTipLocation isn't correctly used
- * to position the tooltip either. The workaround is to modify ToolTipManager.java
- * to use a WindowTip when the lightWeightPopupEnabled boolean is set to false.
- * This can be done by changing the code in the method <B>void showTipWindow()</B>
- * to the following code:<BR><PRE>
- *   if (insideComponent.getRootPane() == null){
- *      tipWindow = new WindowPopup((frameForComponent(insideComponent)),tip,size);
- *      heavyWeightPopupEnabled = true;
- *   }
- *   else if (lightWeightPopupEnabled){
- *      heavyWeightPopupEnabled = false;
- *      tipWindow = new JPanelPopup(tip,size);
- *   }
- *   else {
- *      // The following code has been changed due to a bug in the source from Sun.
- *      heavyWeightPopupEnabled = true;
- *      tipWindow = new WindowPopup((frameForComponent(insideComponent)),tip,size);
- *   }
- * <PRE></LI></UL>
- *
- * Any suggestions on extra functionality are welcome!
- *
- * @author Jeroen Zwartepoorte (<A HREF="mailto:Jeroen@xs4all.nl">Jeroen@xs4all.nl</A>)
- * @author used source by Zafir Anjum (<A HREF="http://www.codeguru.com/java/articles/123.shtml">www.codeguru.com/java/articles/123.shtml</A>)
- * @version 1.0 (13-02-1999)
- */
-public class JListEx extends JComponent
-{
-    // Private variables.
-	private JScrollPaneEx scrollpane = null;
-    private JList list = null;
-    private ImageIcon ImBackground = null;
-    private int nDismissDelay = 0;
-    private boolean bDataTips = false;
-    private boolean bScrollableBackground = true;
-
-    /**
-     * Parameterless constructor.
-     * #see javax.swing.JList#JList()
-     */
-	public JListEx()
-	{
-        	list = new JList();
-        	init();
-	}
-
-    /**
-     * Object array constructor.
-     * #see javax.swing.JList#JList(Object[])
-     */
-    public JListEx(final Object[] listData)
-    {
-      list = new JList();
-      init();
-    }
-
-    /**
-     * Vector constructor.
-     * #see javax.swing.JList#JList(Vector)
-     */
-    public JListEx(final Vector listData)
-    {
-    	list = new JList();
-    	init();
-    }
-
-    /**
-     * ListModel constructor.
-     * #see javax.swing.JList#JList(ListModel)
-     */
-    public JListEx(ListModel dataModel)
-    {
-    	list = new JList();
-    	init();
-    }
-
-    /**
-     * Intialize class variables.
-     */
-    protected void init()
-    {
-    	// Set ToolTipManager to use heavyweight tooltips. (workaround for
-        // bug in ToolTipManager.java in Swing 1.1 & Swing 1.1.1 beta1.
-        // In order for workaround to work, you need to change ToolTipManager.java
-        // and recompile ToolTipManager classes and replace them in Swingall.jar.
-    	ToolTipManager.sharedInstance().setLightWeightPopupEnabled(false);
-
-        // Set list opaque and fore & background values. These need to be set in
-        // order for the ListCellRenderer to render the component without obscuring
-        // the background image.
-    	list.setOpaque(false);
-        list.setBackground(null);
-        list.setForeground(null);
-        list.setCellRenderer(new DefaultTransparentListCellRenderer());
-
-        // Setup layout.
-    	scrollpane = new JScrollPaneEx(list);
-    	this.setLayout(new BorderLayout());
-        this.add(scrollpane, BorderLayout.CENTER);
-    }
-
-    /**
-     * Returns wether the datatips are enabled.
-     */
-    public boolean getDataTips()
-    {
-    	return bDataTips;
-    }
-
-    /**
-     * Enable or disable datatips.
-     */
-    public void setDataTips(boolean bDataTips)
-    {
-    	this.bDataTips = bDataTips;
-        if (bDataTips)
-        	list.setToolTipText("text");
-        else
-        	list.setToolTipText("");
-    }
-
-    /**
-     * Returns scrollpane that contains JList.
-     */
-    public JScrollPaneEx getScrollPane()
-    {
-    	return scrollpane;
-    }
-
-    /**
-     * This method is called when the JList is asked for the tooltip text.
-     * JList.getToolTipText refers to this method. This method is declared here
-     * because it needs access to the JScrollPane that the JList is in.
-     */
-    protected String list_getToolTipText(MouseEvent event)
-    {
-    	int idx = list.locationToIndex(event.getPoint());
-
-        if (idx == -1)
-        	return null;
-
-        Object obj = list.getModel().getElementAt(idx);
-
-        boolean bSelected = obj.equals(list.getSelectedValue());
-
-        Component comp = list.getCellRenderer().getListCellRendererComponent(list,
-        obj, idx, bSelected, bSelected);
-
-        if (obj == null)
-        	return null;
-        if (obj.toString().equals(""))
-        	return null;
-
-        if (comp.getPreferredSize().width < scrollpane.getSize().width)
-        	return null;
-
-        return obj.toString();
-    }
-
-    /**
-     * This method is called when the JList is asked for the position of the
-     * tooltip. JList.getToolTipLocation refers to this method. This method is
-     * declared here because it needs access to the JScrollPane that the JList
-     * is in.
-     */
-    protected Point list_getToolTipLocation(MouseEvent event)
-    {
-    	int idx = list.locationToIndex(event.getPoint());
-
-        if (idx == -1)
-        	return null;
-
-        Object obj = list.getModel().getElementAt(idx);
-
-        boolean bSelected = obj.equals(list.getSelectedValue());
-
-        Component comp = list.getCellRenderer().getListCellRendererComponent(list,
-        obj, idx, bSelected, bSelected);
-
-        if (obj == null)
-        	return null;
-        if (obj.toString().equals(""))
-        	return null;
-
-        if (comp.getPreferredSize().width < scrollpane.getSize().width)
-        	return null;
-
-        Point pt = list.getCellBounds(idx, idx).getLocation();
-        if (pt == null)
-        	return null;
-
-        pt.translate(-2, -1);
-
-        return pt;
-    }
-
-    /**
-     * This method is called when the JList is repainted. The list_paint method
-     * draws a background image when ImBackground != null and if the
-     * bScrollableBackground is set to true. If that property is set to false,
-     * the background image is painted by the JScrollPane that contains the
-     * JList. It checks if the icon size != -1 to see if the image is really
-     * loaded.
-     */
-    protected void list_paint(Graphics g)
-    {
-    	if (ImBackground != null)
-        {
-        	if (bScrollableBackground)
-            {
-            	// Make sure image is loaded.
-            	if ((ImBackground.getIconWidth() == -1) ||
-                    (ImBackground.getIconHeight() == -1))
-                    return;
-
-        		Dimension dim = list.getSize();
-
-                // Tile image.
-                for (int x = 0; x < dim.width; x += ImBackground.getIconWidth())
-                	for (int y = 0; y < dim.height; y += ImBackground.getIconHeight())
-                    	g.drawImage(ImBackground.getImage(), x, y, null, null);
-            }
-        }
-    }
-
-    /**
-     * This sets the background image. We need to repaint the component after
-     * this property is set.
-     */
-    public void setBackgroundImage(ImageIcon ImBackground)
-    {
-    	this.ImBackground = ImBackground;
-        repaint();
-    }
-
-    /**
-     * This sets the background image and sets the scrollable property too. We
-     * need to repaint the component after the properties are set.
-     */
-    public void setBackgroundImage(ImageIcon ImBackground, boolean bScrollableBackground)
-    {
-    	this.ImBackground = ImBackground;
-        setScrollableBackground(bScrollableBackground);
-    }
-
-    /**
-     * This returns the background image currently used for painting the
-     * background of the JList.
-     */
-    public ImageIcon getBackgroundImage()
-    {
-    	return ImBackground;
-    }
-
-    /**
-     * This sets wether the background image scrolls with the JList or if it
-     * remains fixed.
-     */
-    public void setScrollableBackground(boolean bScrollableBackground)
-    {
-    	this.bScrollableBackground = bScrollableBackground;
-
-        if (bScrollableBackground)
-        	scrollpane.setBackgroundImage(null);
-        else
-        	scrollpane.setBackgroundImage(ImBackground);
-        repaint();
-    }
-
-    /**
-     * This returns wether the background scrolls with the JList.
-     */
-    public boolean getScrollableBackground()
-    {
-    	return bScrollableBackground;
-    }
-
-    /**
-     * MouseListener methods. These methods change the dismissDelay integer
-     * of the ToolTipManager to make sure the datatips don't disappear after
-     * a while when you still have the mouse over them. This happens when the
-     * mouse enters JListEx, and the value is set back to it's original value
-     * on mouseExited.
-     */
-    public void this_mouseEntered(MouseEvent e)
-    {
-    	mouseEntered(e);
-    }
-
-    public void this_mouseExited(MouseEvent e)
-    {
-    	mouseExited(e);
-    }
-
-    public void mouseEntered(MouseEvent e)
-    {
-    	nDismissDelay = ToolTipManager.sharedInstance().getDismissDelay();
-    	ToolTipManager.sharedInstance().setDismissDelay(Integer.MAX_VALUE);
-    }
-
-    public void mouseExited(MouseEvent e)
-    {
-    	ToolTipManager.sharedInstance().setDismissDelay(nDismissDelay);
-    }
-
-    public void mouseClicked(MouseEvent e) {}
-    public void mousePressed(MouseEvent e) {}
-    public void mouseReleased(MouseEvent e) {}
-
-
-    /**
-     * JList methods.
-     *
-     * These methods are declared here so that the programmer can use JListEx
-     * like any normal JList. Since this class extends JComponent we need to
-     * add all the public methods in JList here and call the appropriate method
-     * in the JList.
-     */
-    public void addListSelectionListener(ListSelectionListener listener) {
-    	list.addListSelectionListener(listener);
-    }
-
-    public void addSelectionInterval(int anchor, int lead) {
-		list.addSelectionInterval(anchor, lead);
-    }
-
-    public void clearSelection() {
-    	list.clearSelection();
-    }
-
-    public void ensureIndexIsVisible(int index) {
-    	list.ensureIndexIsVisible(index);
-    }
-
-    public int getAnchorSelectionIndex() {
-    	return list.getAnchorSelectionIndex();
-    }
-
-    public Rectangle getCellBounds(int index1, int index2) {
-    	return list.getCellBounds(index1, index2);
-    }
-
-    public ListCellRenderer getCellRenderer() {
-    	return list.getCellRenderer();
-    }
-
-    public int getFirstVisibleIndex() {
-    	return list.getFirstVisibleIndex();
-    }
-
-    public int getFixedCellHeight() {
-    	return list.getFixedCellHeight();
-    }
-
-    public int getFixedCellWidth() {
-    	return list.getFixedCellWidth();
-    }
-
-    public int getLastVisibleIndex() {
-    	return list.getLastVisibleIndex();
-    }
-
-    public int getLeadSelectionIndex() {
-    	return list.getLeadSelectionIndex();
-    }
-
-    public int getMaxSelectionIndex() {
-    	return list.getMaxSelectionIndex();
-    }
-
-    public int getMinSelectionIndex() {
-    	return list.getMinSelectionIndex();
-    }
-
-    public ListModel getModel() {
-    	return list.getModel();
-    }
-
-    public Dimension getPreferredScrollableViewportSize() {
-    	return list.getPreferredScrollableViewportSize();
-    }
-
-    public Object getPrototypeCellValue() {
-    	return list.getPrototypeCellValue();
-    }
-
-    public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction) {
-    	return list.getScrollableBlockIncrement(visibleRect, orientation, direction);
-    }
-
-    public boolean getScrollableTracksViewportHeight() {
-    	return list.getScrollableTracksViewportHeight();
-    }
-
-    public boolean getScrollableTracksViewportWidth() {
-    	return list.getScrollableTracksViewportWidth();
-    }
-
-    public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction) {
-    	return list.getScrollableUnitIncrement(visibleRect, orientation, direction);
-    }
-
-    public int getSelectedIndex() {
-    	return list.getSelectedIndex();
-    }
-
-    public int[] getSelectedIndices() {
-    	return list.getSelectedIndices();
-    }
-
-    public Object getSelectedValue() {
-    	return list.getSelectedValue();
-    }
-
-    public Object[] getSelectedValues() {
-    	return list.getSelectedValues();
-    }
-
-    public Color getSelectionBackground() {
-    	return list.getSelectionBackground();
-    }
-
-    public Color getSelectionForeground() {
-    	return list.getSelectionForeground();
-    }
-
-    public int getSelectionMode() {
-    	return list.getSelectionMode();
-    }
-
-    public ListSelectionModel getSelectionModel() {
-    	return list.getSelectionModel();
-    }
-
-    public boolean getValueIsAdjusting() {
-    	return list.getValueIsAdjusting();
-    }
-
-    public int getVisibleRowCount() {
-    	return list.getVisibleRowCount();
-    }
-
-    public Point indexToLocation(int index) {
-    	return list.indexToLocation(index);
-    }
-
-    public boolean isSelectedIndex(int index) {
-    	return list.isSelectedIndex(index);
-    }
-
-    public boolean isSelectionEmpty() {
-    	return list.isSelectionEmpty();
-    }
-
-    public int locationToIndex(Point location) {
-    	return list.locationToIndex(location);
-    }
-
-    public void removeListSelectionListener(ListSelectionListener listener) {
-    	list.removeListSelectionListener(listener);
-    }
-
-    public void removeSelectionInterval(int index0, int index1) {
-    	list.removeSelectionInterval(index0, index1);
-    }
-
-    public void setCellRenderer(ListCellRenderer cellRenderer) {
-    	list.setCellRenderer(cellRenderer);
-    }
-
-    public void setFixedCellHeight(int height) {
-    	list.setFixedCellHeight(height);
-    }
-
-    public void setFixedCellWidth(int width) {
-    	list.setFixedCellWidth(width);
-    }
-
-    public void setListData(final Object[] listData) {
-    	list.setListData(listData);
-    }
-
-    public void setListData(final Vector listData) {
-    	list.setListData(listData);
-    }
-
-    public void setModel(ListModel model) {
-    	list.setModel(model);
-    }
-
-    public void setPrototypeCellValue(Object prototypeCellValue) {
-    	list.setPrototypeCellValue(prototypeCellValue);
-    }
-
-    public void setSelectedIndex(int index) {
-    	list.setSelectedIndex(index);
-    }
-
-    public void setSelectedIndices(int[] indices) {
-    	list.setSelectedIndices(indices);
-    }
-
-    public void setSelectedValue(Object anObject,boolean shouldScroll) {
-    	list.setSelectedValue(anObject, shouldScroll);
-    }
-
-    public void setSelectionBackground(Color selectionBackground) {
-    	list.setSelectionBackground(selectionBackground);
-    }
-
-    public void setSelectionForeground(Color selectionForeground) {
-    	list.setSelectionForeground(selectionForeground);
-    }
-
-    public void setSelectionInterval(int anchor, int lead) {
-    	list.setSelectionInterval(anchor, lead);
-    }
-
-    public void setSelectionMode(int selectionMode) {
-    	list.setSelectionMode(selectionMode);
-    }
-
-    public void setSelectionModel(ListSelectionModel selectionModel) {
-    	list.setSelectionModel(selectionModel);
-    }
-
-    public void setValueIsAdjusting(boolean b) {
-    	list.setValueIsAdjusting(b);
-    }
-
-    public void setVisibleRowCount(int visibleRowCount) {
-    	list.setVisibleRowCount(visibleRowCount);
-    }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JMultiLineToolTip.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JMultiLineToolTip.java
deleted file mode 100644
index 227d2fe27f033ea8b5fa4cb858cafa237ef1c402..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JMultiLineToolTip.java
+++ /dev/null
@@ -1,148 +0,0 @@
-package org.astron.util.gui;
-
-import javax.swing.JToolTip;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Zafir Anjum
- * @version 1.0
- */
-
-// JMultiLineToolTip.java
-import javax.swing.*;
-import javax.swing.plaf.*;
-
-import java.awt.*;
-import java.awt.font.*;
-import java.awt.event.*;
-import javax.swing.plaf.*;
-import javax.swing.plaf.basic.BasicToolTipUI;
-import javax.swing.text.*;
-
-public class JMultiLineToolTip extends JToolTip
-{
-    private static final String uiClassID = "ToolTipUI";
-
-    String tipText;
-    JComponent component;
-
-    public JMultiLineToolTip() {
-	updateUI();
-    }
-
-    public void updateUI() {
-	setUI(MultiLineToolTipUI.createUI(this));
-    }
-
-    public void setColumns(int columns)
-    {
-	this.columns = columns;
-	this.fixedwidth = 0;
-    }
-
-    public int getColumns()
-    {
-	return columns;
-    }
-
-    public void setFixedWidth(int width)
-    {
-	this.fixedwidth = width;
-	this.columns = 0;
-    }
-
-    public int getFixedWidth()
-    {
-	return fixedwidth;
-    }
-
-    protected int columns = 0;
-    protected int fixedwidth = 0;
-}
-
-class MultiLineToolTipUI extends BasicToolTipUI {
-    static MultiLineToolTipUI sharedInstance = new MultiLineToolTipUI();
-    Font smallFont;
-    static JToolTip tip;
-    protected CellRendererPane rendererPane;
-
-    private static JTextArea textArea ;
-
-    public static ComponentUI createUI(JComponent c) {
-	return sharedInstance;
-    }
-
-    public MultiLineToolTipUI() {
-	super();
-    }
-
-    public void installUI(JComponent c) {
-	super.installUI(c);
-	tip = (JToolTip)c;
-	rendererPane = new CellRendererPane();
-	c.add(rendererPane);
-    }
-
-    public void uninstallUI(JComponent c) {
-	super.uninstallUI(c);
-
-	c.remove(rendererPane);
-	rendererPane = null;
-    }
-
-    public void paint(Graphics g, JComponent c) {
-	Dimension size = c.getSize();
-	textArea.setBackground(c.getBackground());
-	rendererPane.paintComponent(g, textArea, c, 1, 1,
-				    size.width - 1, size.height - 1, true);
-    }
-
-    public Dimension getPreferredSize(JComponent c) {
-	String tipText = ((JToolTip)c).getTipText();
-	if (tipText == null)
-	    return new Dimension(0,0);
-	textArea = new JTextArea(tipText );
-	rendererPane.removeAll();
-	rendererPane.add(textArea );
-	textArea.setWrapStyleWord(true);
-	int width = ((JMultiLineToolTip)c).getFixedWidth();
-	int columns = ((JMultiLineToolTip)c).getColumns();
-
-	if( columns > 0 )
-	    {
-		textArea.setColumns(columns);
-		textArea.setSize(0,0);
-		textArea.setLineWrap(true);
-		textArea.setSize( textArea.getPreferredSize() );
-	    }
-	else if( width > 0 )
-	    {
-		textArea.setLineWrap(true);
-		Dimension d = textArea.getPreferredSize();
-		d.width = width;
-		d.height++;
-		textArea.setSize(d);
-	    }
-	else
-	    textArea.setLineWrap(false);
-
-
-	Dimension dim = textArea.getPreferredSize();
-
-	dim.height += 1;
-	dim.width += 1;
-	return dim;
-    }
-
-    public Dimension getMinimumSize(JComponent c) {
-	return getPreferredSize(c);
-    }
-
-    public Dimension getMaximumSize(JComponent c) {
-	return getPreferredSize(c);
-    }
-}
-
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JNotifier.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JNotifier.java
deleted file mode 100644
index d690ad6796f10fabcb08fccdd8cd3c6ab38316ff..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JNotifier.java
+++ /dev/null
@@ -1,181 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.util.gui;
-
-/**
- * Title: Graphical Notifier
- * Description: Swing component that can display messages.
- * Copyright:    Copyright (c) 2001
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import javax.swing.event.*;
-import java.util.*;
-import java.awt.*;
-import java.awt.event.*;
-import javax.swing.plaf.basic.*;
-
-public class JNotifier extends JPanel implements MessageListener {
-
-  /** Default message icon */
-  final static ImageIcon defaultIcon = new ImageIcon("images/copy16.gif");
-
-  //private MessageListModel _model = new MessageListModel();
-  private MessageListModel _model = new MessageListModel();
-  public JList _list;
-  private JScrollPane _scrollPane;
-  JNotifier _this;
-
-  public JNotifier() {
-    _list = new JList(_model);
-    _list.setVisibleRowCount(6);
-    _list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
-    _list.addMouseListener(new MyMouseListener());
-    _list.setCellRenderer(new MyCellRenderer());
-    _scrollPane = new JScrollPane(_list,
-      JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
-      JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
-    setLayout(new GridLayout(1,1));
-    add(_scrollPane);
-    _this = this;
-  }
-
-  public void note(MessageEvent event) {
-    _model.addMessageEvent(event);
-    _list.ensureIndexIsVisible(_model.getSize()-1);
-  }
-
-  public void clearAll() { _model.clearAll(); }
-
-  /** The Data Model for the JList */
-  private class MessageListModel extends DefaultListModel {
-    ArrayList events;
-    MessageListModel () { events = new ArrayList(30); }
-    public void addMessageEvent (MessageEvent event) {
-      events.add(event);
-      EventListener el[]=getListeners(ListDataListener.class);
-      fireContentsChanged(this,0,events.size()-1);
-      fireIntervalAdded(this,0,events.size()-1);
-    }
-    public void clearAll() {
-      events.clear();
-      fireIntervalRemoved(this,0,events.size());
-    }
-    public void clearInvalid() {
-      boolean change = false;
-      for (int i=0; i<events.size(); i++) {
-        if (getMessageEventAt(i).valid()) {
-          events.remove(i);
-          change = true;
-        }
-      }
-      if (change) fireIntervalRemoved(this,0,events.size()-1);
-    }
-    public MessageEvent getMessageEventAt(int index) {
-      return (MessageEvent)events.get(index);
-    }
-    public Object getElementAt(int index) {
-      return events.get(index);
-    }
-    public int getSize() {
-      return events.size();
-    }
-  }
-
-  /** Handles mouse clicks on the JList */
-  private class MyMouseListener implements MouseListener {
-    public void mouseClicked(MouseEvent e) {
-      if (((e.getModifiers() & MouseEvent.BUTTON1_MASK) != 0)
-            && (e.getClickCount()==2)) {
-        // left button double-clicked
-        JList list = (JList)e.getSource();
-        int ix = list.locationToIndex(e.getPoint());
-        if (ix != -1) {
-          MessageEvent mEvent = (MessageEvent)
-                                list.getModel().getElementAt(ix);
-          mEvent.onClick(_this);             // take message specific action
-        }
-      }
-    }
-    public void mouseEntered(MouseEvent e) {
-    }
-    public void mouseExited(MouseEvent e) {
-    }
-    public void mousePressed(MouseEvent e) {
-    }
-    public void mouseReleased(MouseEvent e) {
-    }
-  }
-
-  /** Calls MessageEvent onClick() handler when a list item is selected */
-  private class SelectionListener implements ListSelectionListener {
-    public void valueChanged(ListSelectionEvent e) {
-      if (e.getValueIsAdjusting()) return;
-      JList list = (JList)e.getSource();
-      if (list.isSelectionEmpty()) return;
-      MessageEvent mevent = (MessageEvent)list.getSelectedValue();
-      if (mevent == null) {
-        System.err.println("MessageEvent==null in SelectionListener");
-        return;
-      }
-      mevent.onClick(_this); // take message specific action.
-    }
-  }
-
-  /** Custom JList item renderer that renders an icon followed by a string */
-  class MyCellRenderer extends JLabel implements ListCellRenderer {
-
-     public MyCellRenderer () {
-        setIconTextGap(3);
-        setOpaque(false);
-     }
-
-     // We just reconfigure the JLabel each time we're called.
-     public Component getListCellRendererComponent(JList list,Object value,
-      int index,boolean isSelected,boolean cellHasFocus)
-     {
-        if (! (value instanceof MessageEvent) ) {
-          setText(value.toString());
-          return this;
-        }
-        MessageEvent event = (MessageEvent)value;
-        setText(event.getMessage());
-        setIcon((event.getIcon() == null) ? defaultIcon : event.getIcon());
-   	if (isSelected) {
-          setBackground(list.getSelectionBackground());
-	  setForeground(list.getSelectionForeground());
-          setOpaque(true);
-	} else {
-          setOpaque(false);
-          if (event.getType() == event.ERROR) setForeground(Color.red);
-          else if (event.getType() == event.WARNING) setForeground(Color.blue);
-          else setForeground(Color.black);
-	  setBackground(list.getBackground());
-        }
-        setEnabled(list.isEnabled());
-	setFont(list.getFont());
-        return this;
-     }
- }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JScrollPaneEx.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JScrollPaneEx.java
deleted file mode 100644
index 1ec3377d8b46c3522a99aec81fd50e7808723cd5..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JScrollPaneEx.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/**
- * SwingEx Project
- *
- * This class is part of the Swing Extension Project. The goal of this project
- * is to provide Swing components with extra functionality that isn't available
- * in the standard Swing components from Sun.
- *
- * @author Jeroen Zwartepoorte (Jeroen@xs4all.nl)
- */
-package org.astron.util.gui;
-
-import java.awt.*;
-import javax.swing.*;
-
-/**
- * This component contains extended functionality that JScrollPane doesn't have.
- * It's written so that you only have to change your JScrollPane declaration from
- * JList to JScrollPaneEx. The rest of the changes are transparent. These are the
- * extra functionalities: <BR>
- * <UL>
- * <LI><B>Background image:</B> You can change the background of the component
- * from a dull white color to a nice image. The image doesn't scroll when you
- * scroll the component(s) inside the JScrollPaneEx. That functionality lies
- * with the component inside the scrollpane.</LI></UL>
- *
- * <B>Notes :</B> Any suggestions on extra functionality are welcome!
- *
- * @author Jeroen Zwartepoorte (<A HREF="mailto:Jeroen@xs4all.nl">Jeroen@xs4all.nl</A>)
- * @author used source by Zafir Anjum (<A HREF="http://www.codeguru.com/java/articles/181.shtml">www.codeguru.com/java/articles/181.shtml</A>)
- * @version 1.0 (13-02-1999)
- */
-public class JScrollPaneEx extends JScrollPane
-{
-	// Private variables.
-    private ImageIcon ImBackground = null;
-
-    /**
-     * @see javax.swing.JScrollPane#JScrollPane
-     */
-	public JScrollPaneEx()
-	{
-    	super();
-	}
-
-    /**
-     * @see javax.swing.JScrollPane#JScrollPane(java.awt.Component)
-     */
-    public JScrollPaneEx(Component view)
-    {
-    	super(view);
-    }
-
-    /**
-     * @see javax.swing.JScrollPane#JScrollPane(java.awt.Component,int,int)
-     */
-    public JScrollPaneEx(Component view, int vsbPolicy, int hsbPolicy)
-    {
-    	super(view, vsbPolicy, hsbPolicy);
-    }
-
-    /**
-     * @see javax.swing.JScrollPane#JScrollPane(int, int)
-     */
-    public JScrollPaneEx(int vsbPolicy, int hsbPolicy)
-    {
-    	super(vsbPolicy, hsbPolicy);
-    }
-
-    /**
-     * This sets the background image. We need to repaint the component after
-     * this property is set.
-     */
-    public void setBackgroundImage(ImageIcon ImBackground)
-    {
-    	this.ImBackground = ImBackground;
-        repaint();
-    }
-
-    /**
-     * This returns the background image currently used for painting the
-     * background.
-     */
-    public ImageIcon getBackgroundImage()
-    {
-    	return ImBackground;
-    }
-
-    /**
-     * This overrides JScrollPane.paint(Graphics g). We first need to draw the
-     * tiled background image. After that, we can call super.paint(g) to paint
-     * the JScrollPane.
-     */
-    public void paintComponent(Graphics g)
-    {
-    	if (ImBackground != null)
-        {
-           	// Make sure image is loaded.
-           	if ((ImBackground.getIconWidth() == -1) ||
-                (ImBackground.getIconHeight() == -1))
-            {
-            	super.paint(g);
-                return;
-            }
-
-            // Tile image.
-            Rectangle rect = getViewport().getViewRect();
-            for (int x = 0; x < rect.width; x += ImBackground.getIconWidth())
-            	for (int y = 0; y < rect.height; y += ImBackground.getIconHeight())
-                	g.drawImage(ImBackground.getImage(), x, y, null, null);
-
-            // Do not use cached image for scrolling.
-            getViewport().setScrollMode(JViewport.SIMPLE_SCROLL_MODE);
-
-            Rectangle r = g.getClipBounds();
-          g.setColor(Color.red);
-          g.fillRect(r.x, r.y, r.width, r.height);
-          System.out.println("painted!");
-        }
-        //super.paint(g);
-    }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JToggleButtonEx.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JToggleButtonEx.java
deleted file mode 100644
index 124b86690a9f6aa5596051dca1622f8e0622f846..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JToggleButtonEx.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package org.astron.util.gui;
-
-import javax.swing.JToggleButton;
-import java.awt.event.*;
-import javax.swing.border.*;
-import java.awt.*;
-import javax.swing.*;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-public class JToggleButtonEx extends JToggleButton
-                              implements MouseListener {
-  private Border emptyBorder;
-  private Border etchedBorder;
-  private Border selBorder;
-
-  public JToggleButtonEx() {
-    super();
-  }
-  public JToggleButtonEx(Action a) {
-    super(a);
-    init();
-  }
-  public JToggleButtonEx(Icon icon) {
-    super(icon);
-    init();
-  }
-  public JToggleButtonEx(Icon icon, boolean selected) {
-    super(icon,selected);
-    init();
-  }
-  public JToggleButtonEx(String text) {
-    super(text);
-    init();
-  }
-  public JToggleButtonEx(String text, boolean selected) {
-    super(text,selected);
-    init();
-  }
-  public JToggleButtonEx(String text, Icon icon) {
-    super(text,icon);
-    init();
-  }
-  public JToggleButtonEx(String text, Icon icon, boolean selected) {
-    super(text,icon,selected);
-    init();
-  }
-  private void init() {
-    emptyBorder = BorderFactory.createEmptyBorder();
-    etchedBorder = BorderFactory.createEtchedBorder();
-    selBorder = BorderFactory.createBevelBorder(1);
-    setBorder(emptyBorder);
-    addMouseListener(this);
-    Dimension d = new Dimension(34,30);
-    setPreferredSize(d);
-    setMaximumSize(d);
-  }
-  public void mouseClicked(MouseEvent e) {}
-  public void mousePressed(MouseEvent e) {}
-  public void mouseReleased(MouseEvent e) {}
-  public void mouseEntered(MouseEvent e) {
-    if (!isEnabled()) {
-      setBorder(emptyBorder);
-      return;
-    }
-    setBorder(etchedBorder);
-  }
-  public void mouseExited(MouseEvent e) {
-    setBorder(emptyBorder);
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JTreeEx.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JTreeEx.java
deleted file mode 100644
index 97f0ec7394c1c50a434071c7d2b4430fb1eefac2..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JTreeEx.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.astron.util.gui;
-
-import javax.swing.*;
-import javax.swing.tree.*;
-import java.awt.*;
-import javax.swing.plaf.basic.*;
-import java.util.*;
-
-/**
- * Title:        LOFARSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-/** A JTree that changes the default white background of a JTree to an
- *  bitmapped background. */
-public class JTreeEx extends JTree {
-
-  public JTreeEx() {
-    super();
-  }
-  public JTreeEx(Hashtable value) {
-    super(value);
-  }
-  public JTreeEx(Object[] value) {
-    super(value);
-  }
-  public JTreeEx(TreeModel newModel) {
-    super(newModel);
-  }
-  public JTreeEx(TreeNode root) {
-    super(root);
-  }
-  public JTreeEx(TreeNode root, boolean asksAllowsChildren) {
-    super(root,asksAllowsChildren);
-  }
-  public JTreeEx(Vector value) {
-    super(value);
-  }
-
-  public void setBackground(Image i) {
-    setUI(new MyTreeUI(i));
-  }
-
-  private class MyTreeUI extends javax.swing.plaf.basic.BasicTreeUI {
-    private Image bkgImg = null;
-
-    public MyTreeUI(Image i) {
-      bkgImg = i;
-    }
-
-    public void paint(Graphics g, JComponent c) {
-      if (bkgImg != null) {
-        g.drawImage(bkgImg, 0, 0, null);
-      }
-      //let the superclass handle the rest
-      super.paint(g, c);
-    }
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JavaScriptTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JavaScriptTokenMarker.java
deleted file mode 100644
index c90ce849457964d821447d61ca3d4a0e77d781a4..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JavaScriptTokenMarker.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * JavaScriptTokenMarker.java - JavaScript token marker
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * JavaScript token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class JavaScriptTokenMarker extends CTokenMarker
-{
-	public JavaScriptTokenMarker()
-	{
-		super(false,getKeywords());
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if(javaScriptKeywords == null)
-		{
-			javaScriptKeywords = new KeywordMap(false);
-			javaScriptKeywords.add("function",Token.KEYWORD3);
-			javaScriptKeywords.add("var",Token.KEYWORD3);
-			javaScriptKeywords.add("else",Token.KEYWORD1);
-			javaScriptKeywords.add("for",Token.KEYWORD1);
-			javaScriptKeywords.add("if",Token.KEYWORD1);
-			javaScriptKeywords.add("in",Token.KEYWORD1);
-			javaScriptKeywords.add("new",Token.KEYWORD1);
-			javaScriptKeywords.add("return",Token.KEYWORD1);
-			javaScriptKeywords.add("while",Token.KEYWORD1);
-			javaScriptKeywords.add("with",Token.KEYWORD1);
-			javaScriptKeywords.add("break",Token.KEYWORD1);
-			javaScriptKeywords.add("case",Token.KEYWORD1);
-			javaScriptKeywords.add("continue",Token.KEYWORD1);
-			javaScriptKeywords.add("default",Token.KEYWORD1);
-			javaScriptKeywords.add("false",Token.LABEL);
-			javaScriptKeywords.add("this",Token.LABEL);
-			javaScriptKeywords.add("true",Token.LABEL);
-		}
-		return javaScriptKeywords;
-	}
-
-	// private members
-	private static KeywordMap javaScriptKeywords;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/JavaTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/JavaTokenMarker.java
deleted file mode 100644
index fd85f96e5698d88b2de2ea17ec67239d8020047d..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/JavaTokenMarker.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * JavaTokenMarker.java - Java token marker
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.text.Segment;
-
-/**
- * Java token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class JavaTokenMarker extends CTokenMarker
-{
-	public JavaTokenMarker()
-	{
-		super(false,getKeywords());
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if(javaKeywords == null)
-		{
-			javaKeywords = new KeywordMap(false);
-			javaKeywords.add("package",Token.KEYWORD2);
-			javaKeywords.add("import",Token.KEYWORD2);
-			javaKeywords.add("byte",Token.KEYWORD3);
-			javaKeywords.add("char",Token.KEYWORD3);
-			javaKeywords.add("short",Token.KEYWORD3);
-			javaKeywords.add("int",Token.KEYWORD3);
-			javaKeywords.add("long",Token.KEYWORD3);
-			javaKeywords.add("float",Token.KEYWORD3);
-			javaKeywords.add("double",Token.KEYWORD3);
-			javaKeywords.add("boolean",Token.KEYWORD3);
-			javaKeywords.add("void",Token.KEYWORD3);
-			javaKeywords.add("class",Token.KEYWORD3);
-			javaKeywords.add("interface",Token.KEYWORD3);
-			javaKeywords.add("abstract",Token.KEYWORD1);
-			javaKeywords.add("final",Token.KEYWORD1);
-			javaKeywords.add("private",Token.KEYWORD1);
-			javaKeywords.add("protected",Token.KEYWORD1);
-			javaKeywords.add("public",Token.KEYWORD1);
-			javaKeywords.add("static",Token.KEYWORD1);
-			javaKeywords.add("synchronized",Token.KEYWORD1);
-			javaKeywords.add("native",Token.KEYWORD1);
-			javaKeywords.add("volatile",Token.KEYWORD1);
-			javaKeywords.add("transient",Token.KEYWORD1);
-			javaKeywords.add("break",Token.KEYWORD1);
-			javaKeywords.add("case",Token.KEYWORD1);
-			javaKeywords.add("continue",Token.KEYWORD1);
-			javaKeywords.add("default",Token.KEYWORD1);
-			javaKeywords.add("do",Token.KEYWORD1);
-			javaKeywords.add("else",Token.KEYWORD1);
-			javaKeywords.add("for",Token.KEYWORD1);
-			javaKeywords.add("if",Token.KEYWORD1);
-			javaKeywords.add("instanceof",Token.KEYWORD1);
-			javaKeywords.add("new",Token.KEYWORD1);
-			javaKeywords.add("return",Token.KEYWORD1);
-			javaKeywords.add("switch",Token.KEYWORD1);
-			javaKeywords.add("while",Token.KEYWORD1);
-			javaKeywords.add("throw",Token.KEYWORD1);
-			javaKeywords.add("try",Token.KEYWORD1);
-			javaKeywords.add("catch",Token.KEYWORD1);
-			javaKeywords.add("extends",Token.KEYWORD1);
-			javaKeywords.add("finally",Token.KEYWORD1);
-			javaKeywords.add("implements",Token.KEYWORD1);
-			javaKeywords.add("throws",Token.KEYWORD1);
-			javaKeywords.add("this",Token.LITERAL2);
-			javaKeywords.add("null",Token.LITERAL2);
-			javaKeywords.add("super",Token.LITERAL2);
-			javaKeywords.add("true",Token.LITERAL2);
-			javaKeywords.add("false",Token.LITERAL2);
-		}
-		return javaKeywords;
-	}
-
-	// private members
-	private static KeywordMap javaKeywords;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/KeywordMap.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/KeywordMap.java
deleted file mode 100644
index 157fea906f06fdf7843e74fa65943d4b7bb660c4..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/KeywordMap.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * KeywordMap.java - Fast keyword->id map
- * Copyright (C) 1998, 1999 Slava Pestov
- * Copyright (C) 1999 Mike Dillon
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * A <code>KeywordMap</code> is similar to a hashtable in that it maps keys
- * to values. However, the `keys' are Swing segments. This allows lookups of
- * text substrings without the overhead of creating a new string object.
- * <p>
- * This class is used by <code>CTokenMarker</code> to map keywords to ids.
- *
- * @author Slava Pestov, Mike Dillon
- * @version $Id$
- */
-public class KeywordMap
-{
-	/**
-	 * Creates a new <code>KeywordMap</code>.
-	 * @param ignoreCase True if keys are case insensitive
-	 */
-	public KeywordMap(boolean ignoreCase)
-	{
-		this(ignoreCase, 52);
-		this.ignoreCase = ignoreCase;
-	}
-
-	/**
-	 * Creates a new <code>KeywordMap</code>.
-	 * @param ignoreCase True if the keys are case insensitive
-	 * @param mapLength The number of `buckets' to create.
-	 * A value of 52 will give good performance for most maps.
-	 */
-	public KeywordMap(boolean ignoreCase, int mapLength)
-	{
-		this.mapLength = mapLength;
-		this.ignoreCase = ignoreCase;
-		map = new Keyword[mapLength];
-	}
-
-	/**
-	 * Looks up a key.
-	 * @param text The text segment
-	 * @param offset The offset of the substring within the text segment
-	 * @param length The length of the substring
-	 */
-	public byte lookup(Segment text, int offset, int length)
-	{
-		if(length == 0)
-			return Token.NULL;
-		Keyword k = map[getSegmentMapKey(text, offset, length)];
-		while(k != null)
-		{
-			if(length != k.keyword.length)
-			{
-				k = k.next;
-				continue;
-			}
-			if(SyntaxUtilities.regionMatches(ignoreCase,text,offset,
-				k.keyword))
-				return k.id;
-			k = k.next;
-		}
-		return Token.NULL;
-	}
-
-	/**
-	 * Adds a key-value mapping.
-	 * @param keyword The key
-	 * @Param id The value
-	 */
-	public void add(String keyword, byte id)
-	{
-		int key = getStringMapKey(keyword);
-		map[key] = new Keyword(keyword.toCharArray(),id,map[key]);
-	}
-
-	/**
-	 * Returns true if the keyword map is set to be case insensitive,
-	 * false otherwise.
-	 */
-	public boolean getIgnoreCase()
-	{
-		return ignoreCase;
-	}
-
-	/**
-	 * Sets if the keyword map should be case insensitive.
-	 * @param ignoreCase True if the keyword map should be case
-	 * insensitive, false otherwise
-	 */
-	public void setIgnoreCase(boolean ignoreCase)
-	{
-		this.ignoreCase = ignoreCase;
-	}
-
-	// protected members
-	protected int mapLength;
-
-	protected int getStringMapKey(String s)
-	{
-		return (Character.toUpperCase(s.charAt(0)) +
-				Character.toUpperCase(s.charAt(s.length()-1)))
-				% mapLength;
-	}
-
-	protected int getSegmentMapKey(Segment s, int off, int len)
-	{
-		return (Character.toUpperCase(s.array[off]) +
-				Character.toUpperCase(s.array[off + len - 1]))
-				% mapLength;
-	}
-
-	// private members
-	class Keyword
-	{
-		public Keyword(char[] keyword, byte id, Keyword next)
-		{
-			this.keyword = keyword;
-			this.id = id;
-			this.next = next;
-		}
-
-		public char[] keyword;
-		public byte id;
-		public Keyword next;
-	}
-
-	private Keyword[] map;
-	private boolean ignoreCase;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/MakefileTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/MakefileTokenMarker.java
deleted file mode 100644
index b489093807367424b33e68f56f61f48386af4b4d..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/MakefileTokenMarker.java
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * MakefileTokenMarker.java - Makefile token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.text.Segment;
-
-/**
- * Makefile token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class MakefileTokenMarker extends TokenMarker
-{
-	// public members
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		int lastOffset = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(c)
-				{
-				case ':': case '=': case ' ': case '\t':
-					backslash = false;
-					if(lastOffset == offset)
-					{
-						addToken(i1 - lastOffset,Token.KEYWORD1);
-						lastOffset = i1;
-					}
-					break;
-				case '#':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						addToken(length - i,Token.COMMENT1);
-						lastOffset = length;
-						break loop;
-					}
-					break;
-				case '$':
-					if(backslash)
-						backslash = false;
-					else if(lastOffset != offset)
-					{
-						addToken(i - lastOffset,token);
-						lastOffset = i;
-						if(length - i > 1)
-						{
-							char c1 = array[i1];
-							if(c1 == '(' || c1 == '{')
-								token = Token.KEYWORD2;
-							else
-							{
-								addToken(2,Token.KEYWORD2);
-								lastOffset += 2;
-								i++;
-							}
-						}
-					}
-					break;
-				case '"':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL1;
-						lastOffset = i;
-					}
-					break;
-				case '\'':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL2;
-						lastOffset = i;
-					}
-					break;
-				default:
-					backslash = false;
-					break;
-				}
-			case Token.KEYWORD2:
-				backslash = false;
-				if(c == ')' || c == '}')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = i1;
-				}
-				break;
-			case Token.LITERAL1:
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = i1;
-				}
-				else
-					backslash = false;
-				break;
-			case Token.LITERAL2:
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = i1;
-				}
-				else
-					backslash = false;
-				break;
-			}
-		}
-		switch(token)
-		{
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,Token.INVALID);
-			token = Token.NULL;
-			break;
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.LITERAL1);
-			break;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-		return token;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/MessageEvent.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/MessageEvent.java
deleted file mode 100644
index 34310511c195ccce8adc8e8f43759b57aeb60bc1..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/MessageEvent.java
+++ /dev/null
@@ -1,93 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.util.gui;
-
-/**
- * Title: Class MessageEvent
- * Description: Event object for notify Messages
- * Copyright:    Copyright (c) 2001
- * Company: Astron
- * @author Robbert Dam
- * @version 1.0
- */
-
-import javax.swing.*;
-import java.util.*;
-
-public class MessageEvent extends EventObject {
-
-  public static final int UNRECOV_ERROR = 0;
-  public static final int ERROR = 1;
-  public static final int WARNING = 2;
-  public static final int NOTIFY = 3;
-  public static final int HINT = 4;
-
-  /** The message text */
-  private String _message;
-  /** The level of importance of this message. Must be one of the predefined
-   *  variables: UNRECOV_ERROR, ERROR, WARNING, NOTIFY (Default) or HINT. */
-  private int _type;
-
-  /** Construct a MessageEvent, specify constructing object and message text */
-  public MessageEvent(Object source, String text) {
-    super (source);
-    _message = text;
-    _type = HINT;
-  }
-
-  /** Construct a MessageEvent, specify source object, message text and type */
-  public MessageEvent(Object source, String text, int type) {
-    super(source);
-    _message = text;
-    _type = type;
-  }
-
-  /** The type of message. Should be UNRECOV_ERROR, ERROR, WARNING,
-   *  NOTIFY (Default) or HINT. */
-  public void setType (int type) { _type = type; }
-
-  /** Get the type of message: UNRECOV_ERROR, ERROR, WARNING, NOTIFY or HINT */
-  public int getType () { return _type; }
-
-  /** Retreive message text */
-  public String getMessage() { return _message; }
-
-  /** (Re)set the message text */
-  public void setMessage(String text) { _message = text; }
-
-  /** Get the icon that should be displayed with this message.
-   *  Returns null when not specified. */
-  public ImageIcon getIcon() { return null; }
-
-  /** The action to be taken when a user clicks on the message. Does nothing,
-   *  (alwayes returns true) override this function with your own handler.
-   *
-   *  @param notifier The JNotifier control the users clicked in
-   */
-  public boolean onClick(JNotifier notifier) { return true; }
-
-  /** String representation of this object. */
-  public String toString () { return "MessageEvent: "+_message; }
-
-  /** Returns true is this message is still valid. Invalid messaged are cleared
-   *  by the viewer. */
-  public boolean valid () { return true; }
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/MessageListener.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/MessageListener.java
deleted file mode 100644
index e505de4e0c9ea6a37447cbc40b254cd35a506fb3..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/MessageListener.java
+++ /dev/null
@@ -1,41 +0,0 @@
-//  Copyright (C) 2000, 2001
-//  ASTRON (Netherlands Foundation for Research in Astronomy)
-//  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
-//
-//  This program is free software; you can redistribute it and/or modify
-//  it under the terms of the GNU General Public License as published by
-//  the Free Software Foundation; either version 2 of the License, or
-//  (at your option) any later version.
-//
-//  This program is distributed in the hope that it will be useful,
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-//  GNU General Public License for more details.
-//
-//  You should have received a copy of the GNU General Public License
-//  along with this program; if not, write to the Free Software
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-//
-//////////////////////////////////////////////////////////////////////
-
-package org.astron.util.gui;
-
-/**
- * Title:
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:
- * @author
- * @version 1.0
- */
-
-import java.util.EventListener;
-
-/**
- * This is the interface for GUI components that wish to visualize program
- * messages.
- */
-public interface MessageListener extends EventListener {
-  /** Send a note to the message listener */
-  public void note (MessageEvent event);
-}
\ No newline at end of file
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/PHPTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/PHPTokenMarker.java
deleted file mode 100644
index c295e07a375a0eb9e1efc4a47e6964d2c9fdf9d6..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/PHPTokenMarker.java
+++ /dev/null
@@ -1,357 +0,0 @@
-/*
- * PHPTokenMarker.java - Token marker for PHP
- * Copyright (C) 1999 Clancy Malcolm
- * Based on HTMLTokenMarker.java Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * PHP token marker.
- *
- * @author Clancy Malcolm
- * @version $Id$
- */
-public class PHPTokenMarker extends TokenMarker
-{
-	public static final byte SCRIPT = Token.INTERNAL_FIRST;
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		lastOffset = offset;
-		lastKeyword = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL: // HTML text
-				backslash = false;
-				switch(c)
-				{
-				case '<':
-					addToken(i - lastOffset,token);
-					lastOffset = lastKeyword = i;
-					if(SyntaxUtilities.regionMatches(false,
-						line,i1,"!--"))
-					{
-						i += 3;
-						token = Token.COMMENT1;
-					}
-					else if(SyntaxUtilities.regionMatches(
-						true,line,i1,"?php"))
-					{
-						addToken(5,Token.LABEL);
-						lastOffset = lastKeyword = (i += 4) + 1;
-						token = SCRIPT;
-					}
-					else if(SyntaxUtilities.regionMatches(
-						true,line,i1,"?"))
-					{
-						addToken(2,Token.LABEL);
-						lastOffset = lastKeyword = (i += 1) + 1;
-						token = SCRIPT;
-					}
-					else if(SyntaxUtilities.regionMatches(
-						true,line,i1,"script>"))
-					{
-						addToken(8,Token.LABEL);
-						lastOffset = lastKeyword = (i += 7) + 1;
-						token = SCRIPT;
-					}
-					else
-					{
-						token = Token.KEYWORD1;
-					}
-					break;
-				case '&':
-					addToken(i - lastOffset,token);
-					lastOffset = lastKeyword = i;
-					token = Token.KEYWORD2;
-					break;
-				}
-				break;
-			case Token.KEYWORD1: // Inside a tag
-				backslash = false;
-				if(c == '>')
-				{
-					addToken(i1 - lastOffset,token);
-					lastOffset = lastKeyword = i1;
-					token = Token.NULL;
-				}
-				break;
-			case Token.KEYWORD2: // Inside an entity
-				backslash = false;
-				if(c == ';')
-				{
-					addToken(i1 - lastOffset,token);
-					lastOffset = lastKeyword = i1;
-					token = Token.NULL;
-					break;
-				}
-				break;
-			case Token.COMMENT1: // Inside a comment
-				backslash = false;
-				if(SyntaxUtilities.regionMatches(false,line,i,"-->"))
-				{
-					addToken(i + 3 - lastOffset,token);
-					i += 2;
-					lastOffset = lastKeyword = i + 1;
-					token = Token.NULL;
-				}
-				break;
-			case SCRIPT: // Inside a JavaScript or PHP
-				switch(c)
-				{
-				case '<':
-					backslash = false;
-					doKeyword(line,i,c);
-					if(SyntaxUtilities.regionMatches(true,
-						line,i1,"/script>"))
-					{
-						//Ending the script
-						addToken(i - lastOffset,
-							Token.KEYWORD3);
-						addToken(9,Token.LABEL);
-						lastOffset = lastKeyword = (i += 8) + 1;
-						token = Token.NULL;
-					}
-					else
-					{
-						// < operator
-						addToken(i - lastOffset,
-							Token.KEYWORD3);
-						addToken(1,Token.OPERATOR);
-						lastOffset = lastKeyword = i1;
-					}
-					break;
-				case '?':
-					backslash = false;
-					doKeyword(line, i, c);
-					if (array[i1] == '>')
-					{
-						//Ending the script
-						addToken(i - lastOffset,
-						Token.KEYWORD3);
-						addToken(2,Token.LABEL);
-						lastOffset = lastKeyword = (i += 1) + 1;
-						token = Token.NULL;
-					}
-					else
-					{
-						//? operator
-						addToken(i - lastOffset, Token.KEYWORD3);
-						addToken(1,Token.OPERATOR);
-						lastOffset = lastKeyword = i1;
-					}
-					break;
-				case '"':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						doKeyword(line,i,c);
-						addToken(i - lastOffset,Token.KEYWORD3);
-						lastOffset = lastKeyword = i;
-						token = Token.LITERAL1;
-					}
-					break;
-				case '\'':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						doKeyword(line,i,c);
-						addToken(i - lastOffset,Token.KEYWORD3);
-						lastOffset = lastKeyword = i;
-						token = Token.LITERAL2;
-					}
-					break;
-				case '#':
-					doKeyword(line,i,c);
-					addToken(i - lastOffset,Token.KEYWORD3);
-					addToken(length - i,Token.COMMENT2);
-					lastOffset = lastKeyword = length;
-					break loop;
-				case '/':
-					backslash = false;
-					doKeyword(line,i,c);
-					if(length - i > 1)  /*This is the same as if(length > i + 1) */
-					{
-						addToken(i - lastOffset,Token.KEYWORD3);
-						lastOffset = lastKeyword = i;
-						if(array[i1] == '/')
-						{
-							addToken(length - i,Token.COMMENT2);
-							lastOffset = lastKeyword = length;
-							break loop;
-						}
-						else if(array[i1] == '*')
-						{
-							token = Token.COMMENT2;
-						}
-						else
-						{
-							// / operator
-							addToken(i - lastOffset, Token.KEYWORD3);
-							addToken(1,Token.OPERATOR);
-							lastOffset = lastKeyword = i1;
-						}
-	 				}
-					else
-					{
-						// / operator
-						addToken(i - lastOffset, Token.KEYWORD3);
-						addToken(1,Token.OPERATOR);
-						lastOffset = lastKeyword = i1;
-					}
-					break;
-				default:
-					backslash = false;
-					if(!Character.isLetterOrDigit(c)
-						&& c != '_' && c != '$')
-					{
-						doKeyword(line,i,c);
-						if (c != ' ')
-						{
-							//assume non alphanumeric characters are operators
-							addToken(i - lastOffset, Token.KEYWORD3);
-							addToken(1,Token.OPERATOR);
-							lastOffset = lastKeyword = i1;
-						}
-					}
-					break;
-				}
-				break;
-			case Token.LITERAL1: // Script "..."
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					lastOffset = lastKeyword = i1;
-					token = SCRIPT;
-				}
-				break;
-			case Token.LITERAL2: // Script '...'
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					lastOffset = lastKeyword = i1;
-					token = SCRIPT;
-				}
-				break;
-			case Token.COMMENT2: // Inside a Script comment
-				backslash = false;
-				if(c == '*' && length - i > 1 && array[i1] == '/')
-				{
-					addToken(i + 2 - lastOffset,Token.COMMENT2);
-					i += 1;
-					lastOffset = lastKeyword = i + 1;
-					token = SCRIPT;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-
-		switch(token)
-		{
-		case Token.LITERAL1:
-			addToken(length - lastOffset,Token.LITERAL1);
-			break;
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.LITERAL2);
-			break;
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,Token.INVALID);
-			token = Token.NULL;
-			break;
-		case SCRIPT:
-			doKeyword(line,length,'\0');
-			addToken(length - lastOffset,Token.KEYWORD3);
-			break;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-
-		return token;
-	}
-
-	// private members
-	private static KeywordMap keywords;
-	private int lastOffset;
-	private int lastKeyword;
-
-	static
-	{
-		keywords = new KeywordMap(false);
-		keywords.add("function",Token.KEYWORD2);
-		keywords.add("class",Token.KEYWORD2);
-		keywords.add("var",Token.KEYWORD2);
-		keywords.add("require",Token.KEYWORD2);
-		keywords.add("include",Token.KEYWORD2);
-		keywords.add("else",Token.KEYWORD1);
-		keywords.add("elseif",Token.KEYWORD1);
-		keywords.add("do",Token.KEYWORD1);
-		keywords.add("for",Token.KEYWORD1);
-		keywords.add("if",Token.KEYWORD1);
-		keywords.add("endif",Token.KEYWORD1);
-		keywords.add("in",Token.KEYWORD1);
-		keywords.add("new",Token.KEYWORD1);
-		keywords.add("return",Token.KEYWORD1);
-		keywords.add("while",Token.KEYWORD1);
-		keywords.add("endwhile",Token.KEYWORD1);
-		keywords.add("with",Token.KEYWORD1);
-		keywords.add("break",Token.KEYWORD1);
-		keywords.add("switch",Token.KEYWORD1);
-		keywords.add("case",Token.KEYWORD1);
-		keywords.add("continue",Token.KEYWORD1);
-		keywords.add("default",Token.KEYWORD1);
-		keywords.add("echo",Token.KEYWORD1);
-		keywords.add("false",Token.KEYWORD1);
-		keywords.add("this",Token.KEYWORD1);
-		keywords.add("true",Token.KEYWORD1);
-		keywords.add("array",Token.KEYWORD1);
-		keywords.add("extends",Token.KEYWORD1);
-	}
-
-	private boolean doKeyword(Segment line, int i, char c)
-	{
-		int i1 = i+1;
-
-		int len = i - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.KEYWORD3);
-			addToken(len,id);
-			lastOffset = i;
-		}
-		lastKeyword = i1;
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/PatchTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/PatchTokenMarker.java
deleted file mode 100644
index 0c0cc80d8f8f430fee0247fdba8b73f1ee6eff2c..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/PatchTokenMarker.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * PatchTokenMarker.java - DIFF patch token marker
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Patch/diff token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class PatchTokenMarker extends TokenMarker
-{
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		if(line.count == 0)
-			return Token.NULL;
-		switch(line.array[line.offset])
-		{
-		case '+': case '>':
-			addToken(line.count,Token.KEYWORD1);
-			break;
-		case '-': case '<':
-			addToken(line.count,Token.KEYWORD2);
-			break;
-		case '@': case '*':
-			addToken(line.count,Token.KEYWORD3);
-			break;
-	        default:
-			addToken(line.count,Token.NULL);
-			break;
-		}
-		return Token.NULL;
-	}
-
-	public boolean supportsMultilineTokens()
-	{
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/PerlTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/PerlTokenMarker.java
deleted file mode 100644
index 40d9ab454597fa9e81f593736d6bbd38a5fd020c..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/PerlTokenMarker.java
+++ /dev/null
@@ -1,712 +0,0 @@
-/*
- * PerlTokenMarker.java - Perl token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Perl token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class PerlTokenMarker extends TokenMarker
-{
-	// public members
-	public static final byte S_ONE = Token.INTERNAL_FIRST;
-	public static final byte S_TWO = (byte)(Token.INTERNAL_FIRST + 1);
-	public static final byte S_END = (byte)(Token.INTERNAL_FIRST + 2);
-
-	public PerlTokenMarker()
-	{
-		this(getKeywords());
-	}
-
-	public PerlTokenMarker(KeywordMap keywords)
-	{
-		this.keywords = keywords;
-	}
-
-	public byte markTokensImpl(byte _token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		token = _token;
-		lastOffset = offset;
-		lastKeyword = offset;
-		matchChar = '\0';
-		matchCharBracket = false;
-		matchSpacesAllowed = false;
-		int length = line.count + offset;
-
-		if(token == Token.LITERAL1 && lineIndex != 0
-			&& lineInfo[lineIndex - 1].obj != null)
-		{
-			String str = (String)lineInfo[lineIndex - 1].obj;
-			if(str != null && str.length() == line.count
-				&& SyntaxUtilities.regionMatches(false,line,
-				offset,str))
-			{
-				addToken(line.count,token);
-				return Token.NULL;
-			}
-			else
-			{
-				addToken(line.count,token);
-				lineInfo[lineIndex].obj = str;
-				return token;
-			}
-		}
-
-		boolean backslash = false;
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(c)
-				{
-				case '#':
-					if(doKeyword(line,i,c))
-						break;
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						addToken(length - i,Token.COMMENT1);
-						lastOffset = lastKeyword = length;
-						break loop;
-					}
-					break;
-				case '=':
-					backslash = false;
-					if(i == offset)
-					{
-						token = Token.COMMENT2;
-						addToken(length - i,token);
-						lastOffset = lastKeyword = length;
-						break loop;
-					}
-					else
-						doKeyword(line,i,c);
-					break;
-				case '$': case '&': case '%': case '@':
-					backslash = false;
-					if(doKeyword(line,i,c))
-						break;
-					if(length - i > 1)
-					{
-						if(c == '&' && (array[i1] == '&'
-							|| Character.isWhitespace(
-							array[i1])))
-							i++;
-						else
-						{
-							addToken(i - lastOffset,token);
-							lastOffset = lastKeyword = i;
-							token = Token.KEYWORD2;
-						}
-					}
-					break;
-				case '"':
-					if(doKeyword(line,i,c))
-						break;
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL1;
-						lineInfo[lineIndex].obj = null;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case '\'':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						int oldLastKeyword = lastKeyword;
-						if(doKeyword(line,i,c))
-							break;
-						if(i != oldLastKeyword)
-							break;
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL2;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case '`':
-					if(doKeyword(line,i,c))
-						break;
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.OPERATOR;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case '<':
-					if(doKeyword(line,i,c))
-						break;
-					if(backslash)
-						backslash = false;
-					else
-					{
-						if(length - i > 2 && array[i1] == '<'
-							&& !Character.isWhitespace(array[i+2]))
-						{
-							addToken(i - lastOffset,token);
-							lastOffset = lastKeyword = i;
-							token = Token.LITERAL1;
-							int len = length - (i+2);
-							if(array[length - 1] == ';')
-								len--;
-							lineInfo[lineIndex].obj =
-								createReadinString(array,i + 2,len);
-						}
-					}
-					break;
-				case ':':
-					backslash = false;
-					if(doKeyword(line,i,c))
-						break;
-					// Doesn't pick up all labels,
-					// but at least doesn't mess up
-					// XXX::YYY
-					if(lastKeyword != 0)
-						break;
-					addToken(i1 - lastOffset,Token.LABEL);
-					lastOffset = lastKeyword = i1;
-					break;
-				case '-':
-					backslash = false;
-					if(doKeyword(line,i,c))
-						break;
-					if(i != lastKeyword || length - i <= 1)
-						break;
-					switch(array[i1])
-					{
-					case 'r': case 'w': case 'x':
-					case 'o': case 'R': case 'W':
-					case 'X': case 'O': case 'e':
-					case 'z': case 's': case 'f':
-					case 'd': case 'l': case 'p':
-					case 'S': case 'b': case 'c':
-					case 't': case 'u': case 'g':
-					case 'k': case 'T': case 'B':
-					case 'M': case 'A': case 'C':
-						addToken(i - lastOffset,token);
-						addToken(2,Token.KEYWORD3);
-						lastOffset = lastKeyword = i+2;
-						i++;
-					}
-					break;
-				case '/': case '?':
-					if(doKeyword(line,i,c))
-						break;
-					if(length - i > 1)
-					{
-						backslash = false;
-						char ch = array[i1];
-						if(Character.isWhitespace(ch))
-							break;
-						matchChar = c;
-						matchSpacesAllowed = false;
-						addToken(i - lastOffset,token);
-						token = S_ONE;
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				default:
-					backslash = false;
-					if(!Character.isLetterOrDigit(c)
-						&& c != '_')
-						doKeyword(line,i,c);
-					break;
-				}
-				break;
-			case Token.KEYWORD2:
-				backslash = false;
-				// This test checks for an end-of-variable
-				// condition
-				if(!Character.isLetterOrDigit(c) && c != '_'
-					&& c != '#' && c != '\'' && c != ':'
-					&& c != '&')
-				{
-					// If this is the first character
-					// of the variable name ($'aaa)
-					// ignore it
-					if(i != offset && array[i-1] == '$')
-					{
-						addToken(i1 - lastOffset,token);
-						lastOffset = lastKeyword = i1;
-					}
-					// Otherwise, end of variable...
-					else
-					{
-						addToken(i - lastOffset,token);
-						lastOffset = lastKeyword = i;
-						// Wind back so that stuff
-						// like $hello$fred is picked
-						// up
-						i--;
-						token = Token.NULL;
-					}
-				}
-				break;
-			case S_ONE: case S_TWO:
-				if(backslash)
-					backslash = false;
-				else
-				{
-					if(matchChar == '\0')
-					{
-						if(Character.isWhitespace(matchChar)
-							&& !matchSpacesAllowed)
-							break;
-						else
-							matchChar = c;
-					}
-					else
-					{
-						switch(matchChar)
-						{
-						case '(':
-							matchChar = ')';
-							matchCharBracket = true;
-							break;
-						case '[':
-							matchChar = ']';
-							matchCharBracket = true;
-							break;
-						case '{':
-							matchChar = '}';
-							matchCharBracket = true;
-							break;
-						case '<':
-							matchChar = '>';
-							matchCharBracket = true;
-							break;
-						default:
-							matchCharBracket = false;
-							break;
-						}
-						if(c != matchChar)
-							break;
-						if(token == S_TWO)
-						{
-							token = S_ONE;
-							if(matchCharBracket)
-								matchChar = '\0';
-						}
-						else
-						{
-							token = S_END;
-							addToken(i1 - lastOffset,
-								Token.LITERAL2);
-							lastOffset = lastKeyword = i1;
-						}
-					}
-				}
-				break;
-			case S_END:
-				backslash = false;
-				if(!Character.isLetterOrDigit(c)
-					&& c != '_')
-					doKeyword(line,i,c);
-				break;
-			case Token.COMMENT2:
-				backslash = false;
-				if(i == offset)
-				{
-					addToken(line.count,token);
-					if(length - i > 3 && SyntaxUtilities
-						.regionMatches(false,line,offset,"=cut"))
-						token = Token.NULL;
-					lastOffset = lastKeyword = length;
-					break loop;
-				}
-				break;
-			case Token.LITERAL1:
-				if(backslash)
-					backslash = false;
-				/* else if(c == '$')
-					backslash = true; */
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			case Token.LITERAL2:
-				if(backslash)
-					backslash = false;
-				/* else if(c == '$')
-					backslash = true; */
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			case Token.OPERATOR:
-				if(backslash)
-					backslash = false;
-				else if(c == '`')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-
-		if(token == Token.NULL)
-			doKeyword(line,length,'\0');
-
-		switch(token)
-		{
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,token);
-			token = Token.NULL;
-			break;
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.LITERAL1);
-			break;
-		case S_END:
-			addToken(length - lastOffset,Token.LITERAL2);
-			token = Token.NULL;
-			break;
-		case S_ONE: case S_TWO:
-			addToken(length - lastOffset,Token.INVALID); // XXX
-			token = Token.NULL;
-			break;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-		return token;
-	}
-
-	// private members
-	private KeywordMap keywords;
-	private byte token;
-	private int lastOffset;
-	private int lastKeyword;
-	private char matchChar;
-	private boolean matchCharBracket;
-	private boolean matchSpacesAllowed;
-
-	private boolean doKeyword(Segment line, int i, char c)
-	{
-		int i1 = i+1;
-
-		if(token == S_END)
-		{
-			addToken(i - lastOffset,Token.LITERAL2);
-			token = Token.NULL;
-			lastOffset = i;
-			lastKeyword = i1;
-			return false;
-		}
-
-		int len = i - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if(id == S_ONE || id == S_TWO)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,Token.LITERAL2);
-			lastOffset = i;
-			lastKeyword = i1;
-			if(Character.isWhitespace(c))
-				matchChar = '\0';
-			else
-				matchChar = c;
-			matchSpacesAllowed = true;
-			token = id;
-			return true;
-		}
-		else if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,id);
-			lastOffset = i;
-		}
-		lastKeyword = i1;
-		return false;
-	}
-
-	// Converts < EOF >, < 'EOF' >, etc to <EOF>
-	private String createReadinString(char[] array, int start, int len)
-	{
-		int idx1 = start;
-		int idx2 = start + len - 1;
-
-		while((idx1 <= idx2) && (!Character.isLetterOrDigit(array[idx1])))
-			idx1++;
-
-		while((idx1 <= idx2) && (!Character.isLetterOrDigit(array[idx2])))
-			idx2--;
-
-		return new String(array, idx1, idx2 - idx1 + 1);
-	}
-
-	private static KeywordMap perlKeywords;
-
-	private static KeywordMap getKeywords()
-	{
-		if(perlKeywords == null)
-		{
-			perlKeywords = new KeywordMap(false);
-			perlKeywords.add("my",Token.KEYWORD1);
-			perlKeywords.add("local",Token.KEYWORD1);
-			perlKeywords.add("new",Token.KEYWORD1);
-			perlKeywords.add("if",Token.KEYWORD1);
-			perlKeywords.add("until",Token.KEYWORD1);
-			perlKeywords.add("while",Token.KEYWORD1);
-			perlKeywords.add("elsif",Token.KEYWORD1);
-			perlKeywords.add("else",Token.KEYWORD1);
-			perlKeywords.add("eval",Token.KEYWORD1);
-			perlKeywords.add("unless",Token.KEYWORD1);
-			perlKeywords.add("foreach",Token.KEYWORD1);
-			perlKeywords.add("continue",Token.KEYWORD1);
-			perlKeywords.add("exit",Token.KEYWORD1);
-			perlKeywords.add("die",Token.KEYWORD1);
-			perlKeywords.add("last",Token.KEYWORD1);
-			perlKeywords.add("goto",Token.KEYWORD1);
-			perlKeywords.add("next",Token.KEYWORD1);
-			perlKeywords.add("redo",Token.KEYWORD1);
-			perlKeywords.add("goto",Token.KEYWORD1);
-			perlKeywords.add("return",Token.KEYWORD1);
-			perlKeywords.add("do",Token.KEYWORD1);
-			perlKeywords.add("sub",Token.KEYWORD1);
-			perlKeywords.add("use",Token.KEYWORD1);
-			perlKeywords.add("require",Token.KEYWORD1);
-			perlKeywords.add("package",Token.KEYWORD1);
-			perlKeywords.add("BEGIN",Token.KEYWORD1);
-			perlKeywords.add("END",Token.KEYWORD1);
-			perlKeywords.add("eq",Token.OPERATOR);
-			perlKeywords.add("ne",Token.OPERATOR);
-			perlKeywords.add("not",Token.OPERATOR);
-			perlKeywords.add("and",Token.OPERATOR);
-			perlKeywords.add("or",Token.OPERATOR);
-
-			perlKeywords.add("abs",Token.KEYWORD3);
-			perlKeywords.add("accept",Token.KEYWORD3);
-			perlKeywords.add("alarm",Token.KEYWORD3);
-			perlKeywords.add("atan2",Token.KEYWORD3);
-			perlKeywords.add("bind",Token.KEYWORD3);
-			perlKeywords.add("binmode",Token.KEYWORD3);
-			perlKeywords.add("bless",Token.KEYWORD3);
-			perlKeywords.add("caller",Token.KEYWORD3);
-			perlKeywords.add("chdir",Token.KEYWORD3);
-			perlKeywords.add("chmod",Token.KEYWORD3);
-			perlKeywords.add("chomp",Token.KEYWORD3);
-			perlKeywords.add("chr",Token.KEYWORD3);
-			perlKeywords.add("chroot",Token.KEYWORD3);
-			perlKeywords.add("chown",Token.KEYWORD3);
-			perlKeywords.add("closedir",Token.KEYWORD3);
-			perlKeywords.add("close",Token.KEYWORD3);
-			perlKeywords.add("connect",Token.KEYWORD3);
-			perlKeywords.add("cos",Token.KEYWORD3);
-			perlKeywords.add("crypt",Token.KEYWORD3);
-			perlKeywords.add("dbmclose",Token.KEYWORD3);
-			perlKeywords.add("dbmopen",Token.KEYWORD3);
-			perlKeywords.add("defined",Token.KEYWORD3);
-			perlKeywords.add("delete",Token.KEYWORD3);
-			perlKeywords.add("die",Token.KEYWORD3);
-			perlKeywords.add("dump",Token.KEYWORD3);
-			perlKeywords.add("each",Token.KEYWORD3);
-			perlKeywords.add("endgrent",Token.KEYWORD3);
-			perlKeywords.add("endhostent",Token.KEYWORD3);
-			perlKeywords.add("endnetent",Token.KEYWORD3);
-			perlKeywords.add("endprotoent",Token.KEYWORD3);
-			perlKeywords.add("endpwent",Token.KEYWORD3);
-			perlKeywords.add("endservent",Token.KEYWORD3);
-			perlKeywords.add("eof",Token.KEYWORD3);
-			perlKeywords.add("exec",Token.KEYWORD3);
-			perlKeywords.add("exists",Token.KEYWORD3);
-			perlKeywords.add("exp",Token.KEYWORD3);
-			perlKeywords.add("fctnl",Token.KEYWORD3);
-			perlKeywords.add("fileno",Token.KEYWORD3);
-			perlKeywords.add("flock",Token.KEYWORD3);
-			perlKeywords.add("fork",Token.KEYWORD3);
-			perlKeywords.add("format",Token.KEYWORD3);
-			perlKeywords.add("formline",Token.KEYWORD3);
-			perlKeywords.add("getc",Token.KEYWORD3);
-			perlKeywords.add("getgrent",Token.KEYWORD3);
-			perlKeywords.add("getgrgid",Token.KEYWORD3);
-			perlKeywords.add("getgrnam",Token.KEYWORD3);
-			perlKeywords.add("gethostbyaddr",Token.KEYWORD3);
-			perlKeywords.add("gethostbyname",Token.KEYWORD3);
-			perlKeywords.add("gethostent",Token.KEYWORD3);
-			perlKeywords.add("getlogin",Token.KEYWORD3);
-			perlKeywords.add("getnetbyaddr",Token.KEYWORD3);
-			perlKeywords.add("getnetbyname",Token.KEYWORD3);
-			perlKeywords.add("getnetent",Token.KEYWORD3);
-			perlKeywords.add("getpeername",Token.KEYWORD3);
-			perlKeywords.add("getpgrp",Token.KEYWORD3);
-			perlKeywords.add("getppid",Token.KEYWORD3);
-			perlKeywords.add("getpriority",Token.KEYWORD3);
-			perlKeywords.add("getprotobyname",Token.KEYWORD3);
-			perlKeywords.add("getprotobynumber",Token.KEYWORD3);
-			perlKeywords.add("getprotoent",Token.KEYWORD3);
-			perlKeywords.add("getpwent",Token.KEYWORD3);
-			perlKeywords.add("getpwnam",Token.KEYWORD3);
-			perlKeywords.add("getpwuid",Token.KEYWORD3);
-			perlKeywords.add("getservbyname",Token.KEYWORD3);
-			perlKeywords.add("getservbyport",Token.KEYWORD3);
-			perlKeywords.add("getservent",Token.KEYWORD3);
-			perlKeywords.add("getsockname",Token.KEYWORD3);
-			perlKeywords.add("getsockopt",Token.KEYWORD3);
-			perlKeywords.add("glob",Token.KEYWORD3);
-			perlKeywords.add("gmtime",Token.KEYWORD3);
-			perlKeywords.add("grep",Token.KEYWORD3);
-			perlKeywords.add("hex",Token.KEYWORD3);
-			perlKeywords.add("import",Token.KEYWORD3);
-			perlKeywords.add("index",Token.KEYWORD3);
-			perlKeywords.add("int",Token.KEYWORD3);
-			perlKeywords.add("ioctl",Token.KEYWORD3);
-			perlKeywords.add("join",Token.KEYWORD3);
-			perlKeywords.add("keys",Token.KEYWORD3);
-			perlKeywords.add("kill",Token.KEYWORD3);
-			perlKeywords.add("lcfirst",Token.KEYWORD3);
-			perlKeywords.add("lc",Token.KEYWORD3);
-			perlKeywords.add("length",Token.KEYWORD3);
-			perlKeywords.add("link",Token.KEYWORD3);
-			perlKeywords.add("listen",Token.KEYWORD3);
-			perlKeywords.add("log",Token.KEYWORD3);
-			perlKeywords.add("localtime",Token.KEYWORD3);
-			perlKeywords.add("lstat",Token.KEYWORD3);
-			perlKeywords.add("map",Token.KEYWORD3);
-			perlKeywords.add("mkdir",Token.KEYWORD3);
-			perlKeywords.add("msgctl",Token.KEYWORD3);
-			perlKeywords.add("msgget",Token.KEYWORD3);
-			perlKeywords.add("msgrcv",Token.KEYWORD3);
-			perlKeywords.add("no",Token.KEYWORD3);
-			perlKeywords.add("oct",Token.KEYWORD3);
-			perlKeywords.add("opendir",Token.KEYWORD3);
-			perlKeywords.add("open",Token.KEYWORD3);
-			perlKeywords.add("ord",Token.KEYWORD3);
-			perlKeywords.add("pack",Token.KEYWORD3);
-			perlKeywords.add("pipe",Token.KEYWORD3);
-			perlKeywords.add("pop",Token.KEYWORD3);
-			perlKeywords.add("pos",Token.KEYWORD3);
-			perlKeywords.add("printf",Token.KEYWORD3);
-			perlKeywords.add("print",Token.KEYWORD3);
-			perlKeywords.add("push",Token.KEYWORD3);
-			perlKeywords.add("quotemeta",Token.KEYWORD3);
-			perlKeywords.add("rand",Token.KEYWORD3);
-			perlKeywords.add("readdir",Token.KEYWORD3);
-			perlKeywords.add("read",Token.KEYWORD3);
-			perlKeywords.add("readlink",Token.KEYWORD3);
-			perlKeywords.add("recv",Token.KEYWORD3);
-			perlKeywords.add("ref",Token.KEYWORD3);
-			perlKeywords.add("rename",Token.KEYWORD3);
-			perlKeywords.add("reset",Token.KEYWORD3);
-			perlKeywords.add("reverse",Token.KEYWORD3);
-			perlKeywords.add("rewinddir",Token.KEYWORD3);
-			perlKeywords.add("rindex",Token.KEYWORD3);
-			perlKeywords.add("rmdir",Token.KEYWORD3);
-			perlKeywords.add("scalar",Token.KEYWORD3);
-			perlKeywords.add("seekdir",Token.KEYWORD3);
-			perlKeywords.add("seek",Token.KEYWORD3);
-			perlKeywords.add("select",Token.KEYWORD3);
-			perlKeywords.add("semctl",Token.KEYWORD3);
-			perlKeywords.add("semget",Token.KEYWORD3);
-			perlKeywords.add("semop",Token.KEYWORD3);
-			perlKeywords.add("send",Token.KEYWORD3);
-			perlKeywords.add("setgrent",Token.KEYWORD3);
-			perlKeywords.add("sethostent",Token.KEYWORD3);
-			perlKeywords.add("setnetent",Token.KEYWORD3);
-			perlKeywords.add("setpgrp",Token.KEYWORD3);
-			perlKeywords.add("setpriority",Token.KEYWORD3);
-			perlKeywords.add("setprotoent",Token.KEYWORD3);
-			perlKeywords.add("setpwent",Token.KEYWORD3);
-			perlKeywords.add("setsockopt",Token.KEYWORD3);
-			perlKeywords.add("shift",Token.KEYWORD3);
-			perlKeywords.add("shmctl",Token.KEYWORD3);
-			perlKeywords.add("shmget",Token.KEYWORD3);
-			perlKeywords.add("shmread",Token.KEYWORD3);
-			perlKeywords.add("shmwrite",Token.KEYWORD3);
-			perlKeywords.add("shutdown",Token.KEYWORD3);
-			perlKeywords.add("sin",Token.KEYWORD3);
-			perlKeywords.add("sleep",Token.KEYWORD3);
-			perlKeywords.add("socket",Token.KEYWORD3);
-			perlKeywords.add("socketpair",Token.KEYWORD3);
-			perlKeywords.add("sort",Token.KEYWORD3);
-			perlKeywords.add("splice",Token.KEYWORD3);
-			perlKeywords.add("split",Token.KEYWORD3);
-			perlKeywords.add("sprintf",Token.KEYWORD3);
-			perlKeywords.add("sqrt",Token.KEYWORD3);
-			perlKeywords.add("srand",Token.KEYWORD3);
-			perlKeywords.add("stat",Token.KEYWORD3);
-			perlKeywords.add("study",Token.KEYWORD3);
-			perlKeywords.add("substr",Token.KEYWORD3);
-			perlKeywords.add("symlink",Token.KEYWORD3);
-			perlKeywords.add("syscall",Token.KEYWORD3);
-			perlKeywords.add("sysopen",Token.KEYWORD3);
-			perlKeywords.add("sysread",Token.KEYWORD3);
-			perlKeywords.add("syswrite",Token.KEYWORD3);
-			perlKeywords.add("telldir",Token.KEYWORD3);
-			perlKeywords.add("tell",Token.KEYWORD3);
-			perlKeywords.add("tie",Token.KEYWORD3);
-			perlKeywords.add("tied",Token.KEYWORD3);
-			perlKeywords.add("time",Token.KEYWORD3);
-			perlKeywords.add("times",Token.KEYWORD3);
-			perlKeywords.add("truncate",Token.KEYWORD3);
-			perlKeywords.add("uc",Token.KEYWORD3);
-			perlKeywords.add("ucfirst",Token.KEYWORD3);
-			perlKeywords.add("umask",Token.KEYWORD3);
-			perlKeywords.add("undef",Token.KEYWORD3);
-			perlKeywords.add("unlink",Token.KEYWORD3);
-			perlKeywords.add("unpack",Token.KEYWORD3);
-			perlKeywords.add("unshift",Token.KEYWORD3);
-			perlKeywords.add("untie",Token.KEYWORD3);
-			perlKeywords.add("utime",Token.KEYWORD3);
-			perlKeywords.add("values",Token.KEYWORD3);
-			perlKeywords.add("vec",Token.KEYWORD3);
-			perlKeywords.add("wait",Token.KEYWORD3);
-			perlKeywords.add("waitpid",Token.KEYWORD3);
-			perlKeywords.add("wantarray",Token.KEYWORD3);
-			perlKeywords.add("warn",Token.KEYWORD3);
-			perlKeywords.add("write",Token.KEYWORD3);
-
-			perlKeywords.add("m",S_ONE);
-			perlKeywords.add("q",S_ONE);
-			perlKeywords.add("qq",S_ONE);
-			perlKeywords.add("qw",S_ONE);
-			perlKeywords.add("qx",S_ONE);
-			perlKeywords.add("s",S_TWO);
-			perlKeywords.add("tr",S_TWO);
-			perlKeywords.add("y",S_TWO);
-		}
-		return perlKeywords;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/PropsTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/PropsTokenMarker.java
deleted file mode 100644
index 42ff686266e1966808974717b5af82525dc03894..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/PropsTokenMarker.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * PropsTokenMarker.java - Java props/DOS INI token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Java properties/DOS INI token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class PropsTokenMarker extends TokenMarker
-{
-	public static final byte VALUE = Token.INTERNAL_FIRST;
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		int lastOffset = offset;
-		int length = line.count + offset;
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(array[i])
-				{
-				case '#': case ';':
-					if(i == offset)
-					{
-						addToken(line.count,Token.COMMENT1);
-						lastOffset = length;
-						break loop;
-					}
-					break;
-				case '[':
-					if(i == offset)
-					{
-						addToken(i - lastOffset,token);
-						token = Token.KEYWORD2;
-						lastOffset = i;
-					}
-					break;
-				case '=':
-					addToken(i - lastOffset,Token.KEYWORD1);
-					token = VALUE;
-					lastOffset = i;
-					break;
-				}
-				break;
-			case Token.KEYWORD2:
-				if(array[i] == ']')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = i1;
-				}
-				break;
-			case VALUE:
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-		if(lastOffset != length)
-			addToken(length - lastOffset,Token.NULL);
-		return Token.NULL;
-	}
-
-	public boolean supportsMultilineTokens()
-	{
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/PythonTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/PythonTokenMarker.java
deleted file mode 100644
index 40336b7267e67bd270e4f8446c58e53daea12d66..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/PythonTokenMarker.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- * PythonTokenMarker.java - Python token marker
- * Copyright (C) 1999 Jonathan Revusky
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Python token marker.
- *
- * @author Jonathan Revusky
- * @version $Id$
- */
-public class PythonTokenMarker extends TokenMarker
-{
-	private static final byte TRIPLEQUOTE1 = Token.INTERNAL_FIRST;
-	private static final byte TRIPLEQUOTE2 = Token.INTERNAL_LAST;
-
-	public PythonTokenMarker()
-	{
-		this.keywords = getKeywords();
-	}
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		lastOffset = offset;
-		lastKeyword = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(c)
-				{
-				case '#':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						doKeyword(line,i,c);
-						addToken(i - lastOffset,token);
-						addToken(length - i,Token.COMMENT1);
-						lastOffset = lastKeyword = length;
-						break loop;
-					}
-					break;
-				case '"':
-					doKeyword(line,i,c);
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						if(SyntaxUtilities.regionMatches(false,
-							line,i1,"\"\""))
-						{
-							token = TRIPLEQUOTE1;
-						}
-						else
-						{
-							token = Token.LITERAL1;
-						}
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				case '\'':
-					doKeyword(line,i,c);
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						if(SyntaxUtilities.regionMatches(false,
-							line,i1,"''"))
-						{
-							token = TRIPLEQUOTE2;
-						}
-						else
-						{
-							token = Token.LITERAL2;
-						}
-						lastOffset = lastKeyword = i;
-					}
-					break;
-				default:
-					backslash = false;
-					if(!Character.isLetterOrDigit(c)
-						&& c != '_')
-						doKeyword(line,i,c);
-					break;
-				}
-				break;
-			case Token.LITERAL1:
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			case Token.LITERAL2:
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i1;
-				}
-				break;
-			case TRIPLEQUOTE1:
-				if(backslash)
-					backslash = false;
-				else if(SyntaxUtilities.regionMatches(false,
-					line,i,"\"\"\""))
-				{
-					addToken((i+=4) - lastOffset,
-						Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i;
-				}
-				break;
-			case TRIPLEQUOTE2:
-				if(backslash)
-					backslash = false;
-				else if(SyntaxUtilities.regionMatches(false,
-					line,i,"'''"))
-				{
-					addToken((i+=4) - lastOffset,
-						Token.LITERAL1);
-					token = Token.NULL;
-					lastOffset = lastKeyword = i;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: "
-					+ token);
-			}
-		}
-
-		switch(token)
-		{
-			case TRIPLEQUOTE1:
-			case TRIPLEQUOTE2:
-				addToken(length - lastOffset,Token.LITERAL1);
-				break;
-			case Token.NULL:
-				doKeyword(line,length,'\0');
-			default:
-				addToken(length - lastOffset,token);
-				break;
-		}
-
-		return token;
-	}
-
-	public static KeywordMap getKeywords()
-	{
-		if (pyKeywords == null)
-		{
-			pyKeywords = new KeywordMap(false);
-			pyKeywords.add("and",Token.KEYWORD3);
-			pyKeywords.add("not",Token.KEYWORD3);
-			pyKeywords.add("or",Token.KEYWORD3);
-			pyKeywords.add("if",Token.KEYWORD1);
-			pyKeywords.add("for",Token.KEYWORD1);
-			pyKeywords.add("assert",Token.KEYWORD1);
-			pyKeywords.add("break",Token.KEYWORD1);
-			pyKeywords.add("continue",Token.KEYWORD1);
-			pyKeywords.add("elif",Token.KEYWORD1);
-			pyKeywords.add("else",Token.KEYWORD1);
-			pyKeywords.add("except",Token.KEYWORD1);
-			pyKeywords.add("exec",Token.KEYWORD1);
-			pyKeywords.add("finally",Token.KEYWORD1);
-			pyKeywords.add("raise",Token.KEYWORD1);
-			pyKeywords.add("return",Token.KEYWORD1);
-			pyKeywords.add("try",Token.KEYWORD1);
-			pyKeywords.add("while",Token.KEYWORD1);
-			pyKeywords.add("def",Token.KEYWORD2);
-			pyKeywords.add("class",Token.KEYWORD2);
-			pyKeywords.add("del",Token.KEYWORD2);
-			pyKeywords.add("from",Token.KEYWORD2);
-			pyKeywords.add("global",Token.KEYWORD2);
-			pyKeywords.add("import",Token.KEYWORD2);
-			pyKeywords.add("in",Token.KEYWORD2);
-			pyKeywords.add("is",Token.KEYWORD2);
-			pyKeywords.add("lambda",Token.KEYWORD2);
-			pyKeywords.add("pass",Token.KEYWORD2);
-			pyKeywords.add("print",Token.KEYWORD2);
-		}
-		return pyKeywords;
-	}
-
-	// private members
-	private static KeywordMap pyKeywords;
-
-	private KeywordMap keywords;
-	private int lastOffset;
-	private int lastKeyword;
-
-	private boolean doKeyword(Segment line, int i, char c)
-	{
-		int i1 = i+1;
-
-		int len = i - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,id);
-			lastOffset = i;
-		}
-		lastKeyword = i1;
-		return false;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/README.txt b/support/tools/BaseSimGUI/src/org/astron/util/gui/README.txt
deleted file mode 100644
index 07a825cd7bb4a58b5becdadd242a444c46cd0d55..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/README.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-OLDSYNTAX PACKAGE README
-
-I am placing the jEdit 2.2.1 syntax highlighting package in the public
-domain. This means it can be integrated into commercial programs, etc.
-
-This package requires at least Java 1.1 and Swing 1.1. Syntax
-highlighting for the following file types is supported:
-
-- C++, C
-- CORBA IDL
-- Eiffel
-- HTML
-- Java
-- Java properties
-- JavaScript
-- MS-DOS INI
-- MS-DOS batch files
-- Makefile
-- PHP
-- Perl
-- Python
-- TeX
-- Transact-SQL
-- Unix patch/diff
-- Unix shell script
-- XML
-
-This package is undocumented; read the source (start by taking a look at
-JEditTextArea.java) to find out how to use it; it's really simple. Feel
-free to e-mail questions, queries, etc. to me, but keep in mind that
-this code is very old and I no longer maintain it. So if you find a bug,
-don't bother me about it; fix it yourself.
-
-* Copyright
-
-The jEdit 2.2.1 syntax highlighting package contains code that is
-Copyright 1998-1999 Slava Pestov, Artur Biesiadowski, Clancy Malcolm,
-Jonathan Revusky, Juha Lindfors and Mike Dillon.
-
-You may use and modify this package for any purpose. Redistribution is
-permitted, in both source and binary form, provided that this notice
-remains intact in all source distributions of this package.
-
--- Slava Pestov
-25 September 2000
-<sp@gjt.org>
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/SQLTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/SQLTokenMarker.java
deleted file mode 100644
index 1ed74e7cf774f56e7f7329051e20c9a0116b945e..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/SQLTokenMarker.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
- * SQLTokenMarker.java - Generic SQL token marker
- * Copyright (C) 1999 mike dillon
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * SQL token marker.
- *
- * @author mike dillon
- * @version $Id$
- */
-public class SQLTokenMarker extends TokenMarker
-{
-	private int offset, lastOffset, lastKeyword, length;
-
-	// public members
-	public SQLTokenMarker(KeywordMap k)
-	{
-		this(k, false);
-	}
-
-	public SQLTokenMarker(KeywordMap k, boolean tsql)
-	{
-		keywords = k;
-		isTSQL = tsql;
-	}
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		offset = lastOffset = lastKeyword = line.offset;
-		length = line.count + offset;
-
-loop:
-		for(int i = offset; i < length; i++)
-		{
-			switch(line.array[i])
-			{
-			case '*':
-				if(token == Token.COMMENT1 && length - i >= 1 && line.array[i+1] == '/')
-				{
-					token = Token.NULL;
-					i++;
-					addToken((i + 1) - lastOffset,Token.COMMENT1);
-					lastOffset = i + 1;
-				}
-				else if (token == Token.NULL)
-				{
-					searchBack(line, i);
-					addToken(1,Token.OPERATOR);
-					lastOffset = i + 1;
-				}
-				break;
-			case '[':
-				if(token == Token.NULL)
-				{
-					searchBack(line, i);
-					token = Token.LITERAL1;
-					literalChar = '[';
-					lastOffset = i;
-				}
-				break;
-			case ']':
-				if(token == Token.LITERAL1 && literalChar == '[')
-				{
-					token = Token.NULL;
-					literalChar = 0;
-					addToken((i + 1) - lastOffset,Token.LITERAL1);
-					lastOffset = i + 1;
-				}
-				break;
-			case '.': case ',': case '(': case ')':
-				if (token == Token.NULL) {
-					searchBack(line, i);
-					addToken(1, Token.NULL);
-					lastOffset = i + 1;
-				}
-				break;
-			case '+': case '%': case '&': case '|': case '^':
-			case '~': case '<': case '>': case '=':
-				if (token == Token.NULL) {
-					searchBack(line, i);
-					addToken(1,Token.OPERATOR);
-					lastOffset = i + 1;
-				}
-				break;
-			case ' ': case '\t':
-				if (token == Token.NULL) {
-					searchBack(line, i, false);
-				}
-				break;
-			case ':':
-				if(token == Token.NULL)
-				{
-					addToken((i+1) - lastOffset,Token.LABEL);
-					lastOffset = i + 1;
-				}
-				break;
-			case '/':
-				if(token == Token.NULL)
-				{
-					if (length - i >= 2 && line.array[i + 1] == '*')
-					{
-						searchBack(line, i);
-						token = Token.COMMENT1;
-						lastOffset = i;
-						i++;
-					}
-					else
-					{
-						searchBack(line, i);
-						addToken(1,Token.OPERATOR);
-						lastOffset = i + 1;
-					}
-				}
-				break;
-			case '-':
-				if(token == Token.NULL)
-				{
-					if (length - i >= 2 && line.array[i+1] == '-')
-					{
-						searchBack(line, i);
-						addToken(length - i,Token.COMMENT1);
-						lastOffset = length;
-						break loop;
-					}
-					else
-					{
-						searchBack(line, i);
-						addToken(1,Token.OPERATOR);
-						lastOffset = i + 1;
-					}
-				}
-				break;
-			case '!':
-				if(isTSQL && token == Token.NULL && length - i >= 2 &&
-				(line.array[i+1] == '=' || line.array[i+1] == '<' || line.array[i+1] == '>'))
-				{
-					searchBack(line, i);
-					addToken(1,Token.OPERATOR);
-					lastOffset = i + 1;
-				}
-				break;
-			case '"': case '\'':
-				if(token == Token.NULL)
-				{
-					token = Token.LITERAL1;
-					literalChar = line.array[i];
-					addToken(i - lastOffset,Token.NULL);
-					lastOffset = i;
-				}
-				else if(token == Token.LITERAL1 && literalChar == line.array[i])
-				{
-					token = Token.NULL;
-					literalChar = 0;
-					addToken((i + 1) - lastOffset,Token.LITERAL1);
-					lastOffset = i + 1;
-				}
-				break;
-			default:
-				break;
-			}
-		}
-		if(token == Token.NULL)
-			searchBack(line, length, false);
-		if(lastOffset != length)
-			addToken(length - lastOffset,token);
-		return token;
-	}
-
-	// protected members
-	protected boolean isTSQL = false;
-
-	// private members
-	private KeywordMap keywords;
-	private char literalChar = 0;
-
-	private void searchBack(Segment line, int pos)
-	{
-		searchBack(line, pos, true);
-	}
-
-	private void searchBack(Segment line, int pos, boolean padNull)
-	{
-		int len = pos - lastKeyword;
-		byte id = keywords.lookup(line,lastKeyword,len);
-		if(id != Token.NULL)
-		{
-			if(lastKeyword != lastOffset)
-				addToken(lastKeyword - lastOffset,Token.NULL);
-			addToken(len,id);
-			lastOffset = pos;
-		}
-		lastKeyword = pos + 1;
-		if (padNull && lastOffset < pos)
-			addToken(pos - lastOffset, Token.NULL);
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/ShellScriptTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/ShellScriptTokenMarker.java
deleted file mode 100644
index 5598e4964d739bd3a7fe37df1c2f45d349e529da..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/ShellScriptTokenMarker.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/*
- * ShellScriptTokenMarker.java - Shell script token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Shell script token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class ShellScriptTokenMarker extends TokenMarker
-{
-	// public members
-	public static final byte LVARIABLE = Token.INTERNAL_FIRST;
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		byte cmdState = 0; // 0 = space before command, 1 = inside
-				// command, 2 = after command
-		int offset = line.offset;
-		int lastOffset = offset;
-		int length = line.count + offset;
-
-		if(token == Token.LITERAL1 && lineIndex != 0
-			&& lineInfo[lineIndex - 1].obj != null)
-		{
-			String str = (String)lineInfo[lineIndex - 1].obj;
-			if(str != null && str.length() == line.count
-				&& SyntaxUtilities.regionMatches(false,line,
-				offset,str))
-			{
-				addToken(line.count,Token.LITERAL1);
-				return Token.NULL;
-			}
-			else
-			{
-				addToken(line.count,Token.LITERAL1);
-				lineInfo[lineIndex].obj = str;
-				return Token.LITERAL1;
-			}
-		}
-
-		boolean backslash = false;
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-
-			if(c == '\\')
-			{
-				backslash = !backslash;
-				continue;
-			}
-
-			switch(token)
-			{
-			case Token.NULL:
-				switch(c)
-				{
-				case ' ': case '\t': case '(': case ')':
-					backslash = false;
-					if(cmdState == 1/*insideCmd*/)
-					{
-						addToken(i - lastOffset,Token.KEYWORD1);
-						lastOffset = i;
-						cmdState = 2; /*afterCmd*/
-					}
-					break;
-				case '=':
-					backslash = false;
-					if(cmdState == 1/*insideCmd*/)
-					{
-						addToken(i - lastOffset,token);
-						lastOffset = i;
-						cmdState = 2; /*afterCmd*/
-					}
-					break;
-				case '&': case '|': case ';':
-					if(backslash)
-						backslash = false;
-					else
-						cmdState = 0; /*beforeCmd*/
-					break;
-				case '#':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						addToken(length - i,Token.COMMENT1);
-						lastOffset = length;
-						break loop;
-					}
-					break;
-				case '$':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						cmdState = 2; /*afterCmd*/
-						lastOffset = i;
-						if(length - i >= 2)
-						{
-							switch(array[i1])
-							{
-							case '(':
-								continue;
-							case '{':
-								token = LVARIABLE;
-								break;
-							default:
-								token = Token.KEYWORD2;
-								break;
-							}
-						}
-						else
-							token = Token.KEYWORD2;
-					}
-					break;
-				case '"':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL1;
-						lineInfo[lineIndex].obj = null;
-						cmdState = 2; /*afterCmd*/
-						lastOffset = i;
-					}
-					break;
-				case '\'':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						addToken(i - lastOffset,token);
-						token = Token.LITERAL2;
-						cmdState = 2; /*afterCmd*/
-						lastOffset = i;
-					}
-					break;
-				case '<':
-					if(backslash)
-						backslash = false;
-					else
-					{
-						if(length - i > 1 && array[i1] == '<')
-						{
-							addToken(i - lastOffset,
-								token);
-							token = Token.LITERAL1;
-							lastOffset = i;
-							lineInfo[lineIndex].obj =
-								new String(array,i + 2,
-									length - (i+2));
-						}
-					}
-					break;
-				default:
-					backslash = false;
-					if(Character.isLetter(c))
-					{
-						if(cmdState == 0 /*beforeCmd*/)
-						{
-							addToken(i - lastOffset,token);
-							lastOffset = i;
-							cmdState++; /*insideCmd*/
-						}
-					}
-					break;
-				}
-				break;
-			case Token.KEYWORD2:
-				backslash = false;
-				if(!Character.isLetterOrDigit(c) && c != '_')
-				{
-					if(i != offset && array[i-1] == '$')
-					{
-						addToken(i1 - lastOffset,token);
-						lastOffset = i1;
-						token = Token.NULL;
-						continue;
-					}
-					else
-					{
-						addToken(i - lastOffset,token);
-						lastOffset = i;
-						token = Token.NULL;
-					}
-				}
-				break;
-			case Token.LITERAL1:
-				if(backslash)
-					backslash = false;
-				else if(c == '"')
-				{
-					addToken(i1 - lastOffset,token);
-					cmdState = 2; /*afterCmd*/
-					lastOffset = i1;
-					token = Token.NULL;
-				}
-				else
-					backslash = false;
-				break;
-			case Token.LITERAL2:
-				if(backslash)
-					backslash = false;
-				else if(c == '\'')
-				{
-					addToken(i1 - lastOffset,Token.LITERAL1);
-					cmdState = 2; /*afterCmd*/
-					lastOffset = i1;
-					token = Token.NULL;
-				}
-				else
-					backslash = false;
-				break;
-			case LVARIABLE:
-				backslash = false;
-				if(c == '}')
-				{
-					addToken(i1 - lastOffset,Token.KEYWORD2);
-					lastOffset = i1;
-					token = Token.NULL;
-				}
-				break;
-			default:
-				throw new InternalError("Invalid state: " + token);
-			}
-		}
-
-		switch(token)
-		{
-		case Token.NULL:
-			if(cmdState == 1)
-				addToken(length - lastOffset,Token.KEYWORD1);
-			else
-				addToken(length - lastOffset,token);
-			break;
-		case Token.LITERAL2:
-			addToken(length - lastOffset,Token.LITERAL1);
-			break;
-		case Token.KEYWORD2:
-			addToken(length - lastOffset,token);
-			token = Token.NULL;
-			break;
-		case LVARIABLE:
-			addToken(length - lastOffset,Token.INVALID);
-			token = Token.NULL;
-			break;
-		default:
-			addToken(length - lastOffset,token);
-			break;
-		}
-		return token;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/StackLayout.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/StackLayout.java
deleted file mode 100644
index 7193ed9bca777e75a44546bb6880218e96538ef1..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/StackLayout.java
+++ /dev/null
@@ -1,309 +0,0 @@
-package org.astron.util.gui;
-
-import java.awt.Component;
-import java.awt.Container;
-import java.awt.Dimension;
-import java.awt.Insets;
-import java.awt.LayoutManager2;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.ArrayList;
-
-public class StackLayout implements LayoutManager2
-{
-	private List _components;
-	private List _constraints;
-
-	private int					_vgap;
-	private HorizontalBehaviour	_defaultBehaviour;
-
-	public StackLayout()
-	{
-		this(5);
-	}
-
-	public StackLayout(int vgap)
-	{
-		this(vgap, LEFT);
-	}
-
-	public StackLayout(int vgap, HorizontalBehaviour defaultHorizontalBehaviour)
-	{
-		super();
-
-		_vgap 				= vgap;
-		_defaultBehaviour	= defaultHorizontalBehaviour;
-
-		_components		= new ArrayList();
-		_constraints	= new ArrayList();
-	}
-
-	public int getVerticalGap()
-	{
-		return _vgap;
-	}
-
-	public void setVerticalGap(int vgap)
-	{
-		_vgap = vgap;
-	}
-
-	public void removeLayoutComponent(Component component)
-	{
-		synchronized (component.getTreeLock())
-		{
-			int index = _components.indexOf(component);
-
-			_components.remove(index);
-			_constraints.remove(index);
-		}
-	}
-
-	public void addLayoutComponent(Component component, Object constraint)
-	{
-		synchronized (component.getTreeLock())
-		{
-			HorizontalBehaviour behaviour;
-
-			if(constraint == null)
-			{
-				behaviour = _defaultBehaviour;
-			}
-			else
-			{
-				behaviour = (HorizontalBehaviour) constraint;
-			}
-
-			_components.add(component);
-			_constraints.add(behaviour);
-		}
-	}
-
-	public void addLayoutComponent(String name, Component comp)
-	{
-		System.out.println("This method is not supported by the StackLayout");
-	}
-
-	public float getLayoutAlignmentX(Container target)
-	{
-		return 0.5f;
-	}
-
-	public float getLayoutAlignmentY(Container target)
-	{
-		return 0.5f;
-	}
-
-	public void invalidateLayout(Container target)
-	{
-		//no info is cached
-	}
-
-	// returns all preferred heigths of the components and the maximum preferred widths
-	public Dimension preferredLayoutSize(Container container)
-	{
-		synchronized (container.getTreeLock())
-		{
-			Dimension result = new Dimension(0, 0);
-
-			Iterator componentIterator = _components.iterator();
-			while(componentIterator.hasNext())
-			{
-				Component component = (Component) componentIterator.next();
-
-				if (component.isVisible())
-				{
-					Dimension dimension = component.getPreferredSize();
-
-					result.height += dimension.height + _vgap;
-					result.width = Math.max(result.width, dimension.width);
-				}
-			}
-
-			Insets insets = container.getInsets();
-			result.width	+= insets.left	+ insets.right;
-			result.height	+= insets.top	+ insets.bottom;
-			result.height	-= _vgap;
-			return result;
-		}
-	}
-
-	// returns all preferred heigths of the components and the maximum of the minimum widths
-	public Dimension minimumLayoutSize(Container container)
-	{
-		synchronized (container.getTreeLock())
-		{
-			Dimension result = new Dimension(0, 0);
-
-			Iterator componentIterator = _components.iterator();
-			while(componentIterator.hasNext())
-			{
-				Component component = (Component) componentIterator.next();
-
-				if (component.isVisible())
-				{
-					Dimension dimension				= component.getMinimumSize();
-					Dimension preferredDimension	= component.getPreferredSize();
-
-					result.height += preferredDimension.height + _vgap;
-					result.width = Math.max(result.width, dimension.width);
-				}
-			}
-
-			Insets insets = container.getInsets();
-			result.width	+= insets.left	+ insets.right;
-			result.height	+= insets.top	+ insets.bottom;
-			result.height	-= _vgap;
-
-			return result;
-		}
-	}
-
-	// returns all preferred heigths of the components and the minimum of the maximum widths
-	public Dimension maximumLayoutSize(Container container)
-	{
-		synchronized (container.getTreeLock())
-		{
-			Dimension result = new Dimension(Integer.MAX_VALUE, 0);
-
-			Iterator componentIterator	= _components.iterator();
-			Iterator constraintIterator	= _constraints.iterator();
-			while(componentIterator.hasNext())
-			{
-				Component component = (Component) componentIterator.next();
-				HorizontalBehaviour constraint = (HorizontalBehaviour) constraintIterator.next();
-
-				if (component.isVisible())
-				{
-					Dimension dimension				= component.getMaximumSize();
-					Dimension preferredDimension	= component.getPreferredSize();
-
-					result.height += preferredDimension.height + _vgap;
-
-					if(constraint.doesMaximumSizeMatter())
-					{
-						result.width = Math.min(result.width, dimension.width);
-					}
-				}
-			}
-
-			Insets insets = container.getInsets();
-			result.width	+= insets.left	+ insets.right;
-			result.height	+= insets.top	+ insets.bottom;
-			result.height	-= _vgap;
-
-			return result;
-		}
-	}
-
-	public void layoutContainer(Container container)
-	{
-		synchronized (container.getTreeLock())
-		{
-			Dimension 	targetDimension	= container.getSize();
-			Insets 		insets			= container.getInsets();
-
-			int maximumWidth = targetDimension.width - (insets.left + insets.right);
-
-			int x = insets.left;
-			int y = insets.top;
-
-			Iterator componentIterator	= _components.iterator();
-			Iterator constraintIterator	= _constraints.iterator();
-
-			while(componentIterator.hasNext())
-			{
-				Component component = (Component) componentIterator.next();
-				HorizontalBehaviour constraint = (HorizontalBehaviour) constraintIterator.next();
-
-				if(component.isVisible())
-				{
-					constraint.positionComponent(component, x, y, maximumWidth);
-					y += component.getPreferredSize().getHeight() + _vgap;
-				}
-			}
-		}
-	}
-
-	public static final HorizontalBehaviour STRETCH = new StretchHorizontalBehaviour();
-	public static final HorizontalBehaviour LEFT	= new LeftPreferredSizeBehaviour();
-	public static final HorizontalBehaviour RIGHT	= new RightPreferredSizeBehaviour();
-	public static final HorizontalBehaviour CENTER	= new CenterPreferredSizeBehaviour();
-
-	public interface HorizontalBehaviour
-	{
-		public void positionComponent(Component component, int x, int y, int maximumWidth);
-		public boolean doesMaximumSizeMatter();
-	}
-
-	public static class StretchHorizontalBehaviour implements HorizontalBehaviour
-	{
-		public void positionComponent(Component component, int x, int y, int maximumWidth)
-		{
-			component.setSize(maximumWidth, component.getPreferredSize().height);
-			component.setLocation(x, y);
-		}
-
-		public boolean doesMaximumSizeMatter()
-		{
-			return true;
-		}
-	}
-
-	public static abstract class PreferredSizeHorizontalBehaviour implements HorizontalBehaviour
-	{
-		public int sizeComponent(Component component, int maximumWidth)
-		{
-			Dimension preferredSize = component.getPreferredSize();
-
-			int width;
-			int height = preferredSize.height;
-
-			if(preferredSize.getWidth() > maximumWidth)
-			{
-				width = maximumWidth;
-			}
-			else
-			{
-				width = preferredSize.width;
-			}
-
-			component.setSize(width, height);
-
-			return width;
-		}
-
-		public boolean doesMaximumSizeMatter()
-		{
-			return false;
-		}
-	}
-
-	public static class LeftPreferredSizeBehaviour extends PreferredSizeHorizontalBehaviour
-	{
-		public void positionComponent(Component component, int x, int y, int maximumWidth)
-		{
-			int width = sizeComponent(component, maximumWidth);
-			component.setLocation(x, y);
-		}
-	}
-
-	public static class RightPreferredSizeBehaviour extends PreferredSizeHorizontalBehaviour
-	{
-		public void positionComponent(Component component, int x, int y, int maximumWidth)
-		{
-			int width = sizeComponent(component, maximumWidth);
-			component.setLocation(x + (maximumWidth - width), y);
-		}
-	}
-
-	public static class CenterPreferredSizeBehaviour extends PreferredSizeHorizontalBehaviour
-	{
-		public void positionComponent(Component component, int x, int y, int maximumWidth)
-		{
-			int width = sizeComponent(component, maximumWidth);
-			component.setLocation(x + ((maximumWidth - width)/2), y);
-		}
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxDocument.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxDocument.java
deleted file mode 100644
index 9ac46488238ec03861c227a5dc9fd05f2c8f84b7..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxDocument.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * SyntaxDocument.java - Document that can be tokenized
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.event.*;
-import javax.swing.text.*;
-import javax.swing.undo.UndoableEdit;
-
-/**
- * A document implementation that can be tokenized by the syntax highlighting
- * system.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class SyntaxDocument extends PlainDocument
-{
-	/**
-	 * Returns the token marker that is to be used to split lines
-	 * of this document up into tokens. May return null if this
-	 * document is not to be colorized.
-	 */
-	public TokenMarker getTokenMarker()
-	{
-		return tokenMarker;
-	}
-
-	/**
-	 * Sets the token marker that is to be used to split lines of
-	 * this document up into tokens. May throw an exception if
-	 * this is not supported for this type of document.
-	 * @param tm The new token marker
-	 */
-	public void setTokenMarker(TokenMarker tm)
-	{
-		tokenMarker = tm;
-		if(tm == null)
-			return;
-		tokenMarker.insertLines(0,getDefaultRootElement()
-			.getElementCount());
-		tokenizeLines();
-	}
-
-	/**
-	 * Reparses the document, by passing all lines to the token
-	 * marker. This should be called after the document is first
-	 * loaded.
-	 */
-	public void tokenizeLines()
-	{
-		tokenizeLines(0,getDefaultRootElement().getElementCount());
-	}
-
-	/**
-	 * Reparses the document, by passing the specified lines to the
-	 * token marker. This should be called after a large quantity of
-	 * text is first inserted.
-	 * @param start The first line to parse
-	 * @param len The number of lines, after the first one to parse
-	 */
-	public void tokenizeLines(int start, int len)
-	{
-		if(tokenMarker == null || !tokenMarker.supportsMultilineTokens())
-			return;
-
-		Segment lineSegment = new Segment();
-		Element map = getDefaultRootElement();
-
-		len += start;
-
-		try
-		{
-			for(int i = start; i < len; i++)
-			{
-				Element lineElement = map.getElement(i);
-				int lineStart = lineElement.getStartOffset();
-				getText(lineStart,lineElement.getEndOffset()
-					- lineStart - 1,lineSegment);
-				tokenMarker.markTokens(lineSegment,i);
-			}
-		}
-		catch(BadLocationException bl)
-		{
-			bl.printStackTrace();
-		}
-	}
-
-	/**
-	 * Starts a compound edit that can be undone in one operation.
-	 * Subclasses that implement undo should override this method;
-	 * this class has no undo functionality so this method is
-	 * empty.
-	 */
-	public void beginCompoundEdit() {}
-
-	/**
-	 * Ends a compound edit that can be undone in one operation.
-	 * Subclasses that implement undo should override this method;
-	 * this class has no undo functionality so this method is
-	 * empty.
-	 */
-	public void endCompoundEdit() {}
-
-	/**
-	 * Adds an undoable edit to this document's undo list. The edit
-	 * should be ignored if something is currently being undone.
-	 * @param edit The undoable edit
-	 *
-	 * @since jEdit 2.2pre1
-	 */
-	public void addUndoableEdit(UndoableEdit edit) {}
-
-	// protected members
-	protected TokenMarker tokenMarker;
-
-	/**
-	 * We overwrite this method to update the token marker
-	 * state immediately so that any event listeners get a
-	 * consistent token marker.
-	 */
-	protected void fireInsertUpdate(DocumentEvent evt)
-	{
-		if(tokenMarker != null)
-		{
-			DocumentEvent.ElementChange ch = evt.getChange(
-				getDefaultRootElement());
-			if(ch != null)
-			{
-				tokenMarker.insertLines(ch.getIndex() + 1,
-					ch.getChildrenAdded().length -
-					ch.getChildrenRemoved().length);
-			}
-		}
-
-		super.fireInsertUpdate(evt);
-	}
-
-	/**
-	 * We overwrite this method to update the token marker
-	 * state immediately so that any event listeners get a
-	 * consistent token marker.
-	 */
-	protected void fireRemoveUpdate(DocumentEvent evt)
-	{
-		if(tokenMarker != null)
-		{
-			DocumentEvent.ElementChange ch = evt.getChange(
-				getDefaultRootElement());
-			if(ch != null)
-			{
-				tokenMarker.deleteLines(ch.getIndex() + 1,
-					ch.getChildrenRemoved().length -
-					ch.getChildrenAdded().length);
-			}
-		}
-
-		super.fireRemoveUpdate(evt);
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxStyle.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxStyle.java
deleted file mode 100644
index 37a75fa12f37e0bba1dd07beba1a7d8c5a5b6266..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxStyle.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * SyntaxStyle.java - A simple text style class
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import java.awt.*;
-import java.util.StringTokenizer;
-
-/**
- * A simple text style class. It can specify the color, italic flag,
- * and bold flag of a run of text.
- * @author Slava Pestov
- * @version $Id$
- */
-public class SyntaxStyle
-{
-	/**
-	 * Creates a new SyntaxStyle.
-	 * @param color The text color
-	 * @param italic True if the text should be italics
-	 * @param bold True if the text should be bold
-	 */
-	public SyntaxStyle(Color color, boolean italic, boolean bold)
-	{
-		this.color = color;
-		this.italic = italic;
-		this.bold = bold;
-	}
-
-	/**
-	 * Returns the color specified in this style.
-	 */
-	public Color getColor()
-	{
-		return color;
-	}
-
-	/**
-	 * Returns true if no font styles are enabled.
-	 */
-	public boolean isPlain()
-	{
-		return !(bold || italic);
-	}
-
-	/**
-	 * Returns true if italics is enabled for this style.
-	 */
-	public boolean isItalic()
-	{
-		return italic;
-	}
-
-	/**
-	 * Returns true if boldface is enabled for this style.
-	 */
-	public boolean isBold()
-	{
-		return bold;
-	}
-
-	/**
-	 * Returns the specified font, but with the style's bold and
-	 * italic flags applied.
-	 */
-	public Font getStyledFont(Font font)
-	{
-		if(font == null)
-			throw new NullPointerException("font param must not"
-				+ " be null");
-		if(font.equals(lastFont))
-			return lastStyledFont;
-		lastFont = font;
-		lastStyledFont = new Font(font.getFamily(),
-			(bold ? Font.BOLD : 0)
-			| (italic ? Font.ITALIC : 0),
-			font.getSize());
-		return lastStyledFont;
-	}
-
-	/**
-	 * Returns the font metrics for the styled font.
-	 */
-	public FontMetrics getFontMetrics(Font font)
-	{
-		if(font == null)
-			throw new NullPointerException("font param must not"
-				+ " be null");
-		if(font.equals(lastFont) && fontMetrics != null)
-			return fontMetrics;
-		lastFont = font;
-		lastStyledFont = new Font(font.getFamily(),
-			(bold ? Font.BOLD : 0)
-			| (italic ? Font.ITALIC : 0),
-			font.getSize());
-		fontMetrics = Toolkit.getDefaultToolkit().getFontMetrics(
-			lastStyledFont);
-		return fontMetrics;
-	}
-
-	/**
-	 * Sets the foreground color and font of the specified graphics
-	 * context to that specified in this style.
-	 * @param gfx The graphics context
-	 * @param font The font to add the styles to
-	 */
-	public void setGraphicsFlags(Graphics gfx, Font font)
-	{
-		Font _font = getStyledFont(font);
-		gfx.setFont(_font);
-		gfx.setColor(color);
-	}
-
-	/**
-	 * Returns a string representation of this object.
-	 */
-	public String toString()
-	{
-		return getClass().getName() + "[color=" + color +
-			(italic ? ",italic" : "") +
-			(bold ? ",bold" : "") + "]";
-	}
-
-	// private members
-	private Color color;
-	private boolean italic;
-	private boolean bold;
-	private Font lastFont;
-	private Font lastStyledFont;
-	private FontMetrics fontMetrics;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxUtilities.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxUtilities.java
deleted file mode 100644
index 7270145b128c7f6dacf658454ac88a841d390169..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/SyntaxUtilities.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * SyntaxUtilities.java - Utility functions used by syntax colorizing
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.*;
-import java.awt.*;
-
-/**
- * Class with several utility functions used by jEdit's syntax colorizing
- * subsystem.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class SyntaxUtilities
-{
-	/**
-	 * Checks if a subregion of a <code>Segment</code> is equal to a
-	 * string.
-	 * @param ignoreCase True if case should be ignored, false otherwise
-	 * @param text The segment
-	 * @param offset The offset into the segment
-	 * @param match The string to match
-	 */
-	public static boolean regionMatches(boolean ignoreCase, Segment text,
-					    int offset, String match)
-	{
-		int length = offset + match.length();
-		char[] textArray = text.array;
-		if(length > text.offset + text.count)
-			return false;
-		for(int i = offset, j = 0; i < length; i++, j++)
-		{
-			char c1 = textArray[i];
-			char c2 = match.charAt(j);
-			if(ignoreCase)
-			{
-				c1 = Character.toUpperCase(c1);
-				c2 = Character.toUpperCase(c2);
-			}
-			if(c1 != c2)
-				return false;
-		}
-		return true;
-	}
-
-	/**
-	 * Checks if a subregion of a <code>Segment</code> is equal to a
-	 * character array.
-	 * @param ignoreCase True if case should be ignored, false otherwise
-	 * @param text The segment
-	 * @param offset The offset into the segment
-	 * @param match The character array to match
-	 */
-	public static boolean regionMatches(boolean ignoreCase, Segment text,
-					    int offset, char[] match)
-	{
-		int length = offset + match.length;
-		char[] textArray = text.array;
-		if(length > text.offset + text.count)
-			return false;
-		for(int i = offset, j = 0; i < length; i++, j++)
-		{
-			char c1 = textArray[i];
-			char c2 = match[j];
-			if(ignoreCase)
-			{
-				c1 = Character.toUpperCase(c1);
-				c2 = Character.toUpperCase(c2);
-			}
-			if(c1 != c2)
-				return false;
-		}
-		return true;
-	}
-
-	/**
-	 * Returns the default style table. This can be passed to the
-	 * <code>setStyles()</code> method of <code>SyntaxDocument</code>
-	 * to use the default syntax styles.
-	 */
-	public static SyntaxStyle[] getDefaultSyntaxStyles()
-	{
-		SyntaxStyle[] styles = new SyntaxStyle[Token.ID_COUNT];
-
-		styles[Token.COMMENT1] = new SyntaxStyle(Color.black,true,false);
-		styles[Token.COMMENT2] = new SyntaxStyle(new Color(0x990033),true,false);
-		styles[Token.KEYWORD1] = new SyntaxStyle(Color.black,false,true);
-		styles[Token.KEYWORD2] = new SyntaxStyle(Color.magenta,false,false);
-		styles[Token.KEYWORD3] = new SyntaxStyle(new Color(0x009600),false,false);
-		styles[Token.LITERAL1] = new SyntaxStyle(new Color(0x650099),false,false);
-		styles[Token.LITERAL2] = new SyntaxStyle(new Color(0x650099),false,true);
-		styles[Token.LABEL] = new SyntaxStyle(new Color(0x990033),false,true);
-		styles[Token.OPERATOR] = new SyntaxStyle(Color.black,false,true);
-		styles[Token.INVALID] = new SyntaxStyle(Color.red,false,true);
-
-		return styles;
-	}
-
-	/**
-	 * Paints the specified line onto the graphics context. Note that this
-	 * method munges the offset and count values of the segment.
-	 * @param line The line segment
-	 * @param tokens The token list for the line
-	 * @param styles The syntax style list
-	 * @param expander The tab expander used to determine tab stops. May
-	 * be null
-	 * @param gfx The graphics context
-	 * @param x The x co-ordinate
-	 * @param y The y co-ordinate
-	 * @return The x co-ordinate, plus the width of the painted string
-	 */
-	public static int paintSyntaxLine(Segment line, Token tokens,
-		SyntaxStyle[] styles, TabExpander expander, Graphics gfx,
-		int x, int y)
-	{
-		Font defaultFont = gfx.getFont();
-		Color defaultColor = gfx.getColor();
-
-		int offset = 0;
-		for(;;)
-		{
-			byte id = tokens.id;
-			if(id == Token.END)
-				break;
-
-			int length = tokens.length;
-			if(id == Token.NULL)
-			{
-				if(!defaultColor.equals(gfx.getColor()))
-					gfx.setColor(defaultColor);
-				if(!defaultFont.equals(gfx.getFont()))
-					gfx.setFont(defaultFont);
-			}
-			else
-				styles[id].setGraphicsFlags(gfx,defaultFont);
-
-			line.count = length;
-			x = Utilities.drawTabbedText(line,x,y,gfx,expander,0);
-			line.offset += length;
-			offset += length;
-
-			tokens = tokens.next;
-		}
-
-		return x;
-	}
-
-	// private members
-	private SyntaxUtilities() {}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TSQLTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TSQLTokenMarker.java
deleted file mode 100644
index ee93159717e600b5a79c774f83ebaa7805ae3680..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TSQLTokenMarker.java
+++ /dev/null
@@ -1,968 +0,0 @@
-/*
- * TSQLTokenMarker.java - Transact-SQL token marker
- * Copyright (C) 1999 mike dillon
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * Transact-SQL token marker.
- *
- * @author mike dillon
- * @version $Id$
- */
-public class TSQLTokenMarker extends SQLTokenMarker
-{
-	// public members
-	public TSQLTokenMarker()
-	{
-		super(getKeywordMap(), true);
-	}
-
-	public static KeywordMap getKeywordMap()
-	{
-		if (tsqlKeywords == null) {
-			tsqlKeywords = new KeywordMap(true);
-			addKeywords();
-			addDataTypes();
-			addSystemFunctions();
-			addOperators();
-	  		addSystemStoredProcedures();
-			addSystemTables();
-		}
-		return tsqlKeywords;
-	}
-
-	private static void addKeywords()
-	{
-		tsqlKeywords.add("ADD",Token.KEYWORD1);
-		tsqlKeywords.add("ALTER",Token.KEYWORD1);
-		tsqlKeywords.add("ANSI_NULLS",Token.KEYWORD1);
-		tsqlKeywords.add("AS",Token.KEYWORD1);
-		tsqlKeywords.add("ASC",Token.KEYWORD1);
-		tsqlKeywords.add("AUTHORIZATION",Token.KEYWORD1);
-		tsqlKeywords.add("BACKUP",Token.KEYWORD1);
-		tsqlKeywords.add("BEGIN",Token.KEYWORD1);
-		tsqlKeywords.add("BREAK",Token.KEYWORD1);
-		tsqlKeywords.add("BROWSE",Token.KEYWORD1);
-		tsqlKeywords.add("BULK",Token.KEYWORD1);
-		tsqlKeywords.add("BY",Token.KEYWORD1);
-		tsqlKeywords.add("CASCADE",Token.KEYWORD1);
-		tsqlKeywords.add("CHECK",Token.KEYWORD1);
-		tsqlKeywords.add("CHECKPOINT",Token.KEYWORD1);
-		tsqlKeywords.add("CLOSE",Token.KEYWORD1);
-		tsqlKeywords.add("CLUSTERED",Token.KEYWORD1);
-		tsqlKeywords.add("COLUMN",Token.KEYWORD1);
-		tsqlKeywords.add("COMMIT",Token.KEYWORD1);
-		tsqlKeywords.add("COMMITTED",Token.KEYWORD1);
-		tsqlKeywords.add("COMPUTE",Token.KEYWORD1);
-		tsqlKeywords.add("CONFIRM",Token.KEYWORD1);
-		tsqlKeywords.add("CONSTRAINT",Token.KEYWORD1);
-		tsqlKeywords.add("CONTAINS",Token.KEYWORD1);
-		tsqlKeywords.add("CONTAINSTABLE",Token.KEYWORD1);
-		tsqlKeywords.add("CONTINUE",Token.KEYWORD1);
-		tsqlKeywords.add("CONTROLROW",Token.KEYWORD1);
-		tsqlKeywords.add("CREATE",Token.KEYWORD1);
-		tsqlKeywords.add("CURRENT",Token.KEYWORD1);
-		tsqlKeywords.add("CURRENT_DATE",Token.KEYWORD1);
-		tsqlKeywords.add("CURRENT_TIME",Token.KEYWORD1);
-		tsqlKeywords.add("CURSOR",Token.KEYWORD1);
-		tsqlKeywords.add("DATABASE",Token.KEYWORD1);
-		tsqlKeywords.add("DBCC",Token.KEYWORD1);
-		tsqlKeywords.add("DEALLOCATE",Token.KEYWORD1);
-		tsqlKeywords.add("DECLARE",Token.KEYWORD1);
-		tsqlKeywords.add("DEFAULT",Token.KEYWORD1);
-		tsqlKeywords.add("DELETE",Token.KEYWORD1);
-		tsqlKeywords.add("DENY",Token.KEYWORD1);
-		tsqlKeywords.add("DESC",Token.KEYWORD1);
-		tsqlKeywords.add("DISK",Token.KEYWORD1);
-		tsqlKeywords.add("DISTINCT",Token.KEYWORD1);
-		tsqlKeywords.add("DISTRIBUTED",Token.KEYWORD1);
-		tsqlKeywords.add("DOUBLE",Token.KEYWORD1);
-		tsqlKeywords.add("DROP",Token.KEYWORD1);
-		tsqlKeywords.add("DUMMY",Token.KEYWORD1);
-		tsqlKeywords.add("DUMP",Token.KEYWORD1);
-		tsqlKeywords.add("ELSE",Token.KEYWORD1);
-		tsqlKeywords.add("END",Token.KEYWORD1);
-		tsqlKeywords.add("ERRLVL",Token.KEYWORD1);
-		tsqlKeywords.add("ERROREXIT",Token.KEYWORD1);
-		tsqlKeywords.add("ESCAPE",Token.KEYWORD1);
-		tsqlKeywords.add("EXCEPT",Token.KEYWORD1);
-		tsqlKeywords.add("EXEC",Token.KEYWORD1);
-		tsqlKeywords.add("EXECUTE",Token.KEYWORD1);
-		tsqlKeywords.add("EXIT",Token.KEYWORD1);
-		tsqlKeywords.add("FETCH",Token.KEYWORD1);
-		tsqlKeywords.add("FILE",Token.KEYWORD1);
-		tsqlKeywords.add("FILLFACTOR",Token.KEYWORD1);
-		tsqlKeywords.add("FLOPPY",Token.KEYWORD1);
-		tsqlKeywords.add("FOR",Token.KEYWORD1);
-		tsqlKeywords.add("FOREIGN",Token.KEYWORD1);
-		tsqlKeywords.add("FREETEXT",Token.KEYWORD1);
-		tsqlKeywords.add("FREETEXTTABLE",Token.KEYWORD1);
-		tsqlKeywords.add("FROM",Token.KEYWORD1);
-		tsqlKeywords.add("FULL",Token.KEYWORD1);
-		tsqlKeywords.add("GOTO",Token.KEYWORD1);
-		tsqlKeywords.add("GRANT",Token.KEYWORD1);
-		tsqlKeywords.add("GROUP",Token.KEYWORD1);
-		tsqlKeywords.add("HAVING",Token.KEYWORD1);
-		tsqlKeywords.add("HOLDLOCK",Token.KEYWORD1);
-		tsqlKeywords.add("IDENTITY_INSERT",Token.KEYWORD1);
-		tsqlKeywords.add("IDENTITYCOL",Token.KEYWORD1);
-		tsqlKeywords.add("ID",Token.KEYWORD1);
-		tsqlKeywords.add("IF",Token.KEYWORD1);
-		tsqlKeywords.add("INDEX",Token.KEYWORD1);
-		tsqlKeywords.add("INNER",Token.KEYWORD1);
-		tsqlKeywords.add("INSERT",Token.KEYWORD1);
-		tsqlKeywords.add("INTO",Token.KEYWORD1);
-		tsqlKeywords.add("IS",Token.KEYWORD1);
-		tsqlKeywords.add("ISOLATION",Token.KEYWORD1);
-		tsqlKeywords.add("KEY",Token.KEYWORD1);
-		tsqlKeywords.add("KILL",Token.KEYWORD1);
-		tsqlKeywords.add("LEVEL",Token.KEYWORD1);
-		tsqlKeywords.add("LINENO",Token.KEYWORD1);
-		tsqlKeywords.add("LOAD",Token.KEYWORD1);
-		tsqlKeywords.add("MAX",Token.KEYWORD1);
-		tsqlKeywords.add("MIN",Token.KEYWORD1);
-		tsqlKeywords.add("MIRROREXIT",Token.KEYWORD1);
-		tsqlKeywords.add("NATIONAL",Token.KEYWORD1);
-		tsqlKeywords.add("NOCHECK",Token.KEYWORD1);
-		tsqlKeywords.add("NONCLUSTERED",Token.KEYWORD1);
-		tsqlKeywords.add("OF",Token.KEYWORD1);
-		tsqlKeywords.add("OFF",Token.KEYWORD1);
-		tsqlKeywords.add("OFFSETS",Token.KEYWORD1);
-		tsqlKeywords.add("ON",Token.KEYWORD1);
-		tsqlKeywords.add("ONCE",Token.KEYWORD1);
-		tsqlKeywords.add("ONLY",Token.KEYWORD1);
-		tsqlKeywords.add("OPEN",Token.KEYWORD1);
-		tsqlKeywords.add("OPENDATASOURCE",Token.KEYWORD1);
-		tsqlKeywords.add("OPENQUERY",Token.KEYWORD1);
-		tsqlKeywords.add("OPENROWSET",Token.KEYWORD1);
-		tsqlKeywords.add("OPTION",Token.KEYWORD1);
-		tsqlKeywords.add("ORDER",Token.KEYWORD1);
-		tsqlKeywords.add("OVER",Token.KEYWORD1);
-		tsqlKeywords.add("PERCENT",Token.KEYWORD1);
-		tsqlKeywords.add("PERM",Token.KEYWORD1);
-		tsqlKeywords.add("PERMANENT",Token.KEYWORD1);
-		tsqlKeywords.add("PIPE",Token.KEYWORD1);
-		tsqlKeywords.add("PLAN",Token.KEYWORD1);
-		tsqlKeywords.add("PRECISION",Token.KEYWORD1);
-		tsqlKeywords.add("PREPARE",Token.KEYWORD1);
-		tsqlKeywords.add("PRIMARY",Token.KEYWORD1);
-		tsqlKeywords.add("PRINT",Token.KEYWORD1);
-		tsqlKeywords.add("PRIVILEGES",Token.KEYWORD1);
-		tsqlKeywords.add("PROC",Token.KEYWORD1);
-		tsqlKeywords.add("PROCEDURE",Token.KEYWORD1);
-		tsqlKeywords.add("PROCESSEXIT",Token.KEYWORD1);
-		tsqlKeywords.add("PUBLIC",Token.KEYWORD1);
-		tsqlKeywords.add("QUOTED_IDENTIFIER",Token.KEYWORD1);
-		tsqlKeywords.add("RAISERROR",Token.KEYWORD1);
-		tsqlKeywords.add("READ",Token.KEYWORD1);
-		tsqlKeywords.add("READTEXT",Token.KEYWORD1);
-		tsqlKeywords.add("RECONFIGURE",Token.KEYWORD1);
-		tsqlKeywords.add("REFERENCES",Token.KEYWORD1);
-		tsqlKeywords.add("REPEATABLE",Token.KEYWORD1);
-		tsqlKeywords.add("REPLICATION",Token.KEYWORD1);
-		tsqlKeywords.add("RESTORE",Token.KEYWORD1);
-		tsqlKeywords.add("RESTRICT",Token.KEYWORD1);
-		tsqlKeywords.add("RETURN",Token.KEYWORD1);
-		tsqlKeywords.add("REVOKE",Token.KEYWORD1);
-		tsqlKeywords.add("ROLLBACK",Token.KEYWORD1);
-		tsqlKeywords.add("ROWGUIDCOL",Token.KEYWORD1);
-		tsqlKeywords.add("RULE",Token.KEYWORD1);
-		tsqlKeywords.add("SAVE",Token.KEYWORD1);
-		tsqlKeywords.add("SCHEMA",Token.KEYWORD1);
-		tsqlKeywords.add("SELECT",Token.KEYWORD1);
-		tsqlKeywords.add("SERIALIZABLE",Token.KEYWORD1);
-		tsqlKeywords.add("SET",Token.KEYWORD1);
-		tsqlKeywords.add("SETUSER",Token.KEYWORD1);
-		tsqlKeywords.add("SHUTDOWN",Token.KEYWORD1);
-		tsqlKeywords.add("STATISTICS",Token.KEYWORD1);
-		tsqlKeywords.add("TABLE",Token.KEYWORD1);
-		tsqlKeywords.add("TAPE",Token.KEYWORD1);
-		tsqlKeywords.add("TEMP",Token.KEYWORD1);
-		tsqlKeywords.add("TEMPORARY",Token.KEYWORD1);
-		tsqlKeywords.add("TEXTIMAGE_ON",Token.KEYWORD1);
-		tsqlKeywords.add("THEN",Token.KEYWORD1);
-		tsqlKeywords.add("TO",Token.KEYWORD1);
-		tsqlKeywords.add("TOP",Token.KEYWORD1);
-		tsqlKeywords.add("TRAN",Token.KEYWORD1);
-		tsqlKeywords.add("TRANSACTION",Token.KEYWORD1);
-		tsqlKeywords.add("TRIGGER",Token.KEYWORD1);
-		tsqlKeywords.add("TRUNCATE",Token.KEYWORD1);
-		tsqlKeywords.add("TSEQUAL",Token.KEYWORD1);
-		tsqlKeywords.add("UNCOMMITTED",Token.KEYWORD1);
-		tsqlKeywords.add("UNION",Token.KEYWORD1);
-		tsqlKeywords.add("UNIQUE",Token.KEYWORD1);
-		tsqlKeywords.add("UPDATE",Token.KEYWORD1);
-		tsqlKeywords.add("UPDATETEXT",Token.KEYWORD1);
-		tsqlKeywords.add("USE",Token.KEYWORD1);
-		tsqlKeywords.add("VALUES",Token.KEYWORD1);
-		tsqlKeywords.add("VARYING",Token.KEYWORD1);
-		tsqlKeywords.add("VIEW",Token.KEYWORD1);
-		tsqlKeywords.add("WAITFOR",Token.KEYWORD1);
-		tsqlKeywords.add("WHEN",Token.KEYWORD1);
-		tsqlKeywords.add("WHERE",Token.KEYWORD1);
-		tsqlKeywords.add("WHILE",Token.KEYWORD1);
-		tsqlKeywords.add("WITH",Token.KEYWORD1);
-		tsqlKeywords.add("WORK",Token.KEYWORD1);
-		tsqlKeywords.add("WRITETEXT",Token.KEYWORD1);
-	}
-
-	private static void addDataTypes()
-	{
-		tsqlKeywords.add("binary",Token.KEYWORD1);
-		tsqlKeywords.add("bit",Token.KEYWORD1);
-		tsqlKeywords.add("char",Token.KEYWORD1);
-		tsqlKeywords.add("character",Token.KEYWORD1);
-		tsqlKeywords.add("datetime",Token.KEYWORD1);
-		tsqlKeywords.add("decimal",Token.KEYWORD1);
-		tsqlKeywords.add("float",Token.KEYWORD1);
-		tsqlKeywords.add("image",Token.KEYWORD1);
-		tsqlKeywords.add("int",Token.KEYWORD1);
-		tsqlKeywords.add("integer",Token.KEYWORD1);
-		tsqlKeywords.add("money",Token.KEYWORD1);
-		tsqlKeywords.add("name",Token.KEYWORD1);
-		tsqlKeywords.add("numeric",Token.KEYWORD1);
-		tsqlKeywords.add("nchar",Token.KEYWORD1);
-		tsqlKeywords.add("nvarchar",Token.KEYWORD1);
-		tsqlKeywords.add("ntext",Token.KEYWORD1);
-		tsqlKeywords.add("real",Token.KEYWORD1);
-		tsqlKeywords.add("smalldatetime",Token.KEYWORD1);
-		tsqlKeywords.add("smallint",Token.KEYWORD1);
-		tsqlKeywords.add("smallmoney",Token.KEYWORD1);
-		tsqlKeywords.add("text",Token.KEYWORD1);
-		tsqlKeywords.add("timestamp",Token.KEYWORD1);
-		tsqlKeywords.add("tinyint",Token.KEYWORD1);
-		tsqlKeywords.add("uniqueidentifier",Token.KEYWORD1);
-		tsqlKeywords.add("varbinary",Token.KEYWORD1);
-		tsqlKeywords.add("varchar",Token.KEYWORD1);
-	}
-
-	private static void addSystemFunctions()
-	{
-		tsqlKeywords.add("@@CONNECTIONS",Token.KEYWORD2);
-		tsqlKeywords.add("@@CPU_BUSY",Token.KEYWORD2);
-		tsqlKeywords.add("@@CURSOR_ROWS",Token.KEYWORD2);
-		tsqlKeywords.add("@@DATEFIRST",Token.KEYWORD2);
-		tsqlKeywords.add("@@DBTS",Token.KEYWORD2);
-		tsqlKeywords.add("@@ERROR",Token.KEYWORD2);
-		tsqlKeywords.add("@@FETCH_STATUS",Token.KEYWORD2);
-		tsqlKeywords.add("@@IDENTITY",Token.KEYWORD2);
-		tsqlKeywords.add("@@IDLE",Token.KEYWORD2);
-		tsqlKeywords.add("@@IO_BUSY",Token.KEYWORD2);
-		tsqlKeywords.add("@@LANGID",Token.KEYWORD2);
-		tsqlKeywords.add("@@LANGUAGE",Token.KEYWORD2);
-		tsqlKeywords.add("@@LOCK_TIMEOUT",Token.KEYWORD2);
-		tsqlKeywords.add("@@MAX_CONNECTIONS",Token.KEYWORD2);
-		tsqlKeywords.add("@@MAX_PRECISION",Token.KEYWORD2);
-		tsqlKeywords.add("@@NESTLEVEL",Token.KEYWORD2);
-		tsqlKeywords.add("@@OPTIONS",Token.KEYWORD2);
-		tsqlKeywords.add("@@PACK_RECEIVED",Token.KEYWORD2);
-		tsqlKeywords.add("@@PACK_SENT",Token.KEYWORD2);
-		tsqlKeywords.add("@@PACKET_ERRORS",Token.KEYWORD2);
-		tsqlKeywords.add("@@PROCID",Token.KEYWORD2);
-		tsqlKeywords.add("@@REMSERVER",Token.KEYWORD2);
-		tsqlKeywords.add("@@ROWCOUNT",Token.KEYWORD2);
-		tsqlKeywords.add("@@SERVERNAME",Token.KEYWORD2);
-		tsqlKeywords.add("@@SERVICENAME",Token.KEYWORD2);
-		tsqlKeywords.add("@@SPID",Token.KEYWORD2);
-		tsqlKeywords.add("@@TEXTSIZE",Token.KEYWORD2);
-		tsqlKeywords.add("@@TIMETICKS",Token.KEYWORD2);
-		tsqlKeywords.add("@@TOTAL_ERRORS",Token.KEYWORD2);
-		tsqlKeywords.add("@@TOTAL_READ",Token.KEYWORD2);
-		tsqlKeywords.add("@@TOTAL_WRITE",Token.KEYWORD2);
-		tsqlKeywords.add("@@TRANCOUNT",Token.KEYWORD2);
-		tsqlKeywords.add("@@VERSION",Token.KEYWORD2);
-		tsqlKeywords.add("ABS",Token.KEYWORD2);
-		tsqlKeywords.add("ACOS",Token.KEYWORD2);
-		tsqlKeywords.add("APP_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("ASCII",Token.KEYWORD2);
-		tsqlKeywords.add("ASIN",Token.KEYWORD2);
-		tsqlKeywords.add("ATAN",Token.KEYWORD2);
-		tsqlKeywords.add("ATN2",Token.KEYWORD2);
-		tsqlKeywords.add("CASE",Token.KEYWORD2);
-		tsqlKeywords.add("CAST",Token.KEYWORD2);
-		tsqlKeywords.add("CEILING",Token.KEYWORD2);
-//				tsqlKeywords.add("CHAR",Token.KEYWORD2);
-		tsqlKeywords.add("CHARINDEX",Token.KEYWORD2);
-		tsqlKeywords.add("COALESCE",Token.KEYWORD2);
-		tsqlKeywords.add("COL_LENGTH",Token.KEYWORD2);
-		tsqlKeywords.add("COL_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("COLUMNPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("CONVERT",Token.KEYWORD2);
-		tsqlKeywords.add("COS",Token.KEYWORD2);
-		tsqlKeywords.add("COT",Token.KEYWORD2);
-		tsqlKeywords.add("CURRENT_TIME",Token.KEYWORD2);
-		tsqlKeywords.add("CURRENT_DATE",Token.KEYWORD2);
-		tsqlKeywords.add("CURRENT_TIMESTAMP",Token.KEYWORD2);
-		tsqlKeywords.add("CURRENT_USER",Token.KEYWORD2);
-		tsqlKeywords.add("CURSOR_STATUS",Token.KEYWORD2);
-		tsqlKeywords.add("DATABASEPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("DATALENGTH",Token.KEYWORD2);
-		tsqlKeywords.add("DATEADD",Token.KEYWORD2);
-		tsqlKeywords.add("DATEDIFF",Token.KEYWORD2);
-		tsqlKeywords.add("DATENAME",Token.KEYWORD2);
-		tsqlKeywords.add("DATEPART",Token.KEYWORD2);
-		tsqlKeywords.add("DAY",Token.KEYWORD2);
-		tsqlKeywords.add("DB_ID",Token.KEYWORD2);
-		tsqlKeywords.add("DB_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("DEGREES",Token.KEYWORD2);
-		tsqlKeywords.add("DIFFERENCE",Token.KEYWORD2);
-		tsqlKeywords.add("EXP",Token.KEYWORD2);
-		tsqlKeywords.add("FILE_ID",Token.KEYWORD2);
-		tsqlKeywords.add("FILE_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("FILEGROUP_ID",Token.KEYWORD2);
-		tsqlKeywords.add("FILEGROUP_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("FILEGROUPPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("FILEPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("FLOOR",Token.KEYWORD2);
-		tsqlKeywords.add("FORMATMESSAGE",Token.KEYWORD2);
-		tsqlKeywords.add("FULLTEXTCATALOGPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("FULLTEXTSERVICEPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("GETANSINULL",Token.KEYWORD2);
-		tsqlKeywords.add("GETDATE",Token.KEYWORD2);
-		tsqlKeywords.add("HOST_ID",Token.KEYWORD2);
-		tsqlKeywords.add("HOST_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("IDENT_INCR",Token.KEYWORD2);
-		tsqlKeywords.add("IDENT_SEED",Token.KEYWORD2);
-//				tsqlKeywords.add("IDENTITY",Token.KEYWORD2);
-		tsqlKeywords.add("IDENTITY_INSERT",Token.KEYWORD2);
-		tsqlKeywords.add("INDEX_COL",Token.KEYWORD2);
-		tsqlKeywords.add("INDEXPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("IS_MEMBER",Token.KEYWORD2);
-		tsqlKeywords.add("IS_SRVROLEMEMBER",Token.KEYWORD2);
-		tsqlKeywords.add("ISDATE",Token.KEYWORD2);
-		tsqlKeywords.add("ISNULL",Token.KEYWORD2);
-		tsqlKeywords.add("ISNUMERIC",Token.KEYWORD2);
-		tsqlKeywords.add("LEFT",Token.KEYWORD2);
-		tsqlKeywords.add("LEN",Token.KEYWORD2);
-		tsqlKeywords.add("LOG",Token.KEYWORD2);
-		tsqlKeywords.add("LOG10",Token.KEYWORD2);
-		tsqlKeywords.add("LOWER",Token.KEYWORD2);
-		tsqlKeywords.add("LTRIM",Token.KEYWORD2);
-		tsqlKeywords.add("MONTH",Token.KEYWORD2);
-//				tsqlKeywords.add("NCHAR",Token.KEYWORD2);
-		tsqlKeywords.add("NEWID",Token.KEYWORD2);
-		tsqlKeywords.add("NULLIF",Token.KEYWORD2);
-		tsqlKeywords.add("OBJECT_ID",Token.KEYWORD2);
-		tsqlKeywords.add("OBJECT_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("OBJECTPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("PARSENAME",Token.KEYWORD2);
-		tsqlKeywords.add("PATINDEX",Token.KEYWORD2);
-		tsqlKeywords.add("PERMISSIONS",Token.KEYWORD2);
-		tsqlKeywords.add("PI",Token.KEYWORD2);
-		tsqlKeywords.add("POWER",Token.KEYWORD2);
-		tsqlKeywords.add("QUOTENAME",Token.KEYWORD2);
-		tsqlKeywords.add("RADIANS",Token.KEYWORD2);
-		tsqlKeywords.add("RAND",Token.KEYWORD2);
-		tsqlKeywords.add("REPLACE",Token.KEYWORD2);
-		tsqlKeywords.add("REPLICATE",Token.KEYWORD2);
-		tsqlKeywords.add("REVERSE",Token.KEYWORD2);
-		tsqlKeywords.add("RIGHT",Token.KEYWORD2);
-		tsqlKeywords.add("ROUND",Token.KEYWORD2);
-		tsqlKeywords.add("RTRIM",Token.KEYWORD2);
-		tsqlKeywords.add("SESSION_USER",Token.KEYWORD2);
-		tsqlKeywords.add("SIGN",Token.KEYWORD2);
-		tsqlKeywords.add("SIN",Token.KEYWORD2);
-		tsqlKeywords.add("SOUNDEX",Token.KEYWORD2);
-		tsqlKeywords.add("SPACE",Token.KEYWORD2);
-		tsqlKeywords.add("SQRT",Token.KEYWORD2);
-		tsqlKeywords.add("SQUARE",Token.KEYWORD2);
-		tsqlKeywords.add("STATS_DATE",Token.KEYWORD2);
-		tsqlKeywords.add("STR",Token.KEYWORD2);
-		tsqlKeywords.add("STUFF",Token.KEYWORD2);
-		tsqlKeywords.add("SUBSTRING",Token.KEYWORD2);
-		tsqlKeywords.add("SUSER_ID",Token.KEYWORD2);
-		tsqlKeywords.add("SUSER_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("SUSER_SID",Token.KEYWORD2);
-		tsqlKeywords.add("SUSER_SNAME",Token.KEYWORD2);
-		tsqlKeywords.add("SYSTEM_USER",Token.KEYWORD2);
-		tsqlKeywords.add("TAN",Token.KEYWORD2);
-		tsqlKeywords.add("TEXTPTR",Token.KEYWORD2);
-		tsqlKeywords.add("TEXTVALID",Token.KEYWORD2);
-		tsqlKeywords.add("TYPEPROPERTY",Token.KEYWORD2);
-		tsqlKeywords.add("UNICODE",Token.KEYWORD2);
-		tsqlKeywords.add("UPPER",Token.KEYWORD2);
-		tsqlKeywords.add("USER_ID",Token.KEYWORD2);
-		tsqlKeywords.add("USER_NAME",Token.KEYWORD2);
-		tsqlKeywords.add("USER",Token.KEYWORD2);
-		tsqlKeywords.add("YEAR",Token.KEYWORD2);
-	}
-
-	private static void addOperators()
-	{
-		tsqlKeywords.add("ALL",Token.KEYWORD1);
-		tsqlKeywords.add("AND",Token.KEYWORD1);
-		tsqlKeywords.add("ANY",Token.KEYWORD1);
-		tsqlKeywords.add("BETWEEN",Token.KEYWORD1);
-		tsqlKeywords.add("CROSS",Token.KEYWORD1);
-		tsqlKeywords.add("EXISTS",Token.KEYWORD1);
-		tsqlKeywords.add("IN",Token.KEYWORD1);
-		tsqlKeywords.add("INTERSECT",Token.KEYWORD1);
-		tsqlKeywords.add("JOIN",Token.KEYWORD1);
-		tsqlKeywords.add("LIKE",Token.KEYWORD1);
-		tsqlKeywords.add("NOT",Token.KEYWORD1);
-		tsqlKeywords.add("NULL",Token.KEYWORD1);
-		tsqlKeywords.add("OR",Token.KEYWORD1);
-		tsqlKeywords.add("OUTER",Token.KEYWORD1);
-		tsqlKeywords.add("SOME",Token.KEYWORD1);
-	}
-
-	private static void addSystemStoredProcedures()
-	{
-		tsqlKeywords.add("sp_add_agent_parameter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_agent_profile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_alert",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_category",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_data_file_recover_suspect_db",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_job",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_jobschedule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_jobserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_jobstep",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_log_file_recover_suspect_db",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_notification",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_operator",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_targetservergroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_add_targetsvrgrp_member",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addalias",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addapprole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addarticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_adddistpublisher",Token.KEYWORD3);
-		tsqlKeywords.add("sp_adddistributiondb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_adddistributor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addextendedproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addgroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addlinkedserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addlinkedsrvlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addlinkedsrvlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmergearticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmergefilter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmergepublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmergepullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmergepullsubscription_agent",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmergesubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addmessage",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addpublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addpublication_snapshot",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addpublisher70",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addpullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addpullsubscription_agent",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addremotelogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addrole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addrolemember",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addsrvrolemember",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addsubscriber",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addsubscriber_schedule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addsynctriggers",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addtabletocontents",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addtask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addtype",Token.KEYWORD3);
-		tsqlKeywords.add("sp_addumpdevice",Token.KEYWORD3);
-		tsqlKeywords.add("sp_adduser",Token.KEYWORD3);
-		tsqlKeywords.add("sp_altermessage",Token.KEYWORD3);
-		tsqlKeywords.add("sp_apply_job_to_targets",Token.KEYWORD3);
-		tsqlKeywords.add("sp_approlepassword",Token.KEYWORD3);
-		tsqlKeywords.add("sp_article_validation",Token.KEYWORD3);
-		tsqlKeywords.add("sp_articlecolumn",Token.KEYWORD3);
-		tsqlKeywords.add("sp_articlefilter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_articlesynctranprocs",Token.KEYWORD3);
-		tsqlKeywords.add("sp_articleview",Token.KEYWORD3);
-		tsqlKeywords.add("sp_attach_db",Token.KEYWORD3);
-		tsqlKeywords.add("sp_attach_single_file_db",Token.KEYWORD3);
-		tsqlKeywords.add("sp_autostats",Token.KEYWORD3);
-		tsqlKeywords.add("sp_bindefault",Token.KEYWORD3);
-		tsqlKeywords.add("sp_bindrule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_bindsession",Token.KEYWORD3);
-		tsqlKeywords.add("sp_browsereplcmds",Token.KEYWORD3);
-		tsqlKeywords.add("sp_catalogs",Token.KEYWORD3);
-		tsqlKeywords.add("sp_certify_removable",Token.KEYWORD3);
-		tsqlKeywords.add("sp_change_agent_parameter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_change_agent_profile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_change_subscription_properties",Token.KEYWORD3);
-		tsqlKeywords.add("sp_change_users_login",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changearticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changedbowner",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changedistpublisher",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changedistributiondb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changedistributor_password",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changedistributor_property",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changegroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changemergearticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changemergefilter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changemergepublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changemergepullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changemergesubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changeobjectowner",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changepublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changesubscriber",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changesubscriber_schedule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_changesubstatus",Token.KEYWORD3);
-		tsqlKeywords.add("sp_check_for_sync_trigger",Token.KEYWORD3);
-		tsqlKeywords.add("sp_column_privileges",Token.KEYWORD3);
-		tsqlKeywords.add("sp_column_privileges_ex",Token.KEYWORD3);
-		tsqlKeywords.add("sp_columns",Token.KEYWORD3);
-		tsqlKeywords.add("sp_columns_ex",Token.KEYWORD3);
-		tsqlKeywords.add("sp_configure",Token.KEYWORD3);
-		tsqlKeywords.add("sp_create_removable",Token.KEYWORD3);
-		tsqlKeywords.add("sp_createorphan",Token.KEYWORD3);
-		tsqlKeywords.add("sp_createstats",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursor_list",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursorclose",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursorexecute",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursorfetch",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursoropen",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursoroption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursorprepare",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cursorunprepare",Token.KEYWORD3);
-		tsqlKeywords.add("sp_cycle_errorlog",Token.KEYWORD3);
-		tsqlKeywords.add("sp_databases",Token.KEYWORD3);
-		tsqlKeywords.add("sp_datatype_info",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dbcmptlevel",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dbfixedrolepermission",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dboption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_defaultdb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_defaultlanguage",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_alert",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_backuphistory",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_category",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_job",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_jobschedule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_jobserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_jobstep",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_notification",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_operator",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_targetserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_targetservergroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_delete_targetsvrgrp_member",Token.KEYWORD3);
-		tsqlKeywords.add("sp_deletemergeconflictrow",Token.KEYWORD3);
-		tsqlKeywords.add("sp_denylogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_depends",Token.KEYWORD3);
-		tsqlKeywords.add("sp_describe_cursor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_describe_cursor_columns",Token.KEYWORD3);
-		tsqlKeywords.add("sp_describe_cursor_tables",Token.KEYWORD3);
-		tsqlKeywords.add("sp_detach_db",Token.KEYWORD3);
-		tsqlKeywords.add("sp_drop_agent_parameter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_drop_agent_profile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropalias",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropapprole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droparticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropdevice",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropdistpublisher",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropdistributiondb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropdistributor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropextendedproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropgroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droplinkedsrvlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droplinkedsrvlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droplogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropmergearticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropmergefilter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropmergepublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropmergepullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropmergesubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropmessage",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droporphans",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droppublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droppullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropremotelogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droprole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droprolemember",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropsrvrolemember",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropsubscriber",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droptask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_droptype",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropuser",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dropwebtask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dsninfo",Token.KEYWORD3);
-		tsqlKeywords.add("sp_dumpparamcmd",Token.KEYWORD3);
-		tsqlKeywords.add("sp_enumcodepages",Token.KEYWORD3);
-		tsqlKeywords.add("sp_enumcustomresolvers",Token.KEYWORD3);
-		tsqlKeywords.add("sp_enumdsn",Token.KEYWORD3);
-		tsqlKeywords.add("sp_enumfullsubscribers",Token.KEYWORD3);
-		tsqlKeywords.add("sp_execute",Token.KEYWORD3);
-		tsqlKeywords.add("sp_executesql",Token.KEYWORD3);
-		tsqlKeywords.add("sp_expired_subscription_cleanup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_fkeys",Token.KEYWORD3);
-		tsqlKeywords.add("sp_foreignkeys",Token.KEYWORD3);
-		tsqlKeywords.add("sp_fulltext_catalog",Token.KEYWORD3);
-		tsqlKeywords.add("sp_fulltext_column",Token.KEYWORD3);
-		tsqlKeywords.add("sp_fulltext_database",Token.KEYWORD3);
-		tsqlKeywords.add("sp_fulltext_service",Token.KEYWORD3);
-		tsqlKeywords.add("sp_fulltext_table",Token.KEYWORD3);
-		tsqlKeywords.add("sp_generatefilters",Token.KEYWORD3);
-		tsqlKeywords.add("sp_get_distributor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_getbindtoken",Token.KEYWORD3);
-		tsqlKeywords.add("sp_getmergedeletetype",Token.KEYWORD3);
-		tsqlKeywords.add("sp_grant_publication_access",Token.KEYWORD3);
-		tsqlKeywords.add("sp_grantdbaccess",Token.KEYWORD3);
-		tsqlKeywords.add("sp_grantlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_agent_default",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_agent_parameter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_agent_profile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_alert",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_category",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_downloadlist",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_fulltext_catalogs",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_fulltext_catalogs_cursor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_fulltext_columns",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_fulltext_columns_cursor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_fulltext_tables",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_fulltext_tables_cursor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_job",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_jobhistory",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_jobschedule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_jobserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_jobstep",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_notification",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_operator",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_publication_access",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_targetserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_help_targetservergroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helparticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helparticlecolumns",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpconstraint",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpdb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpdbfixedrole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpdevice",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpdistpublisher",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpdistributiondb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpdistributor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpextendedproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpfile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpfilegroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpgroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helphistory",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpindex",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helplanguage",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helplinkedsrvlogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helplogins",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergearticle",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergearticleconflicts",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergeconflictrows",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergedeleteconflictrows",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergefilter",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergepublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergepullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpmergesubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpntgroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helppublication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helppullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpremotelogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpreplicationdboption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helprole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helprolemember",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helprotect",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpsort",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpsrvrole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpsrvrolemember",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpsubscriberinfo",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpsubscription_properties",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helptask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helptext",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helptrigger",Token.KEYWORD3);
-		tsqlKeywords.add("sp_helpuser",Token.KEYWORD3);
-		tsqlKeywords.add("sp_indexes",Token.KEYWORD3);
-		tsqlKeywords.add("sp_indexoption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_link_publication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_linkedservers",Token.KEYWORD3);
-		tsqlKeywords.add("sp_lock",Token.KEYWORD3);
-		tsqlKeywords.add("sp_makewebtask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_manage_jobs_by_login",Token.KEYWORD3);
-		tsqlKeywords.add("sp_mergedummyupdate",Token.KEYWORD3);
-		tsqlKeywords.add("sp_mergesubscription_cleanup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_monitor",Token.KEYWORD3);
-		tsqlKeywords.add("sp_msx_defect",Token.KEYWORD3);
-		tsqlKeywords.add("sp_msx_enlist",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OACreate",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OADestroy",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OAGetErrorInfo",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OAGetProperty",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OAMethod",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OASetProperty",Token.KEYWORD3);
-		tsqlKeywords.add("sp_OAStop",Token.KEYWORD3);
-		tsqlKeywords.add("sp_password",Token.KEYWORD3);
-		tsqlKeywords.add("sp_pkeys",Token.KEYWORD3);
-		tsqlKeywords.add("sp_post_msx_operation",Token.KEYWORD3);
-		tsqlKeywords.add("sp_prepare",Token.KEYWORD3);
-		tsqlKeywords.add("sp_primarykeys",Token.KEYWORD3);
-		tsqlKeywords.add("sp_processmail",Token.KEYWORD3);
-		tsqlKeywords.add("sp_procoption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_publication_validation",Token.KEYWORD3);
-		tsqlKeywords.add("sp_purge_jobhistory",Token.KEYWORD3);
-		tsqlKeywords.add("sp_purgehistory",Token.KEYWORD3);
-		tsqlKeywords.add("sp_reassigntask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_recompile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_refreshsubscriptions",Token.KEYWORD3);
-		tsqlKeywords.add("sp_refreshview",Token.KEYWORD3);
-		tsqlKeywords.add("sp_reinitmergepullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_reinitmergesubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_reinitpullsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_reinitsubscription",Token.KEYWORD3);
-		tsqlKeywords.add("sp_remoteoption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_remove_job_from_targets",Token.KEYWORD3);
-		tsqlKeywords.add("sp_removedbreplication",Token.KEYWORD3);
-		tsqlKeywords.add("sp_rename",Token.KEYWORD3);
-		tsqlKeywords.add("sp_renamedb",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replcmds",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replcounters",Token.KEYWORD3);
-		tsqlKeywords.add("sp_repldone",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replflush",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replication_agent_checkup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replicationdboption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replsetoriginator",Token.KEYWORD3);
-		tsqlKeywords.add("sp_replshowcmds",Token.KEYWORD3);
-		tsqlKeywords.add("sp_repltrans",Token.KEYWORD3);
-		tsqlKeywords.add("sp_reset_connection",Token.KEYWORD3);
-		tsqlKeywords.add("sp_resync_targetserver",Token.KEYWORD3);
-		tsqlKeywords.add("sp_revoke_publication_access",Token.KEYWORD3);
-		tsqlKeywords.add("sp_revokedbaccess",Token.KEYWORD3);
-		tsqlKeywords.add("sp_revokelogin",Token.KEYWORD3);
-		tsqlKeywords.add("sp_runwebtask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_script_synctran_commands",Token.KEYWORD3);
-		tsqlKeywords.add("sp_scriptdelproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_scriptinsproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_scriptmappedupdproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_scriptupdproc",Token.KEYWORD3);
-		tsqlKeywords.add("sp_sdidebug",Token.KEYWORD3);
-		tsqlKeywords.add("sp_server_info",Token.KEYWORD3);
-		tsqlKeywords.add("sp_serveroption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_serveroption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_setapprole",Token.KEYWORD3);
-		tsqlKeywords.add("sp_setnetname",Token.KEYWORD3);
-		tsqlKeywords.add("sp_spaceused",Token.KEYWORD3);
-		tsqlKeywords.add("sp_special_columns",Token.KEYWORD3);
-		tsqlKeywords.add("sp_sproc_columns",Token.KEYWORD3);
-		tsqlKeywords.add("sp_srvrolepermission",Token.KEYWORD3);
-		tsqlKeywords.add("sp_start_job",Token.KEYWORD3);
-		tsqlKeywords.add("sp_statistics",Token.KEYWORD3);
-		tsqlKeywords.add("sp_stop_job",Token.KEYWORD3);
-		tsqlKeywords.add("sp_stored_procedures",Token.KEYWORD3);
-		tsqlKeywords.add("sp_subscription_cleanup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_table_privileges",Token.KEYWORD3);
-		tsqlKeywords.add("sp_table_privileges_ex",Token.KEYWORD3);
-		tsqlKeywords.add("sp_table_validation",Token.KEYWORD3);
-		tsqlKeywords.add("sp_tableoption",Token.KEYWORD3);
-		tsqlKeywords.add("sp_tables",Token.KEYWORD3);
-		tsqlKeywords.add("sp_tables_ex",Token.KEYWORD3);
-		tsqlKeywords.add("sp_unbindefault",Token.KEYWORD3);
-		tsqlKeywords.add("sp_unbindrule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_unprepare",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_agent_profile",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_alert",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_category",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_job",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_jobschedule",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_jobstep",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_notification",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_operator",Token.KEYWORD3);
-		tsqlKeywords.add("sp_update_targetservergroup",Token.KEYWORD3);
-		tsqlKeywords.add("sp_updatestats",Token.KEYWORD3);
-		tsqlKeywords.add("sp_updatetask",Token.KEYWORD3);
-		tsqlKeywords.add("sp_validatelogins",Token.KEYWORD3);
-		tsqlKeywords.add("sp_validname",Token.KEYWORD3);
-		tsqlKeywords.add("sp_who",Token.KEYWORD3);
-		tsqlKeywords.add("xp_cmdshell",Token.KEYWORD3);
-		tsqlKeywords.add("xp_deletemail",Token.KEYWORD3);
-		tsqlKeywords.add("xp_enumgroups",Token.KEYWORD3);
-		tsqlKeywords.add("xp_findnextmsg",Token.KEYWORD3);
-		tsqlKeywords.add("xp_findnextmsg",Token.KEYWORD3);
-		tsqlKeywords.add("xp_grantlogin",Token.KEYWORD3);
-		tsqlKeywords.add("xp_logevent",Token.KEYWORD3);
-		tsqlKeywords.add("xp_loginconfig",Token.KEYWORD3);
-		tsqlKeywords.add("xp_logininfo",Token.KEYWORD3);
-		tsqlKeywords.add("xp_msver",Token.KEYWORD3);
-		tsqlKeywords.add("xp_readmail",Token.KEYWORD3);
-		tsqlKeywords.add("xp_revokelogin",Token.KEYWORD3);
-		tsqlKeywords.add("xp_sendmail",Token.KEYWORD3);
-		tsqlKeywords.add("xp_sprintf",Token.KEYWORD3);
-		tsqlKeywords.add("xp_sqlinventory",Token.KEYWORD3);
-		tsqlKeywords.add("xp_sqlmaint",Token.KEYWORD3);
-		tsqlKeywords.add("xp_sqltrace",Token.KEYWORD3);
-		tsqlKeywords.add("xp_sscanf",Token.KEYWORD3);
-		tsqlKeywords.add("xp_startmail",Token.KEYWORD3);
-		tsqlKeywords.add("xp_stopmail",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_addnewqueue",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_deletequeuedefinition",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_destroyqueue",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_enumqueuedefname",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_enumqueuehandles",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_eventclassrequired",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_flushqueryhistory",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_generate_event",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getappfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getconnectionidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getcpufilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getdbidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getdurationfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_geteventfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_geteventnames",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getevents",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_gethostfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_gethpidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getindidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getntdmfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getntnmfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getobjidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getqueueautostart",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getqueuedestination",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getqueueproperties",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getreadfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getserverfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getseverityfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getspidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getsysobjectsfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_gettextfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getuserfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_getwritefilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_loadqueuedefinition",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_pausequeue",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_restartqueue",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_savequeuedefinition",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setappfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setconnectionidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setcpufilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setdbidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setdurationfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_seteventclassrequired",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_seteventfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_sethostfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_sethpidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setindidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setntdmfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setntnmfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setobjidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setqueryhistory",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setqueueautostart",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setqueuecreateinfo",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setqueuedestination",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setreadfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setserverfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setseverityfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setspidfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setsysobjectsfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_settextfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setuserfilter",Token.KEYWORD3);
-		tsqlKeywords.add("xp_trace_setwritefilter",Token.KEYWORD3);
-	}
-
-	private static void addSystemTables()
-	{
-		tsqlKeywords.add("backupfile",Token.KEYWORD3);
-		tsqlKeywords.add("backupmediafamily",Token.KEYWORD3);
-		tsqlKeywords.add("backupmediaset",Token.KEYWORD3);
-		tsqlKeywords.add("backupset",Token.KEYWORD3);
-		tsqlKeywords.add("MSagent_parameters",Token.KEYWORD3);
-		tsqlKeywords.add("MSagent_profiles",Token.KEYWORD3);
-		tsqlKeywords.add("MSarticles",Token.KEYWORD3);
-		tsqlKeywords.add("MSdistpublishers",Token.KEYWORD3);
-		tsqlKeywords.add("MSdistribution_agents",Token.KEYWORD3);
-		tsqlKeywords.add("MSdistribution_history",Token.KEYWORD3);
-		tsqlKeywords.add("MSdistributiondbs",Token.KEYWORD3);
-		tsqlKeywords.add("MSdistributor",Token.KEYWORD3);
-		tsqlKeywords.add("MSlogreader_agents",Token.KEYWORD3);
-		tsqlKeywords.add("MSlogreader_history",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_agents",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_contents",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_delete_conflicts",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_genhistory",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_history",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_replinfo",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_subscriptions",Token.KEYWORD3);
-		tsqlKeywords.add("MSmerge_tombstone",Token.KEYWORD3);
-		tsqlKeywords.add("MSpublication_access",Token.KEYWORD3);
-		tsqlKeywords.add("Mspublications",Token.KEYWORD3);
-		tsqlKeywords.add("Mspublisher_databases",Token.KEYWORD3);
-		tsqlKeywords.add("MSrepl_commands",Token.KEYWORD3);
-		tsqlKeywords.add("MSrepl_errors",Token.KEYWORD3);
-		tsqlKeywords.add("Msrepl_originators",Token.KEYWORD3);
-		tsqlKeywords.add("MSrepl_transactions",Token.KEYWORD3);
-		tsqlKeywords.add("MSrepl_version",Token.KEYWORD3);
-		tsqlKeywords.add("MSreplication_objects",Token.KEYWORD3);
-		tsqlKeywords.add("MSreplication_subscriptions",Token.KEYWORD3);
-		tsqlKeywords.add("MSsnapshot_agents",Token.KEYWORD3);
-		tsqlKeywords.add("MSsnapshot_history",Token.KEYWORD3);
-		tsqlKeywords.add("MSsubscriber_info",Token.KEYWORD3);
-		tsqlKeywords.add("MSsubscriber_schedule",Token.KEYWORD3);
-		tsqlKeywords.add("MSsubscription_properties",Token.KEYWORD3);
-		tsqlKeywords.add("MSsubscriptions",Token.KEYWORD3);
-		tsqlKeywords.add("restorefile",Token.KEYWORD3);
-		tsqlKeywords.add("restorefilegroup",Token.KEYWORD3);
-		tsqlKeywords.add("restorehistory",Token.KEYWORD3);
-		tsqlKeywords.add("sysalerts",Token.KEYWORD3);
-		tsqlKeywords.add("sysallocations",Token.KEYWORD3);
-		tsqlKeywords.add("sysaltfiles",Token.KEYWORD3);
-		tsqlKeywords.add("sysarticles",Token.KEYWORD3);
-		tsqlKeywords.add("sysarticleupdates",Token.KEYWORD3);
-		tsqlKeywords.add("syscacheobjects",Token.KEYWORD3);
-		tsqlKeywords.add("syscategories",Token.KEYWORD3);
-		tsqlKeywords.add("syscharsets",Token.KEYWORD3);
-		tsqlKeywords.add("syscolumns",Token.KEYWORD3);
-		tsqlKeywords.add("syscomments",Token.KEYWORD3);
-		tsqlKeywords.add("sysconfigures",Token.KEYWORD3);
-		tsqlKeywords.add("sysconstraints",Token.KEYWORD3);
-		tsqlKeywords.add("syscurconfigs",Token.KEYWORD3);
-		tsqlKeywords.add("sysdatabases",Token.KEYWORD3);
-		tsqlKeywords.add("sysdatabases",Token.KEYWORD3);
-		tsqlKeywords.add("sysdepends",Token.KEYWORD3);
-		tsqlKeywords.add("sysdevices",Token.KEYWORD3);
-		tsqlKeywords.add("sysdownloadlist",Token.KEYWORD3);
-		tsqlKeywords.add("sysfilegroups",Token.KEYWORD3);
-		tsqlKeywords.add("sysfiles",Token.KEYWORD3);
-		tsqlKeywords.add("sysforeignkeys",Token.KEYWORD3);
-		tsqlKeywords.add("sysfulltextcatalogs",Token.KEYWORD3);
-		tsqlKeywords.add("sysindexes",Token.KEYWORD3);
-		tsqlKeywords.add("sysindexkeys",Token.KEYWORD3);
-		tsqlKeywords.add("sysjobhistory",Token.KEYWORD3);
-		tsqlKeywords.add("sysjobs",Token.KEYWORD3);
-		tsqlKeywords.add("sysjobschedules",Token.KEYWORD3);
-		tsqlKeywords.add("sysjobservers",Token.KEYWORD3);
-		tsqlKeywords.add("sysjobsteps",Token.KEYWORD3);
-		tsqlKeywords.add("syslanguages",Token.KEYWORD3);
-		tsqlKeywords.add("syslockinfo",Token.KEYWORD3);
-		tsqlKeywords.add("syslogins",Token.KEYWORD3);
-		tsqlKeywords.add("sysmembers",Token.KEYWORD3);
-		tsqlKeywords.add("sysmergearticles",Token.KEYWORD3);
-		tsqlKeywords.add("sysmergepublications",Token.KEYWORD3);
-		tsqlKeywords.add("sysmergeschemachange",Token.KEYWORD3);
-		tsqlKeywords.add("sysmergesubscriptions",Token.KEYWORD3);
-		tsqlKeywords.add("sysmergesubsetfilters",Token.KEYWORD3);
-		tsqlKeywords.add("sysmessages",Token.KEYWORD3);
-		tsqlKeywords.add("sysnotifications",Token.KEYWORD3);
-		tsqlKeywords.add("sysobjects",Token.KEYWORD3);
-		tsqlKeywords.add("sysobjects",Token.KEYWORD3);
-		tsqlKeywords.add("sysoledbusers",Token.KEYWORD3);
-		tsqlKeywords.add("sysoperators",Token.KEYWORD3);
-		tsqlKeywords.add("sysperfinfo",Token.KEYWORD3);
-		tsqlKeywords.add("syspermissions",Token.KEYWORD3);
-		tsqlKeywords.add("sysprocesses",Token.KEYWORD3);
-		tsqlKeywords.add("sysprotects",Token.KEYWORD3);
-		tsqlKeywords.add("syspublications",Token.KEYWORD3);
-		tsqlKeywords.add("sysreferences",Token.KEYWORD3);
-		tsqlKeywords.add("sysremotelogins",Token.KEYWORD3);
-		tsqlKeywords.add("sysreplicationalerts",Token.KEYWORD3);
-		tsqlKeywords.add("sysservers",Token.KEYWORD3);
-		tsqlKeywords.add("sysservers",Token.KEYWORD3);
-		tsqlKeywords.add("syssubscriptions",Token.KEYWORD3);
-		tsqlKeywords.add("systargetservergroupmembers",Token.KEYWORD3);
-		tsqlKeywords.add("systargetservergroups",Token.KEYWORD3);
-		tsqlKeywords.add("systargetservers",Token.KEYWORD3);
-		tsqlKeywords.add("systaskids",Token.KEYWORD3);
-		tsqlKeywords.add("systypes",Token.KEYWORD3);
-		tsqlKeywords.add("sysusers",Token.KEYWORD3);
-	}
-
-	private static KeywordMap tsqlKeywords;
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TeXTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TeXTokenMarker.java
deleted file mode 100644
index bfb748cabf1a7acfc36124aa5180eb38bf31a477..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TeXTokenMarker.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * TeXTokenMarker.java - TeX/LaTeX/AMS-TeX token marker
- * Copyright (C) 1998 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-
-/**
- * TeX token marker.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class TeXTokenMarker extends TokenMarker
-{
-	// public members
-	public static final byte BDFORMULA = Token.INTERNAL_FIRST;
-	public static final byte EDFORMULA = (byte)(Token.INTERNAL_FIRST + 1);
-
-	public byte markTokensImpl(byte token, Segment line, int lineIndex)
-	{
-		char[] array = line.array;
-		int offset = line.offset;
-		int lastOffset = offset;
-		int length = line.count + offset;
-		boolean backslash = false;
-loop:		for(int i = offset; i < length; i++)
-		{
-			int i1 = (i+1);
-
-			char c = array[i];
-			// if a backslash is followed immediately
-			// by a non-alpha character, the command at
-			// the non-alpha char. If we have a backslash,
-			// some text, and then a non-alpha char,
-			// the command ends before the non-alpha char.
-			if(Character.isLetter(c))
-			{
-				backslash = false;
-			}
-			else
-			{
-				if(backslash)
-				{
-					// \<non alpha>
-					// we skip over this character,
-					// hence the `continue'
-					backslash = false;
-					if(token == Token.KEYWORD2 || token == EDFORMULA)
-						token = Token.KEYWORD2;
-					addToken(i1 - lastOffset,token);
-					lastOffset = i1;
-					if(token == Token.KEYWORD1)
-						token = Token.NULL;
-					continue;
-				}
-				else
-				{
-					//\blah<non alpha>
-					// we leave the character in
-					// the stream, and it's not
-					// part of the command token
-					if(token == BDFORMULA || token == EDFORMULA)
-						token = Token.KEYWORD2;
-					addToken(i - lastOffset,token);
-					if(token == Token.KEYWORD1)
-						token = Token.NULL;
-					lastOffset = i;
-				}
-			}
-			switch(c)
-			{
-			case '%':
-				if(backslash)
-				{
-					backslash = false;
-					break;
-				}
-				addToken(i - lastOffset,token);
-				addToken(length - i,Token.COMMENT1);
-				lastOffset = length;
-				break loop;
-			case '\\':
-				backslash = true;
-				if(token == Token.NULL)
-				{
-					token = Token.KEYWORD1;
-					addToken(i - lastOffset,Token.NULL);
-					lastOffset = i;
-				}
-				break;
-			case '$':
-				backslash = false;
-				if(token == Token.NULL) // singe $
-				{
-					token = Token.KEYWORD2;
-					addToken(i - lastOffset,Token.NULL);
-					lastOffset = i;
-				}
-				else if(token == Token.KEYWORD1) // \...$
-				{
-					token = Token.KEYWORD2;
-					addToken(i - lastOffset,Token.KEYWORD1);
-					lastOffset = i;
-				}
-				else if(token == Token.KEYWORD2) // $$aaa
-				{
-					if(i - lastOffset == 1 && array[i-1] == '$')
-					{
-						token = BDFORMULA;
-						break;
-					}
-					token = Token.NULL;
-					addToken(i1 - lastOffset,Token.KEYWORD2);
-					lastOffset = i1;
-				}
-				else if(token == BDFORMULA) // $$aaa$
-				{
-					token = EDFORMULA;
-				}
-				else if(token == EDFORMULA) // $$aaa$$
-				{
-					token = Token.NULL;
-					addToken(i1 - lastOffset,Token.KEYWORD2);
-					lastOffset = i1;
-				}
-				break;
-			}
-		}
-		if(lastOffset != length)
-			addToken(length - lastOffset,token == BDFORMULA
-				|| token == EDFORMULA ? Token.KEYWORD2 :
-				token);
-		return (token != Token.KEYWORD1 ? token : Token.NULL);
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/Test.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/Test.java
deleted file mode 100644
index 45ad77835b976ae038ed9b6adfdd022b6aa9f4c1..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/Test.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.astron.util.gui;
-
-import java.awt.*;
-import java.awt.event.*;
-//import com.sun.java.swing.*;
-import javax.swing.*;
-
-public class Test extends JFrame
-{
- 	String[] data = {"This text is partially obscured by the JScrollPaneEx", "one blablablabla dddddddddd", "two blabla ajshdflkajsdhf", "free", "four"};
-	JListEx list = new JListEx(data);
-    //ImageIcon image = new ImageIcon("e:\\Projects\\SwingEx\\codeguruwm.gif");
-    ImageIcon image = new ImageIcon("e:\\Projects\\SwingEx\\hiero.jpg");
-    JButton BnTest = new JButton("Test");
-
-	public Test()
-	{
-		try
-		{
-			jbInit();
-		}
-		catch(Exception e)
-		{
-			e.printStackTrace();
-		}
-	}
-
-	public static void main(String[] args)
-	{
-		Test test = new Test();
-        test.pack();
-        test.setVisible(true);
-	}
-
-	private void jbInit() throws Exception
-	{
-    	BnTest.setToolTipText("Test Button");
-    	list.setDataTips(true);
-        list.setBackgroundImage(image);
-        list.setScrollableBackground(false);
-    	getContentPane().setLayout(new BorderLayout());
-        getContentPane().add(list, BorderLayout.CENTER);
-        getContentPane().add(BnTest, BorderLayout.SOUTH);
-        this.setTitle("SwingEx Test");
-		this.addWindowListener(new java.awt.event.WindowAdapter()
-		{
-			public void windowClosing(WindowEvent e)
-			{
-				this_windowClosing(e);
-			}
-		});
-	}
-
-	void this_windowClosing(WindowEvent e)
-	{
-    	setVisible(false);
-        dispose();
-        System.exit(0);
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TestJTreeEx.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TestJTreeEx.java
deleted file mode 100644
index ff347133aac50c6fe84eedba98527033ef65f6bc..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TestJTreeEx.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.astron.util.gui;
-
-import java.awt.*;
-import java.awt.event.*;
-import javax.swing.JFrame;
-
-/**
- * Title:        LOFARSim
- * Description:
- * Copyright:    Copyright (c) 2001
- * Company:      ASTRON
- * @author Robbert Dam
- * @version 1.0
- */
-
-/** Test for JTreeEx. Needs an image: image/tb1.jpg */
-public class TestJTreeEx extends JFrame {
-  public TestJTreeEx() {
-    getContentPane().setLayout(new BorderLayout());
-    addWindowListener(new WindowAdapter() {
-      public void windowClosing(WindowEvent we) {
-        System.exit(0);
-      }
-    });
-    //get the image
-    Image i = Toolkit.getDefaultToolkit().createImage("images/tb1.jpg");
-    //make the tree
-    JTreeEx bkgTree = new JTreeEx();
-    bkgTree.setBackground(i);
-    getContentPane().add(bkgTree, BorderLayout.CENTER);
-    setSize(300,300);
-    setVisible(true);
-  }
-
-  public static void main(String[] args) {
-    new TestJTreeEx();
-  }
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TextAreaDefaults.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TextAreaDefaults.java
deleted file mode 100644
index 0b574c58e20cf1c929866c628a36465e96fdc847..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TextAreaDefaults.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * TextAreaDefaults.java - Encapsulates default values for various settings
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-package org.astron.util.gui;
-
-import javax.swing.JPopupMenu;
-import java.awt.Color;
-
-/**
- * Encapsulates default settings for a text area. This can be passed
- * to the constructor once the necessary fields have been filled out.
- * The advantage of doing this over calling lots of set() methods after
- * creating the text area is that this method is faster.
- */
-public class TextAreaDefaults
-{
-	private static TextAreaDefaults DEFAULTS;
-
-	public InputHandler inputHandler;
-	public SyntaxDocument document;
-	public boolean editable;
-
-	public boolean caretVisible;
-	public boolean caretBlinks;
-	public boolean blockCaret;
-	public int electricScroll;
-
-	public int cols;
-	public int rows;
-	public SyntaxStyle[] styles;
-	public Color caretColor;
-	public Color selectionColor;
-	public Color lineHighlightColor;
-	public boolean lineHighlight;
-	public Color bracketHighlightColor;
-	public boolean bracketHighlight;
-	public Color eolMarkerColor;
-	public boolean eolMarkers;
-	public boolean paintInvalid;
-
-	public JPopupMenu popup;
-
-	/**
-	 * Returns a new TextAreaDefaults object with the default values filled
-	 * in.
-	 */
-	public static TextAreaDefaults getDefaults()
-	{
-		if(DEFAULTS == null)
-		{
-			DEFAULTS = new TextAreaDefaults();
-
-			DEFAULTS.inputHandler = new DefaultInputHandler();
-			DEFAULTS.inputHandler.addDefaultKeyBindings();
-			DEFAULTS.document = new SyntaxDocument();
-			DEFAULTS.editable = true;
-
-			DEFAULTS.caretVisible = true;
-			DEFAULTS.caretBlinks = true;
-			DEFAULTS.electricScroll = 3;
-
-			DEFAULTS.cols = 80;
-			DEFAULTS.rows = 25;
-			DEFAULTS.styles = SyntaxUtilities.getDefaultSyntaxStyles();
-			DEFAULTS.caretColor = Color.red;
-			DEFAULTS.selectionColor = new Color(0xccccff);
-			DEFAULTS.lineHighlightColor = new Color(0xe0e0e0);
-			DEFAULTS.lineHighlight = true;
-			DEFAULTS.bracketHighlightColor = Color.black;
-			DEFAULTS.bracketHighlight = true;
-			DEFAULTS.eolMarkerColor = new Color(0x009999);
-			DEFAULTS.eolMarkers = true;
-			DEFAULTS.paintInvalid = true;
-		}
-
-		return DEFAULTS;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TextAreaPainter.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TextAreaPainter.java
deleted file mode 100644
index 3fa520e4502e7c53a48745e69408e17eb10cb23d..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TextAreaPainter.java
+++ /dev/null
@@ -1,692 +0,0 @@
-/*
- * TextAreaPainter.java - Paints the text area
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.ToolTipManager;
-import javax.swing.text.*;
-import javax.swing.JComponent;
-import java.awt.event.MouseEvent;
-import java.awt.*;
-
-/**
- * The text area repaint manager. It performs double buffering and paints
- * lines of text.
- * @author Slava Pestov
- * @version $Id$
- */
-public class TextAreaPainter extends JComponent implements TabExpander
-{
-	/**
-	 * Creates a new repaint manager. This should be not be called
-	 * directly.
-	 */
-	public TextAreaPainter(JEditTextArea textArea, TextAreaDefaults defaults)
-	{
-		this.textArea = textArea;
-
-		setAutoscrolls(true);
-		setDoubleBuffered(true);
-		setOpaque(true);
-
-		ToolTipManager.sharedInstance().registerComponent(this);
-
-		currentLine = new Segment();
-		currentLineIndex = -1;
-
-		setCursor(Cursor.getPredefinedCursor(Cursor.TEXT_CURSOR));
-
-		setFont(new Font("Monospaced",Font.PLAIN,14));
-		setForeground(Color.black);
-		setBackground(Color.white);
-
-		blockCaret = defaults.blockCaret;
-		styles = defaults.styles;
-		cols = defaults.cols;
-		rows = defaults.rows;
-		caretColor = defaults.caretColor;
-		selectionColor = defaults.selectionColor;
-		lineHighlightColor = defaults.lineHighlightColor;
-		lineHighlight = defaults.lineHighlight;
-		bracketHighlightColor = defaults.bracketHighlightColor;
-		bracketHighlight = defaults.bracketHighlight;
-		paintInvalid = defaults.paintInvalid;
-		eolMarkerColor = defaults.eolMarkerColor;
-		eolMarkers = defaults.eolMarkers;
-	}
-
-	/**
-	 * Returns if this component can be traversed by pressing the
-	 * Tab key. This returns false.
-	 */
-	public final boolean isManagingFocus()
-	{
-		return false;
-	}
-
-	/**
-	 * Returns the syntax styles used to paint colorized text. Entry <i>n</i>
-	 * will be used to paint tokens with id = <i>n</i>.
-	 * @see org.gjt.sp.jedit.syntax.Token
-	 */
-	public final SyntaxStyle[] getStyles()
-	{
-		return styles;
-	}
-
-	/**
-	 * Sets the syntax styles used to paint colorized text. Entry <i>n</i>
-	 * will be used to paint tokens with id = <i>n</i>.
-	 * @param styles The syntax styles
-	 * @see org.gjt.sp.jedit.syntax.Token
-	 */
-	public final void setStyles(SyntaxStyle[] styles)
-	{
-		this.styles = styles;
-		repaint();
-	}
-
-	/**
-	 * Returns the caret color.
-	 */
-	public final Color getCaretColor()
-	{
-		return caretColor;
-	}
-
-	/**
-	 * Sets the caret color.
-	 * @param caretColor The caret color
-	 */
-	public final void setCaretColor(Color caretColor)
-	{
-		this.caretColor = caretColor;
-		invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns the selection color.
-	 */
-	public final Color getSelectionColor()
-	{
-		return selectionColor;
-	}
-
-	/**
-	 * Sets the selection color.
-	 * @param selectionColor The selection color
-	 */
-	public final void setSelectionColor(Color selectionColor)
-	{
-		this.selectionColor = selectionColor;
-		invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns the line highlight color.
-	 */
-	public final Color getLineHighlightColor()
-	{
-		return lineHighlightColor;
-	}
-
-	/**
-	 * Sets the line highlight color.
-	 * @param lineHighlightColor The line highlight color
-	 */
-	public final void setLineHighlightColor(Color lineHighlightColor)
-	{
-		this.lineHighlightColor = lineHighlightColor;
-		invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns true if line highlight is enabled, false otherwise.
-	 */
-	public final boolean isLineHighlightEnabled()
-	{
-		return lineHighlight;
-	}
-
-	/**
-	 * Enables or disables current line highlighting.
-	 * @param lineHighlight True if current line highlight should be enabled,
-	 * false otherwise
-	 */
-	public final void setLineHighlightEnabled(boolean lineHighlight)
-	{
-		this.lineHighlight = lineHighlight;
-		invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns the bracket highlight color.
-	 */
-	public final Color getBracketHighlightColor()
-	{
-		return bracketHighlightColor;
-	}
-
-	/**
-	 * Sets the bracket highlight color.
-	 * @param bracketHighlightColor The bracket highlight color
-	 */
-	public final void setBracketHighlightColor(Color bracketHighlightColor)
-	{
-		this.bracketHighlightColor = bracketHighlightColor;
-		invalidateLine(textArea.getBracketLine());
-	}
-
-	/**
-	 * Returns true if bracket highlighting is enabled, false otherwise.
-	 * When bracket highlighting is enabled, the bracket matching the
-	 * one before the caret (if any) is highlighted.
-	 */
-	public final boolean isBracketHighlightEnabled()
-	{
-		return bracketHighlight;
-	}
-
-	/**
-	 * Enables or disables bracket highlighting.
-	 * When bracket highlighting is enabled, the bracket matching the
-	 * one before the caret (if any) is highlighted.
-	 * @param bracketHighlight True if bracket highlighting should be
-	 * enabled, false otherwise
-	 */
-	public final void setBracketHighlightEnabled(boolean bracketHighlight)
-	{
-		this.bracketHighlight = bracketHighlight;
-		invalidateLine(textArea.getBracketLine());
-	}
-
-	/**
-	 * Returns true if the caret should be drawn as a block, false otherwise.
-	 */
-	public final boolean isBlockCaretEnabled()
-	{
-		return blockCaret;
-	}
-
-	/**
-	 * Sets if the caret should be drawn as a block, false otherwise.
-	 * @param blockCaret True if the caret should be drawn as a block,
-	 * false otherwise.
-	 */
-	public final void setBlockCaretEnabled(boolean blockCaret)
-	{
-		this.blockCaret = blockCaret;
-		invalidateSelectedLines();
-	}
-
-	/**
-	 * Returns the EOL marker color.
-	 */
-	public final Color getEOLMarkerColor()
-	{
-		return eolMarkerColor;
-	}
-
-	/**
-	 * Sets the EOL marker color.
-	 * @param eolMarkerColor The EOL marker color
-	 */
-	public final void setEOLMarkerColor(Color eolMarkerColor)
-	{
-		this.eolMarkerColor = eolMarkerColor;
-		repaint();
-	}
-
-	/**
-	 * Returns true if EOL markers are drawn, false otherwise.
-	 */
-	public final boolean getEOLMarkersPainted()
-	{
-		return eolMarkers;
-	}
-
-	/**
-	 * Sets if EOL markers are to be drawn.
-	 * @param eolMarkers True if EOL markers should be drawn, false otherwise
-	 */
-	public final void setEOLMarkersPainted(boolean eolMarkers)
-	{
-		this.eolMarkers = eolMarkers;
-		repaint();
-	}
-
-	/**
-	 * Returns true if invalid lines are painted as red tildes (~),
-	 * false otherwise.
-	 */
-	public boolean getInvalidLinesPainted()
-	{
-		return paintInvalid;
-	}
-
-	/**
-	 * Sets if invalid lines are to be painted as red tildes.
-	 * @param paintInvalid True if invalid lines should be drawn, false otherwise
-	 */
-	public void setInvalidLinesPainted(boolean paintInvalid)
-	{
-		this.paintInvalid = paintInvalid;
-	}
-
-	/**
-	 * Adds a custom highlight painter.
-	 * @param highlight The highlight
-	 */
-	public void addCustomHighlight(Highlight highlight)
-	{
-		highlight.init(textArea,highlights);
-		highlights = highlight;
-	}
-
-	/**
-	 * Highlight interface.
-	 */
-	public interface Highlight
-	{
-		/**
-		 * Called after the highlight painter has been added.
-		 * @param textArea The text area
-		 * @param next The painter this one should delegate to
-		 */
-		void init(JEditTextArea textArea, Highlight next);
-
-		/**
-		 * This should paint the highlight and delgate to the
-		 * next highlight painter.
-		 * @param gfx The graphics context
-		 * @param line The line number
-		 * @param y The y co-ordinate of the line
-		 */
-		void paintHighlight(Graphics gfx, int line, int y);
-
-		/**
-		 * Returns the tool tip to display at the specified
-		 * location. If this highlighter doesn't know what to
-		 * display, it should delegate to the next highlight
-		 * painter.
-		 * @param evt The mouse event
-		 */
-		String getToolTipText(MouseEvent evt);
-	}
-
-	/**
-	 * Returns the tool tip to display at the specified location.
-	 * @param evt The mouse event
-	 */
-	public String getToolTipText(MouseEvent evt)
-	{
-		if(highlights != null)
-			return highlights.getToolTipText(evt);
-		else
-			return null;
-	}
-
-	/**
-	 * Returns the font metrics used by this component.
-	 */
-	public FontMetrics getFontMetrics()
-	{
-		return fm;
-	}
-
-	/**
-	 * Sets the font for this component. This is overridden to update the
-	 * cached font metrics and to recalculate which lines are visible.
-	 * @param font The font
-	 */
-	public void setFont(Font font)
-	{
-		super.setFont(font);
-		fm = Toolkit.getDefaultToolkit().getFontMetrics(font);
-		textArea.recalculateVisibleLines();
-	}
-
-	/**
-	 * Repaints the text.
-	 * @param g The graphics context
-	 */
-	public void paint(Graphics gfx)
-	{
-		tabSize = fm.charWidth(' ') * ((Integer)textArea
-			.getDocument().getProperty(
-			PlainDocument.tabSizeAttribute)).intValue();
-
-		Rectangle clipRect = gfx.getClipBounds();
-
-		gfx.setColor(getBackground());
-		gfx.fillRect(clipRect.x,clipRect.y,clipRect.width,clipRect.height);
-
-		// We don't use yToLine() here because that method doesn't
-		// return lines past the end of the document
-		int height = fm.getHeight();
-		int firstLine = textArea.getFirstLine();
-		int firstInvalid = firstLine + clipRect.y / height;
-		// Because the clipRect's height is usually an even multiple
-		// of the font height, we subtract 1 from it, otherwise one
-		// too many lines will always be painted.
-		int lastInvalid = firstLine + (clipRect.y + clipRect.height - 1) / height;
-
-		try
-		{
-			TokenMarker tokenMarker = textArea.getDocument()
-				.getTokenMarker();
-			int x = textArea.getHorizontalOffset();
-
-			for(int line = firstInvalid; line <= lastInvalid; line++)
-			{
-				paintLine(gfx,tokenMarker,line,x);
-			}
-
-			if(tokenMarker != null && tokenMarker.isNextLineRequested())
-			{
-				int h = clipRect.y + clipRect.height;
-				repaint(0,h,getWidth(),getHeight() - h);
-			}
-		}
-		catch(Exception e)
-		{
-			System.err.println("Error repainting line"
-				+ " range {" + firstInvalid + ","
-				+ lastInvalid + "}:");
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * Marks a line as needing a repaint.
-	 * @param line The line to invalidate
-	 */
-	public final void invalidateLine(int line)
-	{
-		repaint(0,textArea.lineToY(line) + fm.getMaxDescent() + fm.getLeading(),
-			getWidth(),fm.getHeight());
-	}
-
-	/**
-	 * Marks a range of lines as needing a repaint.
-	 * @param firstLine The first line to invalidate
-	 * @param lastLine The last line to invalidate
-	 */
-	public final void invalidateLineRange(int firstLine, int lastLine)
-	{
-		repaint(0,textArea.lineToY(firstLine) + fm.getMaxDescent() + fm.getLeading(),
-			getWidth(),(lastLine - firstLine + 1) * fm.getHeight());
-	}
-
-	/**
-	 * Repaints the lines containing the selection.
-	 */
-	public final void invalidateSelectedLines()
-	{
-		invalidateLineRange(textArea.getSelectionStartLine(),
-			textArea.getSelectionEndLine());
-	}
-
-	/**
-	 * Implementation of TabExpander interface. Returns next tab stop after
-	 * a specified point.
-	 * @param x The x co-ordinate
-	 * @param tabOffset Ignored
-	 * @return The next tab stop after <i>x</i>
-	 */
-	public float nextTabStop(float x, int tabOffset)
-	{
-		int offset = textArea.getHorizontalOffset();
-		int ntabs = ((int)x - offset) / tabSize;
-		return (ntabs + 1) * tabSize + offset;
-	}
-
-	/**
-	 * Returns the painter's preferred size.
-	 */
-	public Dimension getPreferredSize()
-	{
-		Dimension dim = new Dimension();
-		dim.width = fm.charWidth('w') * cols;
-		dim.height = fm.getHeight() * rows;
-		return dim;
-	}
-
-
-	/**
-	 * Returns the painter's minimum size.
-	 */
-	public Dimension getMinimumSize()
-	{
-		return getPreferredSize();
-	}
-
-	// package-private members
-	int currentLineIndex;
-	Token currentLineTokens;
-	Segment currentLine;
-
-	// protected members
-	protected JEditTextArea textArea;
-
-	protected SyntaxStyle[] styles;
-	protected Color caretColor;
-	protected Color selectionColor;
-	protected Color lineHighlightColor;
-	protected Color bracketHighlightColor;
-	protected Color eolMarkerColor;
-
-	protected boolean blockCaret;
-	protected boolean lineHighlight;
-	protected boolean bracketHighlight;
-	protected boolean paintInvalid;
-	protected boolean eolMarkers;
-	protected int cols;
-	protected int rows;
-
-	protected int tabSize;
-	protected FontMetrics fm;
-
-	protected Highlight highlights;
-
-	protected void paintLine(Graphics gfx, TokenMarker tokenMarker,
-		int line, int x)
-	{
-		Font defaultFont = getFont();
-		Color defaultColor = getForeground();
-
-		currentLineIndex = line;
-		int y = textArea.lineToY(line);
-
-		if(line < 0 || line >= textArea.getLineCount())
-		{
-			if(paintInvalid)
-			{
-				paintHighlight(gfx,line,y);
-				styles[Token.INVALID].setGraphicsFlags(gfx,defaultFont);
-				gfx.drawString("~",0,y + fm.getHeight());
-			}
-		}
-		else if(tokenMarker == null)
-		{
-			paintPlainLine(gfx,line,defaultFont,defaultColor,x,y);
-		}
-		else
-		{
-			paintSyntaxLine(gfx,tokenMarker,line,defaultFont,
-				defaultColor,x,y);
-		}
-	}
-
-	protected void paintPlainLine(Graphics gfx, int line, Font defaultFont,
-		Color defaultColor, int x, int y)
-	{
-		paintHighlight(gfx,line,y);
-		textArea.getLineText(line,currentLine);
-
-		gfx.setFont(defaultFont);
-		gfx.setColor(defaultColor);
-
-		y += fm.getHeight();
-		x = Utilities.drawTabbedText(currentLine,x,y,gfx,this,0);
-
-		if(eolMarkers)
-		{
-			gfx.setColor(eolMarkerColor);
-			gfx.drawString(".",x,y);
-		}
-	}
-
-	protected void paintSyntaxLine(Graphics gfx, TokenMarker tokenMarker,
-		int line, Font defaultFont, Color defaultColor, int x, int y)
-	{
-		textArea.getLineText(currentLineIndex,currentLine);
-		currentLineTokens = tokenMarker.markTokens(currentLine,
-			currentLineIndex);
-
-		paintHighlight(gfx,line,y);
-
-		gfx.setFont(defaultFont);
-		gfx.setColor(defaultColor);
-		y += fm.getHeight();
-		x = SyntaxUtilities.paintSyntaxLine(currentLine,
-			currentLineTokens,styles,this,gfx,x,y);
-
-		if(eolMarkers)
-		{
-			gfx.setColor(eolMarkerColor);
-			gfx.drawString(".",x,y);
-		}
-	}
-
-	protected void paintHighlight(Graphics gfx, int line, int y)
-	{
-		if(line >= textArea.getSelectionStartLine()
-			&& line <= textArea.getSelectionEndLine())
-			paintLineHighlight(gfx,line,y);
-
-		if(highlights != null)
-			highlights.paintHighlight(gfx,line,y);
-
-		if(bracketHighlight && line == textArea.getBracketLine())
-			paintBracketHighlight(gfx,line,y);
-
-		if(line == textArea.getCaretLine())
-			paintCaret(gfx,line,y);
-	}
-
-	protected void paintLineHighlight(Graphics gfx, int line, int y)
-	{
-		int height = fm.getHeight();
-		y += fm.getLeading() + fm.getMaxDescent();
-
-		int selectionStart = textArea.getSelectionStart();
-		int selectionEnd = textArea.getSelectionEnd();
-
-		if(selectionStart == selectionEnd)
-		{
-			if(lineHighlight)
-			{
-				gfx.setColor(lineHighlightColor);
-				gfx.fillRect(0,y,getWidth(),height);
-			}
-		}
-		else
-		{
-			gfx.setColor(selectionColor);
-
-			int selectionStartLine = textArea.getSelectionStartLine();
-			int selectionEndLine = textArea.getSelectionEndLine();
-			int lineStart = textArea.getLineStartOffset(line);
-
-			int x1, x2;
-			if(textArea.isSelectionRectangular())
-			{
-				int lineLen = textArea.getLineLength(line);
-				x1 = textArea._offsetToX(line,Math.min(lineLen,
-					selectionStart - textArea.getLineStartOffset(
-					selectionStartLine)));
-				x2 = textArea._offsetToX(line,Math.min(lineLen,
-					selectionEnd - textArea.getLineStartOffset(
-					selectionEndLine)));
-				if(x1 == x2)
-					x2++;
-			}
-			else if(selectionStartLine == selectionEndLine)
-			{
-				x1 = textArea._offsetToX(line,
-					selectionStart - lineStart);
-				x2 = textArea._offsetToX(line,
-					selectionEnd - lineStart);
-			}
-			else if(line == selectionStartLine)
-			{
-				x1 = textArea._offsetToX(line,
-					selectionStart - lineStart);
-				x2 = getWidth();
-			}
-			else if(line == selectionEndLine)
-			{
-				x1 = 0;
-				x2 = textArea._offsetToX(line,
-					selectionEnd - lineStart);
-			}
-			else
-			{
-				x1 = 0;
-				x2 = getWidth();
-			}
-
-			// "inlined" min/max()
-			gfx.fillRect(x1 > x2 ? x2 : x1,y,x1 > x2 ?
-				(x1 - x2) : (x2 - x1),height);
-		}
-
-	}
-
-	protected void paintBracketHighlight(Graphics gfx, int line, int y)
-	{
-		int position = textArea.getBracketPosition();
-		if(position == -1)
-			return;
-		y += fm.getLeading() + fm.getMaxDescent();
-		int x = textArea._offsetToX(line,position);
-		gfx.setColor(bracketHighlightColor);
-		// Hack!!! Since there is no fast way to get the character
-		// from the bracket matching routine, we use ( since all
-		// brackets probably have the same width anyway
-		gfx.drawRect(x,y,fm.charWidth('(') - 1,
-			fm.getHeight() - 1);
-	}
-
-	protected void paintCaret(Graphics gfx, int line, int y)
-	{
-		if(textArea.isCaretVisible())
-		{
-			int offset = textArea.getCaretPosition()
-				- textArea.getLineStartOffset(line);
-			int caretX = textArea._offsetToX(line,offset);
-			int caretWidth = ((blockCaret ||
-				textArea.isOverwriteEnabled()) ?
-				fm.charWidth('w') : 1);
-			y += fm.getLeading() + fm.getMaxDescent();
-			int height = fm.getHeight();
-
-			gfx.setColor(caretColor);
-
-			if(textArea.isOverwriteEnabled())
-			{
-				gfx.fillRect(caretX,y + height - 1,
-					caretWidth,1);
-			}
-			else
-			{
-				gfx.drawRect(caretX,y,caretWidth - 1,height - 1);
-			}
-		}
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TextUtilities.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TextUtilities.java
deleted file mode 100644
index 177992d081f98d55193331986b4ee2f7adb381dc..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TextUtilities.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * TextUtilities.java - Utility functions used by the text area classes
- * Copyright (C) 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.*;
-
-/**
- * Class with several utility functions used by the text area component.
- * @author Slava Pestov
- * @version $Id$
- */
-public class TextUtilities
-{
-	/**
-	 * Returns the offset of the bracket matching the one at the
-	 * specified offset of the document, or -1 if the bracket is
-	 * unmatched (or if the character is not a bracket).
-	 * @param doc The document
-	 * @param offset The offset
-	 * @exception BadLocationException If an out-of-bounds access
-	 * was attempted on the document text
-	 */
-	public static int findMatchingBracket(Document doc, int offset)
-		throws BadLocationException
-	{
-		if(doc.getLength() == 0)
-			return -1;
-		char c = doc.getText(offset,1).charAt(0);
-		char cprime; // c` - corresponding character
-		boolean direction; // true = back, false = forward
-
-		switch(c)
-		{
-		case '(': cprime = ')'; direction = false; break;
-		case ')': cprime = '('; direction = true; break;
-		case '[': cprime = ']'; direction = false; break;
-		case ']': cprime = '['; direction = true; break;
-		case '{': cprime = '}'; direction = false; break;
-		case '}': cprime = '{'; direction = true; break;
-		default: return -1;
-		}
-
-		int count;
-
-		// How to merge these two cases is left as an exercise
-		// for the reader.
-
-		// Go back or forward
-		if(direction)
-		{
-			// Count is 1 initially because we have already
-			// `found' one closing bracket
-			count = 1;
-
-			// Get text[0,offset-1];
-			String text = doc.getText(0,offset);
-
-			// Scan backwards
-			for(int i = offset - 1; i >= 0; i--)
-			{
-				// If text[i] == c, we have found another
-				// closing bracket, therefore we will need
-				// two opening brackets to complete the
-				// match.
-				char x = text.charAt(i);
-				if(x == c)
-					count++;
-
-				// If text[i] == cprime, we have found a
-				// opening bracket, so we return i if
-				// --count == 0
-				else if(x == cprime)
-				{
-					if(--count == 0)
-						return i;
-				}
-			}
-		}
-		else
-		{
-			// Count is 1 initially because we have already
-			// `found' one opening bracket
-			count = 1;
-
-			// So we don't have to + 1 in every loop
-			offset++;
-
-			// Number of characters to check
-			int len = doc.getLength() - offset;
-
-			// Get text[offset+1,len];
-			String text = doc.getText(offset,len);
-
-			// Scan forwards
-			for(int i = 0; i < len; i++)
-			{
-				// If text[i] == c, we have found another
-				// opening bracket, therefore we will need
-				// two closing brackets to complete the
-				// match.
-				char x = text.charAt(i);
-
-				if(x == c)
-					count++;
-
-				// If text[i] == cprime, we have found an
-				// closing bracket, so we return i if
-				// --count == 0
-				else if(x == cprime)
-				{
-					if(--count == 0)
-						return i + offset;
-				}
-			}
-		}
-
-		// Nothing found
-		return -1;
-	}
-
-	/**
-	 * Locates the start of the word at the specified position.
-	 * @param line The text
-	 * @param pos The position
-	 */
-	public static int findWordStart(String line, int pos, String noWordSep)
-	{
-		char ch = line.charAt(pos - 1);
-
-		if(noWordSep == null)
-			noWordSep = "";
-		boolean selectNoLetter = (!Character.isLetterOrDigit(ch)
-			&& noWordSep.indexOf(ch) == -1);
-
-		int wordStart = 0;
-		for(int i = pos - 1; i >= 0; i--)
-		{
-			ch = line.charAt(i);
-			if(selectNoLetter ^ (!Character.isLetterOrDigit(ch) &&
-				noWordSep.indexOf(ch) == -1))
-			{
-				wordStart = i + 1;
-				break;
-			}
-		}
-
-		return wordStart;
-	}
-
-	/**
-	 * Locates the end of the word at the specified position.
-	 * @param line The text
-	 * @param pos The position
-	 */
-	public static int findWordEnd(String line, int pos, String noWordSep)
-	{
-		char ch = line.charAt(pos);
-
-		if(noWordSep == null)
-			noWordSep = "";
-		boolean selectNoLetter = (!Character.isLetterOrDigit(ch)
-			&& noWordSep.indexOf(ch) == -1);
-
-		int wordEnd = line.length();
-		for(int i = pos; i < line.length(); i++)
-		{
-			ch = line.charAt(i);
-			if(selectNoLetter ^ (!Character.isLetterOrDigit(ch) &&
-				noWordSep.indexOf(ch) == -1))
-			{
-				wordEnd = i;
-				break;
-			}
-		}
-		return wordEnd;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/Token.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/Token.java
deleted file mode 100644
index ecaf959828f8d9f280da5e8917f97010b75afa87..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/Token.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Token.java - Generic token
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-/**
- * A linked list of tokens. Each token has three fields - a token
- * identifier, which is a byte value that can be looked up in the
- * array returned by <code>SyntaxDocument.getColors()</code>
- * to get a color value, a length value which is the length of the
- * token in the text, and a pointer to the next token in the list.
- *
- * @author Slava Pestov
- * @version $Id$
- */
-public class Token
-{
-	/**
-	 * Normal text token id. This should be used to mark
-	 * normal text.
-	 */
-	public static final byte NULL = 0;
-
-	/**
-	 * Comment 1 token id. This can be used to mark a comment.
-	 */
-	public static final byte COMMENT1 = 1;
-
-	/**
-	 * Comment 2 token id. This can be used to mark a comment.
-	 */
-	public static final byte COMMENT2 = 2;
-
-
-	/**
-	 * Literal 1 token id. This can be used to mark a string
-	 * literal (eg, C mode uses this to mark "..." literals)
-	 */
-	public static final byte LITERAL1 = 3;
-
-	/**
-	 * Literal 2 token id. This can be used to mark an object
-	 * literal (eg, Java mode uses this to mark true, false, etc)
-	 */
-	public static final byte LITERAL2 = 4;
-
-	/**
-	 * Label token id. This can be used to mark labels
-	 * (eg, C mode uses this to mark ...: sequences)
-	 */
-	public static final byte LABEL = 5;
-
-	/**
-	 * Keyword 1 token id. This can be used to mark a
-	 * keyword. This should be used for general language
-	 * constructs.
-	 */
-	public static final byte KEYWORD1 = 6;
-
-	/**
-	 * Keyword 2 token id. This can be used to mark a
-	 * keyword. This should be used for preprocessor
-	 * commands, or variables.
-	 */
-	public static final byte KEYWORD2 = 7;
-
-	/**
-	 * Keyword 3 token id. This can be used to mark a
-	 * keyword. This should be used for data types.
-	 */
-	public static final byte KEYWORD3 = 8;
-
-	/**
-	 * Operator token id. This can be used to mark an
-	 * operator. (eg, SQL mode marks +, -, etc with this
-	 * token type)
-	 */
-	public static final byte OPERATOR = 9;
-
-	/**
-	 * Invalid token id. This can be used to mark invalid
-	 * or incomplete tokens, so the user can easily spot
-	 * syntax errors.
-	 */
-	public static final byte INVALID = 10;
-
-	/**
-	 * The total number of defined token ids.
-	 */
-	public static final byte ID_COUNT = 11;
-
-	/**
-	 * The first id that can be used for internal state
-	 * in a token marker.
-	 */
-	public static final byte INTERNAL_FIRST = 100;
-
-	/**
-	 * The last id that can be used for internal state
-	 * in a token marker.
-	 */
-	public static final byte INTERNAL_LAST = 126;
-
-	/**
-	 * The token type, that along with a length of 0
-	 * marks the end of the token list.
-	 */
-	public static final byte END = 127;
-
-	/**
-	 * The length of this token.
-	 */
-	public int length;
-
-	/**
-	 * The id of this token.
-	 */
-	public byte id;
-
-	/**
-	 * The next token in the linked list.
-	 */
-	public Token next;
-
-	/**
-	 * Creates a new token.
-	 * @param length The length of the token
-	 * @param id The id of the token
-	 */
-	public Token(int length, byte id)
-	{
-		this.length = length;
-		this.id = id;
-	}
-
-	/**
-	 * Returns a string representation of this token.
-	 */
-	public String toString()
-	{
-		return "[id=" + id + ",length=" + length + "]";
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/TokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/TokenMarker.java
deleted file mode 100644
index d84c0a96396abb4f407712954fb42247706508b0..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/TokenMarker.java
+++ /dev/null
@@ -1,343 +0,0 @@
-/*
- * TokenMarker.java - Generic token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-package org.astron.util.gui;
-import javax.swing.text.Segment;
-import java.util.*;
-
-/**
- * A token marker that splits lines of text into tokens. Each token carries
- * a length field and an indentification tag that can be mapped to a color
- * for painting that token.<p>
- *
- * For performance reasons, the linked list of tokens is reused after each
- * line is tokenized. Therefore, the return value of <code>markTokens</code>
- * should only be used for immediate painting. Notably, it cannot be
- * cached.
- *
- * @author Slava Pestov
- * @version $Id$
- *
- * @see org.gjt.sp.jedit.syntax.Token
- */
-public abstract class TokenMarker
-{
-	/**
-	 * A wrapper for the lower-level <code>markTokensImpl</code> method
-	 * that is called to split a line up into tokens.
-	 * @param line The line
-	 * @param lineIndex The line number
-	 */
-	public Token markTokens(Segment line, int lineIndex)
-	{
-		if(lineIndex >= length)
-		{
-			throw new IllegalArgumentException("Tokenizing invalid line: "
-				+ lineIndex);
-		}
-
-		lastToken = null;
-
-		LineInfo info = lineInfo[lineIndex];
-		LineInfo prev;
-		if(lineIndex == 0)
-			prev = null;
-		else
-			prev = lineInfo[lineIndex - 1];
-
-		byte oldToken = info.token;
-		byte token = markTokensImpl(prev == null ?
-			Token.NULL : prev.token,line,lineIndex);
-
-		info.token = token;
-
-		/*
-		 * This is a foul hack. It stops nextLineRequested
-		 * from being cleared if the same line is marked twice.
-		 *
-		 * Why is this necessary? It's all JEditTextArea's fault.
-		 * When something is inserted into the text, firing a
-		 * document event, the insertUpdate() method shifts the
-		 * caret (if necessary) by the amount inserted.
-		 *
-		 * All caret movement is handled by the select() method,
-		 * which eventually pipes the new position to scrollTo()
-		 * and calls repaint().
-		 *
-		 * Note that at this point in time, the new line hasn't
-		 * yet been painted; the caret is moved first.
-		 *
-		 * scrollTo() calls offsetToX(), which tokenizes the line
-		 * unless it is being called on the last line painted
-		 * (in which case it uses the text area's painter cached
-		 * token list). What scrollTo() does next is irrelevant.
-		 *
-		 * After scrollTo() has done it's job, repaint() is
-		 * called, and eventually we end up in paintLine(), whose
-		 * job is to paint the changed line. It, too, calls
-		 * markTokens().
-		 *
-		 * The problem was that if the line started a multiline
-		 * token, the first markTokens() (done in offsetToX())
-		 * would set nextLineRequested (because the line end
-		 * token had changed) but the second would clear it
-		 * (because the line was the same that time) and therefore
-		 * paintLine() would never know that it needed to repaint
-		 * subsequent lines.
-		 *
-		 * This bug took me ages to track down, that's why I wrote
-		 * all the relevant info down so that others wouldn't
-		 * duplicate it.
-		 */
-		 if(!(lastLine == lineIndex && nextLineRequested))
-			nextLineRequested = (oldToken != token);
-
-		lastLine = lineIndex;
-
-		addToken(0,Token.END);
-
-		return firstToken;
-	}
-
-	/**
-	 * An abstract method that splits a line up into tokens. It
-	 * should parse the line, and call <code>addToken()</code> to
-	 * add syntax tokens to the token list. Then, it should return
-	 * the initial token type for the next line.<p>
-	 *
-	 * For example if the current line contains the start of a
-	 * multiline comment that doesn't end on that line, this method
-	 * should return the comment token type so that it continues on
-	 * the next line.
-	 *
-	 * @param token The initial token type for this line
-	 * @param line The line to be tokenized
-	 * @param lineIndex The index of the line in the document,
-	 * starting at 0
-	 * @return The initial token type for the next line
-	 */
-	protected abstract byte markTokensImpl(byte token, Segment line,
-		int lineIndex);
-
-	/**
-	 * Returns if the token marker supports tokens that span multiple
-	 * lines. If this is true, the object using this token marker is
-	 * required to pass all lines in the document to the
-	 * <code>markTokens()</code> method (in turn).<p>
-	 *
-	 * The default implementation returns true; it should be overridden
-	 * to return false on simpler token markers for increased speed.
-	 */
-	public boolean supportsMultilineTokens()
-	{
-		return true;
-	}
-
-	/**
-	 * Informs the token marker that lines have been inserted into
-	 * the document. This inserts a gap in the <code>lineInfo</code>
-	 * array.
-	 * @param index The first line number
-	 * @param lines The number of lines
-	 */
-	public void insertLines(int index, int lines)
-	{
-		if(lines <= 0)
-			return;
-		length += lines;
-		ensureCapacity(length);
-		int len = index + lines;
-		System.arraycopy(lineInfo,index,lineInfo,len,
-			lineInfo.length - len);
-
-		for(int i = index + lines - 1; i >= index; i--)
-		{
-			lineInfo[i] = new LineInfo();
-		}
-	}
-
-	/**
-	 * Informs the token marker that line have been deleted from
-	 * the document. This removes the lines in question from the
-	 * <code>lineInfo</code> array.
-	 * @param index The first line number
-	 * @param lines The number of lines
-	 */
-	public void deleteLines(int index, int lines)
-	{
-		if (lines <= 0)
-			return;
-		int len = index + lines;
-		length -= lines;
-		System.arraycopy(lineInfo,len,lineInfo,
-			index,lineInfo.length - len);
-	}
-
-	/**
-	 * Returns the number of lines in this token marker.
-	 */
-	public int getLineCount()
-	{
-		return length;
-	}
-
-	/**
-	 * Returns true if the next line should be repainted. This
-	 * will return true after a line has been tokenized that starts
-	 * a multiline token that continues onto the next line.
-	 */
-	public boolean isNextLineRequested()
-	{
-		return nextLineRequested;
-	}
-
-	// protected members
-
-	/**
-	 * The first token in the list. This should be used as the return
-	 * value from <code>markTokens()</code>.
-	 */
-	protected Token firstToken;
-
-	/**
-	 * The last token in the list. New tokens are added here.
-	 * This should be set to null before a new line is to be tokenized.
-	 */
-	protected Token lastToken;
-
-	/**
-	 * An array for storing information about lines. It is enlarged and
-	 * shrunk automatically by the <code>insertLines()</code> and
-	 * <code>deleteLines()</code> methods.
-	 */
-	protected LineInfo[] lineInfo;
-
-	/**
-	 * The number of lines in the model being tokenized. This can be
-	 * less than the length of the <code>lineInfo</code> array.
-	 */
-	protected int length;
-
-	/**
-	 * The last tokenized line.
-	 */
-	protected int lastLine;
-
-	/**
-	 * True if the next line should be painted.
-	 */
-	protected boolean nextLineRequested;
-
-	/**
-	 * Creates a new <code>TokenMarker</code>. This DOES NOT create
-	 * a lineInfo array; an initial call to <code>insertLines()</code>
-	 * does that.
-	 */
-	protected TokenMarker()
-	{
-		lastLine = -1;
-	}
-
-	/**
-	 * Ensures that the <code>lineInfo</code> array can contain the
-	 * specified index. This enlarges it if necessary. No action is
-	 * taken if the array is large enough already.<p>
-	 *
-	 * It should be unnecessary to call this under normal
-	 * circumstances; <code>insertLine()</code> should take care of
-	 * enlarging the line info array automatically.
-	 *
-	 * @param index The array index
-	 */
-	protected void ensureCapacity(int index)
-	{
-		if(lineInfo == null)
-			lineInfo = new LineInfo[index + 1];
-		else if(lineInfo.length <= index)
-		{
-			LineInfo[] lineInfoN = new LineInfo[(index + 1) * 2];
-			System.arraycopy(lineInfo,0,lineInfoN,0,
-					 lineInfo.length);
-			lineInfo = lineInfoN;
-		}
-	}
-
-	/**
-	 * Adds a token to the token list.
-	 * @param length The length of the token
-	 * @param id The id of the token
-	 */
-	protected void addToken(int length, byte id)
-	{
-		if(id >= Token.INTERNAL_FIRST && id <= Token.INTERNAL_LAST)
-			throw new InternalError("Invalid id: " + id);
-
-		if(length == 0 && id != Token.END)
-			return;
-
-		if(firstToken == null)
-		{
-			firstToken = new Token(length,id);
-			lastToken = firstToken;
-		}
-		else if(lastToken == null)
-		{
-			lastToken = firstToken;
-			firstToken.length = length;
-			firstToken.id = id;
-		}
-		else if(lastToken.next == null)
-		{
-			lastToken.next = new Token(length,id);
-			lastToken = lastToken.next;
-		}
-		else
-		{
-			lastToken = lastToken.next;
-			lastToken.length = length;
-			lastToken.id = id;
-		}
-	}
-
-	/**
-	 * Inner class for storing information about tokenized lines.
-	 */
-	public class LineInfo
-	{
-		/**
-		 * Creates a new LineInfo object with token = Token.NULL
-		 * and obj = null.
-		 */
-		public LineInfo()
-		{
-		}
-
-		/**
-		 * Creates a new LineInfo object with the specified
-		 * parameters.
-		 */
-		public LineInfo(byte token, Object obj)
-		{
-			this.token = token;
-			this.obj = obj;
-		}
-
-		/**
-		 * The id of the last token of the line.
-		 */
-		public byte token;
-
-		/**
-		 * This is for use by the token marker implementations
-		 * themselves. It can be used to store anything that
-		 * is an object and that needs to exist on a per-line
-		 * basis.
-		 */
-		public Object obj;
-	}
-}
diff --git a/support/tools/BaseSimGUI/src/org/astron/util/gui/XMLTokenMarker.java b/support/tools/BaseSimGUI/src/org/astron/util/gui/XMLTokenMarker.java
deleted file mode 100644
index c23c26bf5e6cabeb658f9bd7a79577313ef86182..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/src/org/astron/util/gui/XMLTokenMarker.java
+++ /dev/null
@@ -1,191 +0,0 @@
-package org.astron.util.gui;
-
-/*
- * XMLTokenMarker.java - XML token marker
- * Copyright (C) 1998, 1999 Slava Pestov
- * Copyright (C) 2001 Tom Bradford
- *
- * You may use and modify this package for any purpose. Redistribution is
- * permitted, in both source and binary form, provided that this notice
- * remains intact in all source distributions of this package.
- */
-
-import javax.swing.text.Segment;
-
-/**
- * XML Token Marker Rewrite
- *
- * @author Tom Bradford
- * @version $Id$
- */
-public class XMLTokenMarker extends TokenMarker {
-   public XMLTokenMarker() {
-   }
-
-   public byte markTokensImpl(byte token, Segment line, int lineIndex) {
-      char[] array = line.array;
-      int offset = line.offset;
-      int lastOffset = offset;
-      int length = line.count + offset;
-
-      // Ugly hack to handle multi-line tags
-      boolean sk1 = token == Token.KEYWORD1;
-
-      for ( int i = offset; i < length; i++ ) {
-         int ip1 = i+1;
-         char c = array[i];
-         switch ( token ) {
-            case Token.NULL: // text
-               switch ( c ) {
-                  case '<':
-                     addToken(i-lastOffset, token);
-                     lastOffset = i;
-                     if ( SyntaxUtilities.regionMatches(false, line, ip1, "!--") ) {
-                        i += 3;
-                        token = Token.COMMENT1;
-                     }
-                     else if ( array[ip1] == '!' ) {
-                        i += 1;
-                        token = Token.COMMENT2;
-                     }
-                     else if ( array[ip1] == '?' ) {
-                        i += 1;
-                        token = Token.KEYWORD3;
-                     }
-                     else
-                        token = Token.KEYWORD1;
-                     break;
-
-                  case '&':
-                     addToken(i - lastOffset, token);
-                     lastOffset = i;
-                     token = Token.LABEL;
-                     break;
-               }
-               break;
-
-            case Token.KEYWORD1: // tag
-               switch ( c ) {
-                  case '>':
-                     addToken(ip1-lastOffset, token);
-                     lastOffset = ip1;
-                     token = Token.NULL;
-                     sk1 = false;
-                     break;
-
-                  case ' ':
-                  case '\t':
-                     addToken(i-lastOffset, token);
-                     lastOffset = i;
-                     token = Token.KEYWORD2;
-                     sk1 = false;
-                     break;
-
-                  default:
-                     if ( sk1 ) {
-                        token = Token.KEYWORD2;
-                        sk1 = false;
-                     }
-                     break;
-               }
-               break;
-
-            case Token.KEYWORD2: // attribute
-               switch ( c ) {
-                   case '>':
-                     addToken(ip1-lastOffset, token);
-                     lastOffset = ip1;
-                     token = Token.NULL;
-                     break;
-
-                  case '/':
-                     addToken(i-lastOffset, token);
-                     lastOffset = i;
-                     token = Token.KEYWORD1;
-                     break;
-
-                  case '=':
-                     addToken(i-lastOffset, token);
-                     lastOffset = i;
-                     token = Token.OPERATOR;
-               }
-               break;
-
-            case Token.OPERATOR: // equal for attribute
-               switch ( c ) {
-                  case '\"':
-                  case '\'':
-                     addToken(i-lastOffset, token);
-                     lastOffset = i;
-                     if ( c == '\"' )
-                        token = Token.LITERAL1;
-                     else
-                        token = Token.LITERAL2;
-                     break;
-               }
-               break;
-
-            case Token.LITERAL1:
-            case Token.LITERAL2: // strings
-               if ( ( token == Token.LITERAL1 && c == '\"' )
-                 || ( token == Token.LITERAL2 && c == '\'' ) ) {
-                  addToken(ip1-lastOffset, token);
-                  lastOffset = ip1;
-                  token = Token.KEYWORD1;
-               }
-               break;
-
-            case Token.LABEL: // entity
-               if ( c == ';' ) {
-                  addToken(ip1-lastOffset, token);
-                  lastOffset = ip1;
-                  token = Token.NULL;
-                  break;
-               }
-               break;
-
-            case Token.COMMENT1: // Inside a comment
-               if ( SyntaxUtilities.regionMatches(false, line, i, "-->") ) {
-                  addToken((i+3)-lastOffset, token);
-                  lastOffset = i+3;
-                  token = Token.NULL;
-               }
-               break;
-
-            case Token.COMMENT2: // Inside a declaration
-               if ( SyntaxUtilities.regionMatches(false, line, i, ">") ) {
-                  addToken(ip1-lastOffset, token);
-                  lastOffset = ip1;
-                  token = Token.NULL;
-               }
-               break;
-
-            case Token.KEYWORD3: // Inside a processor instruction
-               if ( SyntaxUtilities.regionMatches(false, line, i, "?>") ) {
-                  addToken((i+2)-lastOffset, token);
-                  lastOffset = i+2;
-                  token = Token.NULL;
-               }
-               break;
-
-            default:
-               throw new InternalError("Invalid state: " + token);
-         }
-      }
-
-      switch ( token ) {
-         case Token.LABEL:
-            addToken(length-lastOffset, Token.INVALID);
-            token = Token.NULL;
-            break;
-
-         default:
-            addToken(length-lastOffset, token);
-            break;
-      }
-
-      return token;
-   }
-}
-
-
diff --git a/support/tools/BaseSimGUI/template.xml b/support/tools/BaseSimGUI/template.xml
deleted file mode 100644
index d3b3cee142a919aaa9f592e49792893532bb0a27..0000000000000000000000000000000000000000
--- a/support/tools/BaseSimGUI/template.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE basesim SYSTEM "basesim.dtd">
-<basesim>
-  <simul name="mySimul">
-
-    <!-- WorkHolder definition; only one WH per Simul -->
-    <workholder name="wh1">
-      <dataholder name = "dh1" type="in"/>
-      <dataholder name = "dh2" type="out"/>
-    </workholder>
-
-  </simul>
-</basesim>
diff --git a/support/tools/TreeBrowser/description_init.html b/support/tools/TreeBrowser/description_init.html
deleted file mode 100644
index c239246c2d2862a45b67ea2735d19926454b1983..0000000000000000000000000000000000000000
--- a/support/tools/TreeBrowser/description_init.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<html>
-<head>
-<title> Package Page </title>
-</head>
-<body>
-</body>
-</html>
diff --git a/support/tools/TreeBrowser/images/ftv2blank.png b/support/tools/TreeBrowser/images/ftv2blank.png
deleted file mode 100644
index 493c3c0b615ade5b22027bde773faf2c0e076d66..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2blank.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2doc.png b/support/tools/TreeBrowser/images/ftv2doc.png
deleted file mode 100644
index 48bce1d78f021aceeb2ddc57026ebad0b7d7a9ee..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2doc.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2folderclosed.png b/support/tools/TreeBrowser/images/ftv2folderclosed.png
deleted file mode 100644
index d6d063440cbf13c4128dacd96661b6fce58abf26..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2folderclosed.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2folderopen.png b/support/tools/TreeBrowser/images/ftv2folderopen.png
deleted file mode 100644
index bbe2c913cf493ee37ad8e3a5132382138d93ac92..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2folderopen.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2lastnode.png b/support/tools/TreeBrowser/images/ftv2lastnode.png
deleted file mode 100644
index e7b9ba90cb0cf71c8ce662956bfee7d64cf60fa6..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2lastnode.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2mlastnode.png b/support/tools/TreeBrowser/images/ftv2mlastnode.png
deleted file mode 100644
index 09ceb6adb01054ce799ad20c0e818ab9272f2df2..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2mlastnode.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2mnode.png b/support/tools/TreeBrowser/images/ftv2mnode.png
deleted file mode 100644
index 3254c05112199fbc80aad313611c58a5b388792d..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2mnode.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2node.png b/support/tools/TreeBrowser/images/ftv2node.png
deleted file mode 100644
index c9f06a57f4cfe0f9851cc1aacd7245f741b53ad1..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2node.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2plastnode.png b/support/tools/TreeBrowser/images/ftv2plastnode.png
deleted file mode 100644
index 0b07e00913d8069ebbb51bd7fd6d70d8bba88f75..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2plastnode.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2pnode.png b/support/tools/TreeBrowser/images/ftv2pnode.png
deleted file mode 100644
index 2001b797ba2b98a4127f1d3efca64aef08bf6d51..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2pnode.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/ftv2vertline.png b/support/tools/TreeBrowser/images/ftv2vertline.png
deleted file mode 100644
index b330f3a33c0085c183ff39fc56b1b274160c1da0..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/ftv2vertline.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/lofar_back.gif b/support/tools/TreeBrowser/images/lofar_back.gif
deleted file mode 100644
index ca049ecb69833d050dde28cf937bcfacbc03d2f6..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/lofar_back.gif and /dev/null differ
diff --git a/support/tools/TreeBrowser/images/openordner.png b/support/tools/TreeBrowser/images/openordner.png
deleted file mode 100644
index 48bce1d78f021aceeb2ddc57026ebad0b7d7a9ee..0000000000000000000000000000000000000000
Binary files a/support/tools/TreeBrowser/images/openordner.png and /dev/null differ
diff --git a/support/tools/TreeBrowser/index.html b/support/tools/TreeBrowser/index.html
deleted file mode 100644
index 93efc4e6ce6b4bba6df68393ba4011ea4074e793..0000000000000000000000000000000000000000
--- a/support/tools/TreeBrowser/index.html
+++ /dev/null
@@ -1,9 +0,0 @@
-<html>
-<frameset cols = "20%,80%">
-  <frame name="treeview" src ="dep/finddep-pkg.html" />
-  <frameset rows = "10%,90%">
-    <frame name="links" src ="links_init.html" /> 
-    <frame name="description" src ="scripts/makepage.php?name=LOFAR" />
-  </frameset>
-</frameset>
-</html>
diff --git a/support/tools/TreeBrowser/links_init.html b/support/tools/TreeBrowser/links_init.html
deleted file mode 100644
index 270f2d61d6bd564ff2771d62e1ed41b4de6a013b..0000000000000000000000000000000000000000
--- a/support/tools/TreeBrowser/links_init.html
+++ /dev/null
@@ -1,7 +0,0 @@
-<html>
-<head>
-<title> Links Page </title>
-</head>
-<body>
-</body>
-</html>
\ No newline at end of file
diff --git a/support/tools/TreeBrowser/scripts/make_links.php b/support/tools/TreeBrowser/scripts/make_links.php
deleted file mode 100644
index 4725f21ed080cb45d415fca8160a1ae730574a72..0000000000000000000000000000000000000000
--- a/support/tools/TreeBrowser/scripts/make_links.php
+++ /dev/null
@@ -1,65 +0,0 @@
-<?php
-$name = $_REQUEST["name"];
-$realname= str_replace("~","/",$name);
-$isUsed=file_exists("../dep/".$name.".used.html");
-$isUses=file_exists("../dep/".$name.".uses.html");
-$isFlat=file_exists("../dep/".$name.".flat.html");
-?>
-
-<html>
-<head>
-<link href="../../docxxhtml/doxygen.css" rel="stylesheet" type="text/css">
-<title> Links Page </title>
-</head>
-<body>
-<center>
-<b>Package  
-<?php 
-echo $realname; 
-?> 
-</b>
-<?php
-if ($isUsed) {
-?>
-  --  <a href="../dep/<?php echo $name;?>.used.html" title="(shows in a
-  recursive way the packages where <?php echo $realname;?> is used)" 
-  target="depend"> Used</a>
-<?php
-} else {
-?>
-  --  Not Used
-<?php
-}
-?>
-<?php
-if ($isUses) {
-?>
-  --  <a href="../dep/<?php echo $name;?>.uses.html" title="(shows in a
-  recursive way the packages used by <?php echo $realname;?>)" 
-  target="depend"> Uses</a>
-<?php
-} else {
-?>
-  --  No Uses
-<?php
-}
-?>
-<?php
-if ($isFlat) {
-?>
-  --  <a href="../dep/<?php echo $name;?>.flat.html" title="(shows the
-  packages used by <?php echo $realname;?>)" target="depend"> Flat</a>
-<?php
-}
-?>
-  ---  <a href="http://svn.astron.nl/CDash/index.php?project=LOFAR" 
-  target="_blank">Build results</a>
-</center>
-</body>
-</html>
-
-
-
-
-
-
diff --git a/support/tools/TreeBrowser/scripts/makepage.php b/support/tools/TreeBrowser/scripts/makepage.php
deleted file mode 100644
index 1ebc5f00a0fb791c66f5140d9c3d01d169a4b392..0000000000000000000000000000000000000000
--- a/support/tools/TreeBrowser/scripts/makepage.php
+++ /dev/null
@@ -1,41 +0,0 @@
-<?php
-$name     = $_REQUEST["name"];
-$realname = str_replace("~","/",$name);
-$docname  = "group__" .str_replace("_","__",end(explode('~',$name))). ".html";
-?>
-<html>
-<head>
-<title> Package Page </title>
-</head>
-<body bgcolor="#FFFFFF">
-
-<script type="text/JavaScript" language="Javascript1.2">
-var jname= '<?php echo $name; ?>';
-var u_id="../scripts/make_links.php?name="+jname;
-window.open(u_id,"links");
-</script>
-
-<?php
-if (file_exists("../../docxxhtml/".$docname)) {
-?>
-<script type="text/JavaScript" language="Javascript1.2">
-var docname= '../../docxxhtml/<?php echo $docname; ?>';
-window.open(docname,"description");
-</script>
-<?php
-} else {
-?>
-<center>
-<h3> No doxygen documentation for
-<?php 
-echo $realname; 
-?> 
- available yet.
-</h3>
-</center>
-
-<?php
-    }
-?>
-</body>
-</html>
diff --git a/support/tools/wrapexec/AUTHORS b/support/tools/wrapexec/AUTHORS
deleted file mode 100644
index 898de278eff50a7f2ccb082134808fd44f65917e..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/AUTHORS
+++ /dev/null
@@ -1,3 +0,0 @@
-
-Author: Klaas Jan Wierenga, wierenga@astron.nl, klaas.jan.wierenga@ordina.nl
-
diff --git a/support/tools/wrapexec/COPYING b/support/tools/wrapexec/COPYING
deleted file mode 100644
index 60549be514af76c5db0c17ce6bbe01b2f81e2d9e..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/COPYING
+++ /dev/null
@@ -1,340 +0,0 @@
-		    GNU GENERAL PUBLIC LICENSE
-		       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                       59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-		    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-			    NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-	    How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) 19yy  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) 19yy name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/support/tools/wrapexec/ChangeLog b/support/tools/wrapexec/ChangeLog
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/support/tools/wrapexec/INSTALL b/support/tools/wrapexec/INSTALL
deleted file mode 100644
index b42a17ac4640e9a2bfe5e480e44d0eef3f365928..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/INSTALL
+++ /dev/null
@@ -1,182 +0,0 @@
-Basic Installation
-==================
-
-   These are generic installation instructions.
-
-   The `configure' shell script attempts to guess correct values for
-various system-dependent variables used during compilation.  It uses
-those values to create a `Makefile' in each directory of the package.
-It may also create one or more `.h' files containing system-dependent
-definitions.  Finally, it creates a shell script `config.status' that
-you can run in the future to recreate the current configuration, a file
-`config.cache' that saves the results of its tests to speed up
-reconfiguring, and a file `config.log' containing compiler output
-(useful mainly for debugging `configure').
-
-   If you need to do unusual things to compile the package, please try
-to figure out how `configure' could check whether to do them, and mail
-diffs or instructions to the address given in the `README' so they can
-be considered for the next release.  If at some point `config.cache'
-contains results you don't want to keep, you may remove or edit it.
-
-   The file `configure.in' is used to create `configure' by a program
-called `autoconf'.  You only need `configure.in' if you want to change
-it or regenerate `configure' using a newer version of `autoconf'.
-
-The simplest way to compile this package is:
-
-  1. `cd' to the directory containing the package's source code and type
-     `./configure' to configure the package for your system.  If you're
-     using `csh' on an old version of System V, you might need to type
-     `sh ./configure' instead to prevent `csh' from trying to execute
-     `configure' itself.
-
-     Running `configure' takes awhile.  While running, it prints some
-     messages telling which features it is checking for.
-
-  2. Type `make' to compile the package.
-
-  3. Optionally, type `make check' to run any self-tests that come with
-     the package.
-
-  4. Type `make install' to install the programs and any data files and
-     documentation.
-
-  5. You can remove the program binaries and object files from the
-     source code directory by typing `make clean'.  To also remove the
-     files that `configure' created (so you can compile the package for
-     a different kind of computer), type `make distclean'.  There is
-     also a `make maintainer-clean' target, but that is intended mainly
-     for the package's developers.  If you use it, you may have to get
-     all sorts of other programs in order to regenerate files that came
-     with the distribution.
-
-Compilers and Options
-=====================
-
-   Some systems require unusual options for compilation or linking that
-the `configure' script does not know about.  You can give `configure'
-initial values for variables by setting them in the environment.  Using
-a Bourne-compatible shell, you can do that on the command line like
-this:
-     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
-
-Or on systems that have the `env' program, you can do it like this:
-     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
-
-Compiling For Multiple Architectures
-====================================
-
-   You can compile the package for more than one kind of computer at the
-same time, by placing the object files for each architecture in their
-own directory.  To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'.  `cd' to the
-directory where you want the object files and executables to go and run
-the `configure' script.  `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
-
-   If you have to use a `make' that does not supports the `VPATH'
-variable, you have to compile the package for one architecture at a time
-in the source code directory.  After you have installed the package for
-one architecture, use `make distclean' before reconfiguring for another
-architecture.
-
-Installation Names
-==================
-
-   By default, `make install' will install the package's files in
-`/usr/local/bin', `/usr/local/man', etc.  You can specify an
-installation prefix other than `/usr/local' by giving `configure' the
-option `--prefix=PATH'.
-
-   You can specify separate installation prefixes for
-architecture-specific files and architecture-independent files.  If you
-give `configure' the option `--exec-prefix=PATH', the package will use
-PATH as the prefix for installing programs and libraries.
-Documentation and other data files will still use the regular prefix.
-
-   In addition, if you use an unusual directory layout you can give
-options like `--bindir=PATH' to specify different values for particular
-kinds of files.  Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.
-
-   If the package supports it, you can cause programs to be installed
-with an extra prefix or suffix on their names by giving `configure' the
-option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
-
-Optional Features
-=================
-
-   Some packages pay attention to `--enable-FEATURE' options to
-`configure', where FEATURE indicates an optional part of the package.
-They may also pay attention to `--with-PACKAGE' options, where PACKAGE
-is something like `gnu-as' or `x' (for the X Window System).  The
-`README' should mention any `--enable-' and `--with-' options that the
-package recognizes.
-
-   For packages that use the X Window System, `configure' can usually
-find the X include and library files automatically, but if it doesn't,
-you can use the `configure' options `--x-includes=DIR' and
-`--x-libraries=DIR' to specify their locations.
-
-Specifying the System Type
-==========================
-
-   There may be some features `configure' can not figure out
-automatically, but needs to determine by the type of host the package
-will run on.  Usually `configure' can figure that out, but if it prints
-a message saying it can not guess the host type, give it the
-`--host=TYPE' option.  TYPE can either be a short name for the system
-type, such as `sun4', or a canonical name with three fields:
-     CPU-COMPANY-SYSTEM
-
-See the file `config.sub' for the possible values of each field.  If
-`config.sub' isn't included in this package, then this package doesn't
-need to know the host type.
-
-   If you are building compiler tools for cross-compiling, you can also
-use the `--target=TYPE' option to select the type of system they will
-produce code for and the `--build=TYPE' option to select the type of
-system on which you are compiling the package.
-
-Sharing Defaults
-================
-
-   If you want to set default values for `configure' scripts to share,
-you can create a site shell script called `config.site' that gives
-default values for variables like `CC', `cache_file', and `prefix'.
-`configure' looks for `PREFIX/share/config.site' if it exists, then
-`PREFIX/etc/config.site' if it exists.  Or, you can set the
-`CONFIG_SITE' environment variable to the location of the site script.
-A warning: not all `configure' scripts look for a site script.
-
-Operation Controls
-==================
-
-   `configure' recognizes the following options to control how it
-operates.
-
-`--cache-file=FILE'
-     Use and save the results of the tests in FILE instead of
-     `./config.cache'.  Set FILE to `/dev/null' to disable caching, for
-     debugging `configure'.
-
-`--help'
-     Print a summary of the options to `configure', and exit.
-
-`--quiet'
-`--silent'
-`-q'
-     Do not print messages saying which checks are being made.  To
-     suppress all normal output, redirect it to `/dev/null' (any error
-     messages will still be shown).
-
-`--srcdir=DIR'
-     Look for the package's source code in directory DIR.  Usually
-     `configure' can determine that directory automatically.
-
-`--version'
-     Print the version of Autoconf used to generate the `configure'
-     script, and exit.
-
-`configure' also accepts some other, not widely useful, options.
diff --git a/support/tools/wrapexec/Makefile.am b/support/tools/wrapexec/Makefile.am
deleted file mode 100644
index 62f90964f10fc75b282ca2b4ff44c8219b4d0b1e..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/Makefile.am
+++ /dev/null
@@ -1,3 +0,0 @@
-SUBDIRS = config src bin # test
-
-EXTRA_DIST = depcomp
diff --git a/support/tools/wrapexec/NEWS b/support/tools/wrapexec/NEWS
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/support/tools/wrapexec/README b/support/tools/wrapexec/README
deleted file mode 100644
index 1a4c77bb3c156d1b02765c3b5f32868805e58909..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/README
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-			wrapexec
-			========
-
-
-wrapexec is a tool to run an existing binary under the control of another program such as
-ddd, valgrind, time, etc. for debugging or profiling purposes. This is handy when your program
-is execed or forked by an application over which you have no control, meaning you cannot control
-how and with what arguments your program is started. In this case wrapexec can make your program
-look like it was still the same, but run it under the control of a debugging or profiling tool.
-
-Usage:
-
-To find out what tools you can use run wrapexec without arguments:
-
-	[user@machine test] wrapexec
-	Usage: wrapexec /path/to/program_to_wrap <toolname>.
-	Example: wrapexec ./mytest ddd
-	<toolname> can be one of:
-	        ddd
-	        strace
-	        valgrind
-	        time
-	        none
-
-To wrap an existing binary such as mytestprogram, do 'wrapexec mytestprogram strace'.
-The wrapexec program prevents you from wrapping the same binary twice. In order to wrap
-the binary for a different tool you must unwrap it using 'unwrapexec mytestprogram' and
-then wrap it with the new tool.
-
-To customize how wrapexec runs your program under the control of the tool you can copy
-/etc/wrapexec.cfg (from your installation directory) to $HOME/.wrapexec.cfg. The wrapexec
-program will then only read your copy of the configuration file and ignore the standard
-system installed configuration file.
-
-I hope this is a useful tool for you.
diff --git a/support/tools/wrapexec/acconfig.h b/support/tools/wrapexec/acconfig.h
deleted file mode 100644
index 225d59554715cb37467256a78501668913773a0b..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/acconfig.h
+++ /dev/null
@@ -1,2 +0,0 @@
-#undef PACKAGE
-#undef VERSION
diff --git a/support/tools/wrapexec/bin/Makefile.am b/support/tools/wrapexec/bin/Makefile.am
deleted file mode 100644
index 0a11b7d66e1ab8b161cf4013119a14b32fd9c190..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/bin/Makefile.am
+++ /dev/null
@@ -1,16 +0,0 @@
-
-noinst_SCRIPTS     = wrapexec.in unwrapexec.in
-nodist_bin_SCRIPTS = wrapexec unwrapexec
-EXTRA_DIST         = wrapexec.in unwrapexec.in
-
-wrapexec: $(srcdir)/wrapexec.in
-	sed -e 's%INSTALL_BINDIR%$(bindir)%' < $(srcdir)/wrapexec.in > wrapexec.in.1
-	sed -e 's%INSTALL_SYSCONFDIR%$(sysconfdir)%' < wrapexec.in.1 > wrapexec
-	chmod +x wrapexec
-
-unwrapexec: $(srcdir)/unwrapexec.in
-	sed -e 's%INSTALL_BINDIR%$(bindir)%' < $(srcdir)/unwrapexec.in > unwrapexec
-	chmod +x unwrapexec
-
-distclean-local:
-	rm -f wrapexec unwrapexec
diff --git a/support/tools/wrapexec/bin/unwrapexec.in b/support/tools/wrapexec/bin/unwrapexec.in
deleted file mode 100644
index 618bd4ec87026cf823bf80b3e3e20f6bb356c4b4..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/bin/unwrapexec.in
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/sh
-
-#
-# Path to the wrapexec_wrapper binary
-#
-wrapexec_wrapper=INSTALL_BINDIR/wrapexec_wrapper
-
-#
-# Test for correct usage
-#
-if test $# -ne 1; then
-	echo "Usage: unwrapexec /path/to/wrapped_program"
-	echo "Example: unwrapexec ./mytest"
-	exit 1;
-fi
-
-#
-# Copy arguments
-#
-program=$1
-shift
-
-#
-# Test if program exists
-#
-if test ! -x $program; then
-	echo "unwrapexec: error: program '$program' not found."
-	exit 1;
-fi
-
-#
-# Test whether the program has indeed been wrapped
-#
-wrapexec_inode=`ls -iL $wrapexec_wrapper 2> /dev/null | cut -d\  -f1`
-program_inode=`ls -iL $program 2> /dev/null | cut -d\  -f1`
-if test $program_inode -eq $wrapexec_inode; then
-	program_wrap_name=`ls -1 $program.wrap_* 2> /dev/null`
-	if test "$program_wrap_name" = ""; then
-		echo "unwrapexec: error: no wrapped binary '$program.wrap_*' found."
-		exit 1;
-	fi
-	rm $program
-	mv $program_wrap_name $program
-else
-	echo "unwrapexec: error: program not wrapped."
-	exit 1;	
-fi
-
diff --git a/support/tools/wrapexec/bin/wrapexec.in b/support/tools/wrapexec/bin/wrapexec.in
deleted file mode 100644
index bb8191950befa8cca3df1dfe3fc23d445f1b0bee..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/bin/wrapexec.in
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/bin/sh
-
-#
-# Path to the wrapexec_wrapper binary
-#
-wrapexec_wrapper=INSTALL_BINDIR/wrapexec_wrapper
-
-#
-# Find config file
-#
-if test -f $HOME/.wrapexec.cfg; then
-    conffile=$HOME/.wrapexec.cfg;
-else
-  if test -f INSTALL_SYSCONFDIR/wrapexec.cfg; then
-    conffile=INSTALL_SYSCONFDIR/wrapexec.cfg;
-  else
-    echo "wrapexec: error: Could not find configuration file in '$HOME/.wrapexec.cfg'"
-    echo "or INSTALL_SYSCONFDIR/wrapexec.cfg"
-    exit 1
-  fi
-fi
-
-#
-# Test for correct usage
-#
-if test $# -ne 2; then
-	echo "Usage: wrapexec /path/to/program_to_wrap <toolname>."
-	echo "Example: wrapexec ./mytest ddd"
-	echo "<toolname> can be one of:"
-	tools=`grep "^\[.*" $conffile | sed -e 's/^\[//'  | sed 's/\]$//' `
-	for t in $tools; do
-		echo -e "       \t$t";
-	done;
-	exit 1;
-fi
-
-#
-# Copy arguments
-#
-program=$1
-shift
-toolname=$1
-shift
-
-#
-# Test whether the program has already been wrapped by comparing inodes
-#
-wrapexec_inode=`ls -iL $wrapexec_wrapper | cut -c1-8`
-program_inode=`ls -iL $program | cut -c1-8`
-if test $program_inode -eq $wrapexec_inode; then
-	existing_toolname=`ls -1 $program.wrap_* | cut -d_ -f2`
-	echo "wrapexec: error: program '$program' already wrapped by '$existing_toolname'"
-	exit 1;
-fi
-
-#
-# Wrap!
-#
-mv $program $program.wrap_$toolname
-ln -s $wrapexec_wrapper $program
-
diff --git a/support/tools/wrapexec/bootstrap b/support/tools/wrapexec/bootstrap
deleted file mode 100755
index 4ae154221992568859d306aac98ea2c498bb3b1b..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/bootstrap
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-aclocal \
-&& automake --gnu --add-missing --copy \
-&& autoconf
diff --git a/support/tools/wrapexec/config/Config.cc b/support/tools/wrapexec/config/Config.cc
deleted file mode 100644
index 5b913cd541e43be13bdddb3f8558edbbdcbdec24..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/config/Config.cc
+++ /dev/null
@@ -1,489 +0,0 @@
-/*  Config Class
- Author: adv (Andrew Marchenko), 03.08.2000  
- Modify: adv (Andrew Marchenko), 27.09.2000  
-         <adv@adv.org.ua>
-         <t9r@mail.ru>  */
-
-#include <algorithm>
-#include "Config.h"
-
-int S_count(const std::string& s, char c);
-
-
-Value::Value(void)
-{
-  next = 0;
-  type = TYPE_EMPTY;
-}
-
-void
-Value::set(std::string str, int bl, int key = TYPE_VARIABLE)
-{
-  value = str;
-  type = key;
-  block = bl;
-}
-
-std::string&
-Value::get(void)
-{
-  return value;
-}
-
-const char*
-Value::sget(void)
-{
-  return value.c_str();
-}
-
-int
-Value::is_keyword(void)
-{
-  return (type == TYPE_KEYWORD) ? 1 : 0;
-}
-
-int
-Value::is_block(void)
-{
-  return (type == TYPE_BLOCK) ? 1 : 0;
-}
-
-int
-Value::get_block_id(void)
-{
-  return block;
-}
-
-int
-Value::get_type(void)
-{
-  return type;
-}
-
-/* ----------------------------------------  */
-
-Config::Config(void)
-{
-  init(DEF_CONFIG, '=', 1);
-}
-
-Config::Config(const char* name, int col = 1)
-{
-  init(name, '=', col);
-}
-
-Config::Config(char delim, int col = 1)
-{
-  init(DEF_CONFIG, delim, col);
-}
-
-Config::Config(const char* name, char delim, int col = 1)
-{
-  init(name, delim, col);
-}
-
-int
-Config::init(const char* name, char delim, int col)
-{
-  delimiter = delim;
-  vcol = col;
-  if (vcol < 1)
-      vcol = 1;
-  
-  svalue = 0;
-
-  open_config_file(name);
-  read_config_file();
-  close_config_file();
-  
-  return 0;
-}
-
-
-Config::~Config(void)
-{
-  if (vstart != 0)
-    {
-      while (vstart->next)
-        {
-          svalue = vstart->next;
-          delete vstart;
-          vstart = svalue;
-        }
-    }
-}
-
-int
-Config::open_config_file(const char* name)
-{
-  file.open(name);
-  if (!file)
-      throw "File Open Error";
-    
-  return 0;
-}
-
-int
-Config::close_config_file(void)
-{
-  file.close();
-  
-  return 0;
-}
-
-
-const char*
-Config::operator()(const char* name, int col = 1)
-{
-  return value(name, col);
-}
-
-const char*
-Config::operator()(const char* block, const char* name, int col = 1)
-{
-  return value(block, name, col);
-}
-
-const char*
-Config::value(const char* block, const char* name, int col = 1)
-{
-  if (name == NULL || col < 1)
-      return NULL;
-
-  svalue = vstart;
-  
-  int block_id = 0;
-  block_id = search_block(block);
-
-  while (svalue->next)
-    {
-      if (block_id != svalue->get_block_id())
-          break;
-          
-      if (!(svalue->get()).compare(name) && svalue->is_keyword())
-          return search_value(col);
-
-      svalue = svalue->next;
-    }
-    
-  return NULL;
-}
-
-const char*
-Config::value(const char* name, int col = 1)
-{
-  if (name == NULL || col < 1)
-      return NULL;
-
-  svalue = vstart;
-  
-  while (svalue->next)
-    {
-      if (!(svalue->get()).compare(name) && svalue->is_keyword())
-          return search_value(col);
-
-      svalue = svalue->next;
-    }
-    
-  return NULL;
-}
-
-const char*
-Config::search_value(int col)
-{
-  for (int i = 0; i < col; i++)
-    {
-      svalue = svalue->next;
-      if (svalue->next == NULL || svalue->is_keyword())
-          return NULL;
-    }
-
-  return svalue->sget();
-}
-
-
-const char*
-Config::_ivalue(const char* block, const char* name, int index, int col)
-{
-  if (index < 1 || col < 1)
-      return NULL;
-
-  svalue = vstart;
-
-  int block_id = 0;
-  if (block)
-      block_id = search_block(block);
-    
-  int count = 0;
-  while (svalue->next)
-    {
-      if (block)
-          if (block_id != svalue->get_block_id())
-              break;
-
-      if (name)
-        {
-          /* If keyword's value is found  */
-          if (svalue->is_keyword() && !(svalue->get()).compare(name) )
-              count++;
-        }
-      else
-        {
-          /* If keyword is found  */
-          if (svalue->is_keyword() )
-              count++;
-        }
-
-      /* Searching specified value  */
-      if (count == index)
-          return search_value(col);
-
-      svalue = svalue->next;
-    }
-    
-  return NULL;
-}
-
-int
-Config::search_block(const char* block)
-{
-  int block_id = 0;
-  
-  while (svalue->next)
-    {
-      if (!(svalue->get()).compare(block) && svalue->is_block())
-        {
-          block_id = svalue->get_block_id();
-          break;
-        }
-      svalue = svalue->next;
-    }
-    
-  return block_id;
-}
-
-/* 
- * Return value of variable by index
- */
-const char*
-Config::ivalue(int index, int col = 1)
-{
-  return _ivalue(NULL, NULL, index, col);
-}
-
-/* 
- * Return value of variable by index in block
- */
-const char*
-Config::ivalue(const char* block, int index, int col = 1)
-{
-  return _ivalue(block, NULL, index, col);
-}
-
-/* 
- * Return value of variable by index in block
- */
-const char*
-Config::ivalue(const char* block, const char* name, int index, int col = 1)
-{
-  return _ivalue(block, name, index, col);
-}
-
-
-
-const char*
-Config::keyword(int index)
-{
-  if (index < 1)
-      return NULL;
-
-  svalue = vstart;
-  
-  int count = 0;
-  while (svalue->next)
-    {
-      if (svalue->is_keyword())
-          count++;
-
-      if (count == index)
-          return svalue->sget();
-
-      svalue = svalue->next;
-    }
-    
-  return NULL;
-}
-
-const char*
-Config::block(int index)
-{
-  if (index < 1)
-      return NULL;
-
-  svalue = vstart;
-  
-  int count = 0;
-  while (svalue->next)
-    {
-      if (svalue->is_block())
-          count++;
-
-      if (count == index)
-          return svalue->sget();
-
-      svalue = svalue->next;
-    }
-    
-  return NULL;
-}
-
-
-int
-Config::read_config_file(void)
-{
-  std::string str, str_buf;
-  int block_no = 0;
-  
-  int append = 0;
-  while (1)
-    {
-      if (svalue == 0)
-        {
-          svalue = new Value;
-          vstart = svalue;
-        }
-      else if (svalue->get_type() != TYPE_EMPTY)
-        {
-          svalue->next = new Value;
-          svalue = svalue->next;
-        }
-        
-      if (getline(file, str_buf) == 0)
-          break;
-
-      str_buf += '#';
-      str_buf = str_buf.substr(0, str_buf.find('#'));
-      S_trunc(str_buf);
-
-      if (append)
-          str += str_buf;
-      else
-          str = str_buf;
-      
-      append = 0;
-      
-      int pos = str.length();
-      if (pos <= 2)
-          continue;
-      S_trunc(str);
-
-      if (str[str.length() - 1] == '\\')
-        {
-          int last = str.length() - 1;
-          str.replace(last, 1, "");
-          append = 1;
-          continue;
-        }
-
-        
-      if (str.length() <= 2 || str[0] == '\r')
-          continue;
-
-      if (str[0] == '[' && str[str.length() - 1] == ']')
-        {
-          pos = str.length() - 1;
-          str.replace(pos, 1, "");
-          str.replace(0, 1, "");
-          
-          block_no++;
-          svalue->set(str, block_no, TYPE_BLOCK);
-          continue;
-        }
-
-      int is_delim = str.find(delimiter);
-      if (is_delim == -1)
-          continue;
-
-      if (str[0] == delimiter)
-          continue;
-
-      str_buf = str.substr(0, str.find(delimiter));
-
-      S_trunc(str_buf);
-      svalue->set(str_buf, block_no, TYPE_KEYWORD);
-
-      int col= S_count(str, delimiter);
-
-      if (col > vcol)
-          col = vcol;
-	  
-      pos = 0;
-      for (int i = 0; i < col; i++)
-        {
-          svalue->next = new Value;
-          svalue = svalue->next;
-	  
-          pos = str.find(delimiter, pos + 1);
-          str_buf = str.substr(pos + 1);
-          
-	  
-         if (i < col - 1)
-           {
-             str_buf += ':';
-             str_buf = str_buf.substr(0, str_buf.find(delimiter));
-           }
-	  
-          S_trunc(str_buf);
-          svalue->set(str_buf, block_no);
-        }
-    }
-
-  return 0;
-}
-
-int
-S_count(const std::string& s, char c)
-{
-  int n = 0;
-  std::string::const_iterator i = find(s.begin(), s.end(), c);
-  
-  while (i != s.end())
-    {
-      ++n;
-      i = find(i + 1, s.end(), c);
-    }
-    
-  return n;
-}
-
-void
-Config::S_trunc(std::string& str)
-{
-  int pos = str.length();
-  if (pos <= 0)
-      return;
-      
-  int count = 0;
-  while (isspace(str[pos - 1]))
-    {
-      pos--;
-      count++;
-    }
-  str.replace(pos, count, "");
-
-  count = 0;
-  pos = 0;
-  while (isspace(str[pos]))
-    {
-      pos++;
-      count++;
-    }
-  str.replace(0, count, "");
-  
-  if (str[0] == '"' && str[str.length() - 1] == '"')
-    {
-      pos = str.length() - 1;
-      str.replace(pos, 1, "");
-      str.replace(0, 1, "");
-    }
-}
diff --git a/support/tools/wrapexec/config/Config.h b/support/tools/wrapexec/config/Config.h
deleted file mode 100644
index ef2231c31589aa036212e4f1e44458a020f5a5f1..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/config/Config.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Header file for 'Config Class'
- Author: adv (Andrew Marchenko), 03.08.2000 
-         <adv@adv.org.ua>
-         <t9r@mail.ru>  */
- 
-#include <fstream>
-#include <string>
-
-#define DEF_CONFIG       "config.cfg"
-
-enum ValType
-{
-  TYPE_EMPTY,
-  TYPE_VARIABLE,
-  TYPE_KEYWORD,
-  TYPE_BLOCK
-};
-
-class Value
-{
-  std::string value;
-  int type;
-  int block;
-  
- public:
-  Value* next;
-
-  Value(void);
-  
-  void set(std::string str, int bl, int key = TYPE_VARIABLE);
-  std::string& get(void);
-  const char* sget(void);
-  
-  int is_keyword(void);
-  int is_block(void);
-  int get_block_id(void);
-  int get_type(void);
-};
-
-
-class Config
-{
-  std::ifstream file;
-  char delimiter;
-  int vcol;
-
-  Value* svalue, *vstart;
-
-  int open_config_file(const char* name);
-  int close_config_file(void);
-  int read_config_file(void);
-  
-  void S_trunc(std::string& str);
-
-  int search_block(const char* block);
-  const char* search_value(int col);
-  
-public:
-  Config(void);
-  Config(const char* name, int col = 1);
-  Config(char delim, int col = 1);
-  Config(const char* name, char delim, int col = 1);
-  int init(const char* name, char delim, int col);
-
-  ~Config(void);
-  
-  const char* value(const char* name, int col = 1);
-  const char* value(const char* block, const char* name, int col = 1);
-  const char* operator()(const char* name, int col = 1);
-  const char* operator()(const char* block, const char* name, int col = 1);
-
-  const char* _ivalue(const char* block, const char* name, int index, int col);
-  const char* ivalue(int index, int col = 1);
-  const char* ivalue(const char* block, int index, int col = 1);
-  const char* ivalue(const char* block, const char* name, int index, int col = 1);
-
-  const char* keyword(int index);
-  const char* block(int index);
-};
diff --git a/support/tools/wrapexec/config/Makefile.am b/support/tools/wrapexec/config/Makefile.am
deleted file mode 100644
index b6bff8e2a6e0cfafcae75a8b2908def2cf2c2aa5..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/config/Makefile.am
+++ /dev/null
@@ -1,3 +0,0 @@
-
-noinst_LIBRARIES	= libconfig.a
-libconfig_a_SOURCES	= Config.cc Config.h
diff --git a/support/tools/wrapexec/src/ArgList.cc b/support/tools/wrapexec/src/ArgList.cc
deleted file mode 100644
index 23347101fec266b42e69306a5423ab64ac37b0c1..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/src/ArgList.cc
+++ /dev/null
@@ -1,140 +0,0 @@
-#include <ArgList.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <iostream>
-#include <string>
-#include <algorithm>
-#include <cctype>
-
-ArgList::ArgList(const char* s) : m_args(s), m_argv_string(""), m_argv(0)
-{
-}
-
-ArgList::ArgList(string s) : m_args(s), m_argv_string(""), m_argv(0)
-{
-}
-
-ArgList::ArgList(int argc, char** argv) : m_argv_string(""), m_argv(0)
-{
-#ifdef DEBUG
-  fprintf(stderr, "ArgList ctor: argc = %d\n", argc);
-#endif
-
-  m_args.erase();
-
-  for (int i = 0; i < argc; i++)
-  {
-#ifdef DEBUG
-    fprintf(stderr, "argv[%d] = %s\n", i, argv[i]);
-#endif
-
-    if (i < argc - 1) m_args += string(argv[i]) + string(" ");
-    else              m_args += string(argv[i]);
-  }
-}
-
-ArgList::~ArgList()
-{
-  if (m_argv) free(m_argv);
-}
-
-string ArgList::as_string()
-{
-  return m_args;
-}
-
-int ArgList::get_argc()
-{
-  int begin = 0;
-  int end   = -1;
-
-  // count number of arguments
-  int argc = 0;
-  while (((end = m_args.find_first_of(' ', begin)) >= 0) && (begin != end))
-  {
-    argc++;
-    begin = end + 1;
-  }
-  if (end != m_args.length()) argc++;
-
-  return argc;
-}
-
-const char** ArgList::get_argv()
-{
-  int begin     = 0;
-  int end       = -1;
-  m_argv_string = m_args;
-
-  // count number of arguments
-  int argc = 0;
-  while (((end = m_argv_string.find(' ', begin)) >= 0) && (begin != end))
-  {
-    argc++;
-    begin = end + 1;
-  }
-  if (end != m_argv_string.length()) argc++;
-
-#ifdef DEBUG
-  cerr << "m_argv_string = " << m_argv_string << "; get_argv; argc = " << argc << endl;
-#endif
-
-  // reallocate argv array
-  m_argv = (char**)realloc(m_argv, (argc + 1) * sizeof(char*));
-  m_argv[argc] = 0;
-
-  // assign to argv arguments
-  begin = 0;
-  end   = -1;
-  int i=0;
-#ifdef DEBUG
-  cerr << "m_argv_string.length() = " << m_argv_string.length() << endl;
-#endif
-  while (((end = m_argv_string.find_first_of(' ', begin)) >= 0) && (begin != end))
-  {
-    m_argv_string[end] = '\0';
-#ifdef DEBUG
-    cerr << "begin = " << begin << endl;
-#endif
-    m_argv[i] = &m_argv_string[begin];
-    begin = end + 1;
-    i++;
-  }
-  if (end != m_args.length()) m_argv[argc - 1] = &m_argv_string[begin];
-
-  return (const char**)m_argv;
-}
-
-void ArgList::substitute(const char* pattern, const string& replacement)
-{
-  int begin = 0;
-  int end   = 0;
-
-  if (m_args.length() == 0) return;
-
-#ifdef DEBUG
-  cerr << "m_args      = " << m_args      << endl;
-  cerr << "pattern     = " << pattern     << endl;
-  cerr << "replacement = " << replacement << endl;
-#endif
-
-  while ((begin = m_args.find(pattern)) >= 0)
-  {
-    end = begin + strlen(pattern);
-    if (end > m_args.length()) end = m_args.length();
-
-#ifdef DEBUG
-    fprintf(stderr, "begin = %d\n", begin);
-    fprintf(stderr, "end   = %d\n", end);
-    fprintf(stderr, "replacementlength = %d\n", replacement.length());
-#endif
-    
-    m_args.replace(begin, end - begin, replacement);
-  }
-
-#ifdef DEBUG
-  cerr << "result m_args = " << m_args << endl;
-  cerr << "m_args length = " << m_args.length() << endl;
-#endif
-}
diff --git a/support/tools/wrapexec/src/ArgList.h b/support/tools/wrapexec/src/ArgList.h
deleted file mode 100644
index 22d35f182e58f22c56c68e3c1f62bec653302463..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/src/ArgList.h
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-#ifndef ARGLIST_H
-#define ARGLIST_H
-
-#include <vector>
-#include <string>
-
-class ArgList
-{
- public:
-  ArgList(const char* s);
-  ArgList(string s);
-  ArgList(int argc, char** argv);
-  ~ArgList();
-
-  void substitute(const char* pattern, const string& replacement);
-
-  string       as_string();
-  int          get_argc();
-  const char** get_argv();
-  
- private:
-  string m_args;
-
-  string m_argv_string;
-  char** m_argv;
-};
-
-#endif
diff --git a/support/tools/wrapexec/src/Argv.cc b/support/tools/wrapexec/src/Argv.cc
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/support/tools/wrapexec/src/Makefile.am b/support/tools/wrapexec/src/Makefile.am
deleted file mode 100644
index 63f3a5a9e2463e2d98bf8720930321f1308da76a..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/src/Makefile.am
+++ /dev/null
@@ -1,26 +0,0 @@
-
-INCLUDES		 = -I$(top_srcdir)/src -I$(top_srcdir)/config
-
-AM_CFLAGS		 = # -DDEBUG
-AM_CPPFLAGS		 = # -DDEBUG
-
-bin_PROGRAMS		 = wrapexec_wrapper
-wrapexec_wrapper_SOURCES = wrapexec.cc ArgList.cc ArgList.h
-nodist_wrapexec_wrapper_SOURCES = wrapexec_paths.h
-wrapexec_wrapper_LDADD	 = $(top_builddir)/config/libconfig.a
-
-wrapexec_paths.h: $(srcdir)/wrapexec_paths.h.in
-	sed -e 's%WRAPEXEC_CFG_PATH_PLACEHOLDER%$(sysconfdir)%' < $(srcdir)/wrapexec_paths.h.in > wrapexec_paths.h
-wrapexec.cc: wrapexec_paths.h
-
-noinst_DATA         = wrapexec.cfg.in
-nodist_sysconf_DATA = wrapexec.cfg
-
-EXTRA_DIST       = wrapexec.cfg.in wrapexec_paths.h.in
-
-wrapexec.cfg: $(srcdir)/wrapexec.cfg.in
-	cp $(srcdir)/wrapexec.cfg.in wrapexec.cfg
-
-distclean-local:
-	rm -f wrapexec.cfg
-	rm -f wrapexec_paths.h
diff --git a/support/tools/wrapexec/src/wrapexec.cc b/support/tools/wrapexec/src/wrapexec.cc
deleted file mode 100644
index bdcdc17826f971d5581d85f53b0e1f671eb23202..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/src/wrapexec.cc
+++ /dev/null
@@ -1,374 +0,0 @@
-/* wrapexec.c: run a binary under the control of some tool such as valgrind or
- *          gdb without the knowledge of the invoking program (e.g. shell or glish).
- *          This is useful to debug and profile programs that are invoked as
- *          part of some framework which doesn't support starting those binaries
- *          under gdb or valgrind control.
- *
- *  Scenario:
- *  One wants to run binary "analysis" under valgrind control. To do this
- *  you create a symbolic link from analysis.wrap_valgrind to the wrapexec binary:
- *  e.g. ln -s /usr/local/bin/wrapexec analysis. Now you change the invokation of the
- *  program from "analysis" to "analysis.wrap_valgrind". Now the correct binary analysis
- *  will be started under the control of valgrind.
- *
- *  Copyright (C) 2000,2001,2002
- *  ASTRON (Netherlands Foundation for Research in Astronomy)
- *  P.O.Box 2, 7990 AA Dwingeloo, The Netherlands, softwaresupport@astron.nl
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- *  $Id$
- *
- *  $Log$
- *  Revision 1.2  2003/01/14 14:26:03  wierenga
- *  %[BugId: 158]%
- *
- *  Now uses $HOME/.wrapexec.cfg instead of $HOME/.wrapexec
- *
- *  wrapexec script checks for existence of system or user configuration file.
- *
- *  Fixed problem with extracting inode from 'ls -iL' output.
- *
- *  Revision 1.1  2003/01/08 10:03:56  wierenga
- *  %[BugId: 158]%
- *
- *  This is the initial implementation of the wrapexec tool.
- *
- *
- */
-
-#include <Config.h>
-#include <glob.h>
-#include <ArgList.h>
-
-#include <stdio.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/param.h>
-#include <signal.h>
-#include <errno.h>
-#include <string.h>
-#include <stdlib.h>
-#include <iostream>
-
-#include <wrapexec_paths.h>
-
-#define CONFIG_PATH_LEN 512
-#define CONFIG_ARG_LEN  512
-
-string substitute(const char* subst_in, int argc, char** argv)
-{
-  ArgList a(subst_in);
-  ArgList allargs(argc, argv);
-  ArgList optionargs(argc-1, &argv[1]);
-
-#ifdef DEBUG
-  fprintf(stderr, "allargs = %s\n", allargs.as_string().c_str());
-#endif
-
-  a.substitute("%%", allargs.as_string());
-
-#ifdef DEBUG
-  fprintf(stderr, "optionargs = %s\n", optionargs.as_string().c_str());
-#endif
-
-  a.substitute("%*", optionargs.as_string());
-
-#ifdef DEBUG
-  fprintf(stderr, "substitute individual args\n");
-#endif
-
-  char acpid[10];
-  sprintf(acpid, "%d", getpid());
-  a.substitute("%pid", string(acpid));
-
-#ifdef DEBUG
-  cerr << "%pid = " << string(acpid) << endl;
-#endif
-
-  for (int i = 0; i < argc; i++)
-  {
-    char pat[8];
-    sprintf(pat, "%%%d", i);
-    a.substitute(pat, argv[i]);
-  }
-
-  return a.as_string();
-}
-
-Config* config_read_file()
-{
-  string cfgname;
-  Config* cfg = 0;
-
-  //
-  // Construct path to config file
-  //
-  if (getenv("HOME"))
-  {
-    // construct the config file name
-    cfgname = string(getenv("HOME")) + string("/.wrapexec.cfg");
-
-    // try to read the config file
-    try { cfg = new Config(cfgname.c_str()); }
-    catch (const char* s)
-    {
-      delete cfg;
-      cfg = 0;
-
-      // failed to read $HOME/.wrapexec.cfg
-      // now read $(datadir)/wrapexec.cfg
-      cfgname = string(WRAPEXEC_CFG_PATH);
-      try { cfg = new Config(cfgname.c_str()); }
-      catch (const char* s)
-      {
-	delete cfg;
-	cfg = 0;
-      }
-    }
-  }
-
-  return cfg;
-}
-
-bool config_find_tool_section(Config* cfg, const string& name)
-{
-  bool result = false;
-  int  i      = 1;
-
-  if (!cfg) return false;
-
-  //
-  // Find app name in configuration
-  //
-  while(cfg->block(i))
-  {
-#ifdef DEBUG
-    printf("block %d = %s\n", i, cfg->block(i));
-#endif
-    if (string(cfg->block(i)) == name)
-    {
-      result = true;
-      break;
-    }
-    i++;
-  }
-
-  return result;
-}
-
-string extract_tool_name(const char* path)
-{
-  string result = string(path);
-  int pos;
-
-  //
-  // Get the name of the wrapper app
-  //
-  pos = result.find_last_of('_');
-  if (pos < 0)
-  {
-    result = "";
-  }
-  else
-  {
-    result = result.substr(pos+1);
-  }
-
-  return result;
-}
-
-string extract_program_name(const char* path)
-{
-  string result = string(path);
-  
-  //
-  // Get position of last '/' and last _
-  //
-  int slash  = result.find_last_of('/');
-  int uscore = result.find_last_of('_');
-  if (slash < 0 || uscore < 0)
-  {
-    result = "";
-  }
-  else
-  {
-    result = result.substr(slash+1,uscore);
-  }
-
-  return result;
-}
-
-int main(int argc, char* argv[])
-{
-  Config* cfg = 0;
-
-  cfg = config_read_file();
-  if (!cfg)
-  {
-    cerr << "wrapexec_wrapper: error: could not read configuration file from '"
-	 << WRAPEXEC_CFG_PATH << "' or " << "'$HOME/.wrapexec.cfg'" << endl;
-    exit(1);
-  }
-
-  //
-  // Determine path to the binary
-  //
-  string apppath;
-  char *cwd = getcwd(NULL, 0);
-  if ('/' == *argv[0])
-  {
-    apppath = string(argv[0]);
-  }
-  else
-  {
-    apppath = string(cwd) + string("/") + string(argv[0]);
-  }
-  free(cwd);
-
-  //
-  // Find a wrapper link, e.g. binary.wrap_valgrind
-  //
-  glob_t globbuf;
-  globbuf.gl_offs = 0;
-  int globerr = 0;
-  string searchstring = apppath + string(".wrap_*");
-
-#ifdef DEBUG
-  cerr << "globpattern = " << searchstring << endl;
-#endif
-
-  if ((globerr = glob(searchstring.c_str(),
-		      GLOB_ERR | GLOB_MARK | GLOB_DOOFFS, NULL, &globbuf)) < 0)
-  {
-    switch(globerr)
-    {
-      case GLOB_NOSPACE:
-	fprintf(stderr, "Error: out of memory while searching for wrapper link.\n");
-	break;
-      case GLOB_ABORTED:
-	fprintf(stderr, "Error: read error while searching for wrapper link.\n");
-	break;
-      case GLOB_NOMATCH:
-	fprintf(stderr, "Error: no wrapper links found.\n");
-	break;
-      default:
-	fprintf(stderr, "Error: unknown error while searching for wrapper links.\n");
-	break;
-    }
-    exit(1);
-  }
-
-  if (0 == globbuf.gl_pathv[0])
-  {
-    fprintf(stderr, "Error: could not find wrapper link. Searched for '%s'\n",
-	    searchstring.c_str());
-    exit(1);
-  }
-
-  // absolute path to the real binary is in gl_pathv[0]
-  string programname = string(globbuf.gl_pathv[0]);
-  if ("" == programname)
-  {
-    cerr << "Error: could not find program name." << endl;
-    exit(1);
-  }
-  argv[0] = strdup(programname.c_str());
-
-  // extract the tool name from the first matching file name
-  string toolname = extract_tool_name(globbuf.gl_pathv[0]);
-  if ("" == toolname)
-  {
-    cerr << "Error: could not find wrapper tool name." << endl;
-    exit(1);
-  }
-
-  // free the glob buffer
-  globfree(&globbuf);
-
-  // check if the tool section exists
-  if (!config_find_tool_section(cfg, toolname))
-  {
-    cerr << "Error: could not find section for tool '" << toolname
-	 << "' in configuration file." << endl;
-    exit(1);
-  }
-
-  // read tool definition from the selected tool section of the configuration file
-  const char* init       = cfg->value(toolname.c_str(), "init");
-  const char* tool       = cfg->value(toolname.c_str(), "tool");
-  const char* toolstdout = cfg->value(toolname.c_str(), "stdout");
-  const char* toolstderr = cfg->value(toolname.c_str(), "stderr");
-  const char* toolargs   = cfg->value(toolname.c_str(), "toolargs");
-
-  string sinit;
-  string stoolargs;
-
-  // substitute variables in the 'init' option
-  if (init)
-  {
-    sinit = substitute(init, argc, argv);
-  }
-
-  // assign default value for 'toolargs' if needed
-  if (!toolargs)
-  {
-    toolargs="%%";
-  }
-
-#ifdef DEBUG
-  fprintf(stderr, "substitute toolargs\n");
-#endif
-
-  // substitute variables in the 'toolargs' option
-  stoolargs = substitute(toolargs, argc, argv);
-
-#ifdef DEBUG
-  cerr << "toolargs = " << stoolargs << endl;
-#endif
-
-#ifdef DEBUG
-  // print final values
-  if (init)     cerr << "init     = " << sinit     << endl;
-  if (tool)     cerr << "tool     = " << tool      << endl;
-  if (toolargs) cerr << "toolargs = " << stoolargs << endl;
-#endif
-
-  if (sinit.size() > 0)
-  {
-    cerr << "ShellExec: " << sinit.c_str() << endl;
-    system(sinit.c_str());
-  }
-
-  if (tool) stoolargs.insert(0, string(tool) + string(" "));
-
-  ArgList toolarglist(stoolargs);
-  char**  tal = (char**)toolarglist.get_argv();
-
-  // still needed to free this memory
-  free(argv[0]);
-
-#ifdef DEBUG
-  cerr << "Execing: " << stoolargs << endl;
-#endif
-
-  if (execvp(tal[0], &tal[0]) < 0)
-  {
-    perror("execvp");
-    exit(1);
-  }
-  
-  return 1;
-}
diff --git a/support/tools/wrapexec/src/wrapexec.cfg.in b/support/tools/wrapexec/src/wrapexec.cfg.in
deleted file mode 100644
index b3bdc76c05ac487da6970c36cc6d54ab7c62e68f..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/src/wrapexec.cfg.in
+++ /dev/null
@@ -1,50 +0,0 @@
-#
-# wrapexec configuration file
-#
-# Each section defines the options for a single tool. All options are optional :-).
-# The possible options are:
-#
-# [toolname]
-# init="echo %* > /tmp/e.%pid" 	   # These commands are executed using the shell
-#                                  # prior to running the tool.
-# tool=/path/to/tool/binary	   # The path to the tool binary (may be empty).
-# toolargs="-tool -options %%"     # options that should be passed to the tool
-# toolstdout=/path/to/output/file  # (NOT IMPLEMENTED YET) tool stdout is redirected to this file
-# toolstderr=/path/to/output/file  # (NOT IMPLEMENTED YET) tool stderr is redirected to this file
-#
-# The following expansions are carried out on the 'init' and 'toolargs' options.
-#
-# %%   is expanded to all arguments of the wrapped program, e.g. "/bin/echo /tmp/testfile"
-# %*   is expanded to all but the first argument (program name), e.g. "/tmp/testfile"
-# %pid is expanded to the PID of the wrapexec binary (which is execed to become the tool binary)
-# %0   is expanded to the program name
-# %1   is expanded to the first positional argument
-# %n   is expanded to the n-th positional argument
-#
-
-[ddd]
-init=\
-     echo file %0 >> /tmp/ddd.%pid \
-  && echo break main >> /tmp/ddd.%pid \
-  && echo run %* > /tmp/ddd.%pid
-tool=/usr/bin/ddd
-toolargs=-x /tmp/ddd.%pid %0
-
-[strace]
-tool=/usr/bin/strace
-toolstdout=/tmp/strace.stdout
-toolstderr=/tmp/strace.stderr
-toolargs=-f -ff -ostrace.log %%
-
-[valgrind]
-tool=/usr/local/bin/valgrind
-toolargs=--cachesim=yes --show-reachable=yes --gdb-attach=yes %%
-
-[time]
-tool=/usr/bin/time
-toolargs=--output=time.log %%
-
-[none]
-# intentionally left empty
-
-
diff --git a/support/tools/wrapexec/src/wrapexec_paths.h.in b/support/tools/wrapexec/src/wrapexec_paths.h.in
deleted file mode 100644
index 43326635c62e0a6e63160808ff31575d277ec654..0000000000000000000000000000000000000000
--- a/support/tools/wrapexec/src/wrapexec_paths.h.in
+++ /dev/null
@@ -1,2 +0,0 @@
-
-#define WRAPEXEC_CFG_PATH "WRAPEXEC_CFG_PATH_PLACEHOLDER/wrapexec.cfg"