the classname
+#
+# Author : fracpete (fracpete at waikato dot ac dot nz)
+# Version: $Revision: 8034 $
+
+# ResultListeners
+weka.experiment.ResultListener=\
+ I:weka.experiment.ResultProducer
+
+# Search algorithms of the Bayes net package
+weka.classifiers.bayes.net.search.SearchAlgorithm=\
+ C:weka.classifiers.bayes.net.search.local.LocalScoreSearchAlgorithm,\
+ C:weka.classifiers.bayes.net.search.global.GlobalScoreSearchAlgorithm,\
+ C:weka.classifiers.bayes.net.search.ci.CIScoreSearchAlgorithm
+
+# SVMreg learning algorithms
+weka.classifiers.functions.supportVector.RegOptimizer=\
+ C:weka.classifiers.functions.supportVector.RegOptimizer
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/GenericPropertiesCreator.props b/workflow/apps/java/clustering/bin/weka/gui/GenericPropertiesCreator.props
new file mode 100644
index 00000000..2488f2d9
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/GenericPropertiesCreator.props
@@ -0,0 +1,231 @@
+# Customises the list of options given by the GenericObjectEditor
+# for various superclasses.
+#
+# Version: $Revision: 15255 $
+
+# Whether to use the dynamic approach or not (true|false). In case of
+# "false" the old GenericObjectEditor.props file is used:
+UseDynamic=true
+
+# Lists the ResultProducers-Packages I want to choose from
+weka.experiment.ResultProducer=\
+ weka.experiment
+
+# Lists the ResultListeners-Packages I want to choose from
+weka.experiment.ResultListener=\
+ weka.experiment
+
+# Lists the SplitEvaluators-Packages I want to choose from
+weka.experiment.SplitEvaluator=\
+ weka.experiment
+
+# Lists the Classifiers-Packages I want to choose from
+weka.classifiers.Classifier=\
+ weka.classifiers.bayes,\
+ weka.classifiers.functions,\
+ weka.classifiers.lazy,\
+ weka.classifiers.meta,\
+ weka.classifiers.meta.nestedDichotomies,\
+ weka.classifiers.mi,\
+ weka.classifiers.misc,\
+ weka.classifiers.scripting,\
+ weka.classifiers.trees,\
+ weka.classifiers.rules
+
+# Lists the IterativeClassifier objects I want to choose from
+weka.classifiers.IterativeClassifier=\
+ weka.classifiers.functions,\
+ weka.classifiers.meta,\
+ weka.classifiers.trees
+
+# Lists the AbstractClassificationOutput-packages I want to choose from
+weka.classifiers.evaluation.output.prediction.AbstractOutput=\
+ weka.classifiers.evaluation.output.prediction
+
+# Lists the Filters-Packages I want to choose from
+weka.filters.Filter= \
+ weka.filters, \
+ weka.filters.supervised.attribute, \
+ weka.filters.supervised.instance, \
+ weka.filters.unsupervised.attribute, \
+ weka.filters.unsupervised.instance
+
+# Lists the UnsupervisedFilters-Packages I want to choose from
+weka.filters.UnsupervisedFilter = \
+ weka.filters.unsupervised.attribute, \
+ weka.filters.unsupervised.instance
+
+# Lists the Attribute Selection Evaluators-Packages I want to choose from
+weka.attributeSelection.ASEvaluation = \
+ weka.attributeSelection
+
+# Lists the Attribute Selection Search methods-Packages I want to choose from
+weka.attributeSelection.ASSearch = \
+ weka.attributeSelection
+
+# Lists the Associators-Packages I want to choose from
+weka.associations.Associator=\
+ weka.associations
+
+# Lists the Clusterers-Packages I want to choose from
+weka.clusterers.Clusterer=\
+ weka.clusterers
+
+# Lists the DensityBasedClusterers I want to choose from
+weka.clusterers.DensityBasedClusterer=\
+ weka.clusterers
+
+# Lists the Loaders-Packages I want to choose from
+weka.core.converters.Loader=\
+ weka.core.converters
+
+# Lists the Savers-Packages I want to choose from
+weka.core.converters.Saver=\
+ weka.core.converters
+
+# Lists the search algorithms for nearest neighbour search
+weka.core.neighboursearch.NearestNeighbourSearch =\
+ weka.core.neighboursearch
+
+# Lists the ball tree constructors
+weka.core.neighboursearch.balltrees.BallTreeConstructor =\
+ weka.core.neighboursearch.balltrees
+
+# Lists the ball splitters
+weka.core.neighboursearch.balltrees.BallSplitter =\
+ weka.core.neighboursearch.balltrees
+
+# Lists the kd tree splitters
+weka.core.neighboursearch.kdtrees.KDTreeNodeSplitter =\
+ weka.core.neighboursearch.kdtrees
+
+# Lists the distance functions for use nearest neighbour search
+weka.core.DistanceFunction =\
+ weka.core
+
+# Lists the Search algorithm for Bayes net structure learning-Packages I want to choose from
+weka.classifiers.bayes.net.search.SearchAlgorithm=\
+ weka.classifiers.bayes.net.search.local, \
+ weka.classifiers.bayes.net.search.ci, \
+ weka.classifiers.bayes.net.search.global, \
+ weka.classifiers.bayes.net.search.fixed
+
+weka.classifiers.bayes.net.estimate.BayesNetEstimator =\
+ weka.classifiers.bayes.net.estimate
+
+# Lists the DataGenerator Algorithms-Packages
+weka.datagenerators.DataGenerator=\
+ weka.datagenerators.classifiers.classification,\
+ weka.datagenerators.classifiers.regression,\
+ weka.datagenerators.clusterers
+
+# Lists the packages where to find ClusterDefinition
+weka.datagenerators.ClusterDefinition=\
+ weka.datagenerators,\
+ weka.datagenerators.clusterers
+
+# List of stemmers
+weka.core.stemmers.Stemmer=\
+ weka.core.stemmers
+
+# Lists the Estimator-Packages I want to choose from
+weka.estimators.Estimator= \
+ weka.estimators
+
+# Lists the Univariate Density Estimator packages I want to choose from
+weka.estimators.UnivariateDensityEstimator= \
+ weka.estimators
+
+# Lists of Kernels I want to choose from
+weka.classifiers.functions.supportVector.Kernel=\
+ weka.classifiers.functions.supportVector,\
+ weka.classifiers.mi.supportVector
+
+# List of SVMreg learning algorithms
+weka.classifiers.functions.supportVector.RegOptimizer=\
+ weka.classifiers.functions.supportVector
+
+# List of tokenizers
+weka.core.tokenizers.Tokenizer=\
+ weka.core.tokenizers
+
+# List of extensions for the main GUI, package "weka.gui" is not allowed
+weka.gui.MainMenuExtension=
+
+# List of Explorer visualization plugins (classification panel)
+weka.gui.visualize.plugins.VisualizePlugin=\
+ weka.gui.visualize.plugins
+
+# List of Explorer tree visualization plugins (classification panel)
+weka.gui.visualize.plugins.TreeVisualizePlugin=\
+ weka.gui.visualize.plugins
+
+# List of Explorer graph visualization plugins (classification panel)
+weka.gui.visualize.plugins.GraphVisualizePlugin=\
+ weka.gui.visualize.plugins
+
+# List of Explorer error visualization plugins (classification panel)
+weka.gui.visualize.plugins.ErrorVisualizePlugin=\
+ weka.gui.visualize.plugins
+
+#List of Explorer association rule visualization plugins (associations panel)
+weka.gui.visualize.plugins.AssociationRuleVisualizePlugin=\
+ weka.gui.visualize.plugins
+
+#List of Explorer classifier panel launch handler plugins
+weka.gui.explorer.ClassifierPanelLaunchHandlerPlugin=\
+ weka.gui.explorer
+
+# List of writers for outputting graphics
+weka.gui.visualize.JComponentWriter=\
+ weka.gui.visualize
+
+# List of Experimenter result matrices
+weka.experiment.ResultMatrix=\
+ weka.experiment
+
+# List of Tester algorithms in the Experimenter
+weka.experiment.Tester=\
+ weka.experiment
+
+# List of Experimenter setup panels
+weka.gui.experiment.AbstractSetupPanel=\
+ weka.gui.experiment
+
+# List of file loaders
+weka.core.converters.AbstractFileLoader=\
+ weka.core.converters
+
+# List of file savers
+weka.core.converters.AbstractFileSaver=\
+ weka.core.converters
+
+# List of partition generators
+weka.core.PartitionGenerator=\
+ weka.classifiers.trees,\
+ weka.classifiers.meta
+
+# List of snowball stemmers.
+#
+# Note: the snowball jar needs to be in the CLASSPATH to make these stemmers
+# available.
+#org.tartarus.snowball.SnowballProgram=\
+# org.tartarus.snowball.ext
+
+# List of generators
+#weka.classifiers.meta.generators.Generator=\
+# weka.classifiers.meta.generators
+
+#weka.classifiers.meta.generators.NumericAttributeGenerator=\
+# weka.classifiers.meta.generators
+
+#weka.classifiers.meta.generators.NominalAttributeGenerator=\
+# weka.classifiers.meta.generators
+
+# stopword algorithms
+weka.core.stopwords.StopwordsHandler=\
+ weka.core.stopwords
+
+# the commands for the SimpleCLI
+weka.gui.simplecli.AbstractCommand=\
+ weka.gui.simplecli
diff --git a/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser$1.class b/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser$1.class
new file mode 100644
index 00000000..44cf164b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser$TreeNode.class b/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser$TreeNode.class
new file mode 100644
index 00000000..6b61a600
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser$TreeNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser.class b/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser.class
new file mode 100644
index 00000000..1af09d4a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/HierarchyPropertyParser.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/InstancesSummaryPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/InstancesSummaryPanel$1.class
new file mode 100644
index 00000000..722a3b93
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/InstancesSummaryPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/InstancesSummaryPanel.class b/workflow/apps/java/clustering/bin/weka/gui/InstancesSummaryPanel.class
new file mode 100644
index 00000000..871f60a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/InstancesSummaryPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/InteractiveTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTableModel.class
new file mode 100644
index 00000000..ae6fb52c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel$InteractiveRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel$InteractiveRenderer.class
new file mode 100644
index 00000000..e8962d9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel$InteractiveRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel$InteractiveTableModelListener.class b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel$InteractiveTableModelListener.class
new file mode 100644
index 00000000..455539ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel$InteractiveTableModelListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel.class b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel.class
new file mode 100644
index 00000000..a8e1fc0f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/InteractiveTablePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/JListHelper.class b/workflow/apps/java/clustering/bin/weka/gui/JListHelper.class
new file mode 100644
index 00000000..ad8b5474
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/JListHelper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/JTableHelper.class b/workflow/apps/java/clustering/bin/weka/gui/JTableHelper.class
new file mode 100644
index 00000000..334e2713
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/JTableHelper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$1.class
new file mode 100644
index 00000000..752c4323
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$2.class
new file mode 100644
index 00000000..32663936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$3.class
new file mode 100644
index 00000000..d5f9d1d2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog.class
new file mode 100644
index 00000000..bc12e80e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ListSelectorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Loader.class b/workflow/apps/java/clustering/bin/weka/gui/Loader.class
new file mode 100644
index 00000000..d01bb80a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Loader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$1.class
new file mode 100644
index 00000000..17dee327
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$2.class
new file mode 100644
index 00000000..275f8ab2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$3.class
new file mode 100644
index 00000000..3871df63
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4$1.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4$1.class
new file mode 100644
index 00000000..218051e4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4$2.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4$2.class
new file mode 100644
index 00000000..017b86a4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4.class
new file mode 100644
index 00000000..302bdf7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$5.class
new file mode 100644
index 00000000..8c708ae1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogPanel.class b/workflow/apps/java/clustering/bin/weka/gui/LogPanel.class
new file mode 100644
index 00000000..e4b15a22
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogWindow$1.class b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$1.class
new file mode 100644
index 00000000..04a7bd66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogWindow$2.class b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$2.class
new file mode 100644
index 00000000..ab561956
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogWindow$3.class b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$3.class
new file mode 100644
index 00000000..eb2a32e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogWindow$4.class b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$4.class
new file mode 100644
index 00000000..46012ec4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogWindow$LogWindowPrintStream.class b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$LogWindowPrintStream.class
new file mode 100644
index 00000000..8f8c9ce1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogWindow$LogWindowPrintStream.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LogWindow.class b/workflow/apps/java/clustering/bin/weka/gui/LogWindow.class
new file mode 100644
index 00000000..3a5fef2b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LogWindow.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Logger.class b/workflow/apps/java/clustering/bin/weka/gui/Logger.class
new file mode 100644
index 00000000..cf6efe54
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Logger.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel$1.class b/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel$1.class
new file mode 100644
index 00000000..38790a88
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel.class b/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel.class
new file mode 100644
index 00000000..985eae89
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel.props b/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel.props
new file mode 100644
index 00000000..e73e490b
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/LookAndFeel.props
@@ -0,0 +1,10 @@
+# Look'n'Feel configuration file
+# $Revision: 8034 $
+
+# the theme to use, none specified or empty means the system default one
+#Theme=javax.swing.plaf.metal.MetalLookAndFeel
+#Theme=com.sun.java.swing.plaf.gtk.GTKLookAndFeel
+#Theme=com.sun.java.swing.plaf.motif.MotifLookAndFeel
+#Theme=com.sun.java.swing.plaf.windows.WindowsLookAndFeel
+#Theme=com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$1.class
new file mode 100644
index 00000000..766f5d08
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$10.class b/workflow/apps/java/clustering/bin/weka/gui/Main$10.class
new file mode 100644
index 00000000..6f4df102
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$11$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$11$1.class
new file mode 100644
index 00000000..8f19342b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$11$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$11$2.class b/workflow/apps/java/clustering/bin/weka/gui/Main$11$2.class
new file mode 100644
index 00000000..0e6ef987
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$11$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$11.class b/workflow/apps/java/clustering/bin/weka/gui/Main$11.class
new file mode 100644
index 00000000..e81a8326
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$12.class b/workflow/apps/java/clustering/bin/weka/gui/Main$12.class
new file mode 100644
index 00000000..2e1fa78e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$13$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$13$1.class
new file mode 100644
index 00000000..e02c059c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$13$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$13$2.class b/workflow/apps/java/clustering/bin/weka/gui/Main$13$2.class
new file mode 100644
index 00000000..6a71fe06
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$13$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$13.class b/workflow/apps/java/clustering/bin/weka/gui/Main$13.class
new file mode 100644
index 00000000..2f330924
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$14$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$14$1.class
new file mode 100644
index 00000000..57a8abe0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$14$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$14$2.class b/workflow/apps/java/clustering/bin/weka/gui/Main$14$2.class
new file mode 100644
index 00000000..d6350c9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$14$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$14.class b/workflow/apps/java/clustering/bin/weka/gui/Main$14.class
new file mode 100644
index 00000000..b69c85c9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$15.class b/workflow/apps/java/clustering/bin/weka/gui/Main$15.class
new file mode 100644
index 00000000..d5ad06a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$16.class b/workflow/apps/java/clustering/bin/weka/gui/Main$16.class
new file mode 100644
index 00000000..334475db
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$17.class b/workflow/apps/java/clustering/bin/weka/gui/Main$17.class
new file mode 100644
index 00000000..ec19586c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$18.class b/workflow/apps/java/clustering/bin/weka/gui/Main$18.class
new file mode 100644
index 00000000..71b1a42e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$19.class b/workflow/apps/java/clustering/bin/weka/gui/Main$19.class
new file mode 100644
index 00000000..10ebabf5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$2.class b/workflow/apps/java/clustering/bin/weka/gui/Main$2.class
new file mode 100644
index 00000000..f925af06
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$20.class b/workflow/apps/java/clustering/bin/weka/gui/Main$20.class
new file mode 100644
index 00000000..4dac372a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$21.class b/workflow/apps/java/clustering/bin/weka/gui/Main$21.class
new file mode 100644
index 00000000..1a7419ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$22.class b/workflow/apps/java/clustering/bin/weka/gui/Main$22.class
new file mode 100644
index 00000000..a0a8986b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$23.class b/workflow/apps/java/clustering/bin/weka/gui/Main$23.class
new file mode 100644
index 00000000..2af1edb2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$24.class b/workflow/apps/java/clustering/bin/weka/gui/Main$24.class
new file mode 100644
index 00000000..eff5014a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$25.class b/workflow/apps/java/clustering/bin/weka/gui/Main$25.class
new file mode 100644
index 00000000..1a7b2349
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$26.class b/workflow/apps/java/clustering/bin/weka/gui/Main$26.class
new file mode 100644
index 00000000..553f21c7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$27.class b/workflow/apps/java/clustering/bin/weka/gui/Main$27.class
new file mode 100644
index 00000000..84e7a435
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$28.class b/workflow/apps/java/clustering/bin/weka/gui/Main$28.class
new file mode 100644
index 00000000..e90f5d24
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$29.class b/workflow/apps/java/clustering/bin/weka/gui/Main$29.class
new file mode 100644
index 00000000..064b8b1f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$3.class b/workflow/apps/java/clustering/bin/weka/gui/Main$3.class
new file mode 100644
index 00000000..d07111e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$30.class b/workflow/apps/java/clustering/bin/weka/gui/Main$30.class
new file mode 100644
index 00000000..6beae6ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$31.class b/workflow/apps/java/clustering/bin/weka/gui/Main$31.class
new file mode 100644
index 00000000..5477c19b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$32.class b/workflow/apps/java/clustering/bin/weka/gui/Main$32.class
new file mode 100644
index 00000000..0954bacd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$4$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$4$1.class
new file mode 100644
index 00000000..fe449259
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$4$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$4$2.class b/workflow/apps/java/clustering/bin/weka/gui/Main$4$2.class
new file mode 100644
index 00000000..5ac966a2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$4$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$4.class b/workflow/apps/java/clustering/bin/weka/gui/Main$4.class
new file mode 100644
index 00000000..8cb6d319
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$5.class b/workflow/apps/java/clustering/bin/weka/gui/Main$5.class
new file mode 100644
index 00000000..16fa8c6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$6.class b/workflow/apps/java/clustering/bin/weka/gui/Main$6.class
new file mode 100644
index 00000000..1a9d52d1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$7.class b/workflow/apps/java/clustering/bin/weka/gui/Main$7.class
new file mode 100644
index 00000000..c87db339
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$8.class b/workflow/apps/java/clustering/bin/weka/gui/Main$8.class
new file mode 100644
index 00000000..4399710e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$9.class b/workflow/apps/java/clustering/bin/weka/gui/Main$9.class
new file mode 100644
index 00000000..ac352737
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$BackgroundDesktopPane.class b/workflow/apps/java/clustering/bin/weka/gui/Main$BackgroundDesktopPane.class
new file mode 100644
index 00000000..cfe22b0f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$BackgroundDesktopPane.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameMDI$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameMDI$1.class
new file mode 100644
index 00000000..e3e63ce9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameMDI$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameMDI.class b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameMDI.class
new file mode 100644
index 00000000..3cb7fbe0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameMDI.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameSDI$1.class b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameSDI$1.class
new file mode 100644
index 00000000..a722d4f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameSDI$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameSDI.class b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameSDI.class
new file mode 100644
index 00000000..c6584a02
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main$ChildFrameSDI.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Main.class b/workflow/apps/java/clustering/bin/weka/gui/Main.class
new file mode 100644
index 00000000..92d5b899
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Main.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/MainMenuExtension.class b/workflow/apps/java/clustering/bin/weka/gui/MainMenuExtension.class
new file mode 100644
index 00000000..13ddb1d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/MainMenuExtension.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/MemoryUsage.props b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsage.props
new file mode 100644
index 00000000..3d669343
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsage.props
@@ -0,0 +1,36 @@
+# Properties file for customizing the memory usage panel.
+#
+# author: FracPete (fracpete at waikato dot ac dot nz)
+# version: $Revision: 8034 $
+
+# The dimensions of the dialog, width and height.
+Width=400
+# Uncomment the following property if you don't want the height to be based on
+# the height of the "garbage collector" button.
+#Height=20
+
+# The position of the frame. If at least one equals "-1", then the position
+# will be ignored.
+Left=-1
+Top=-1
+
+# The background color for the graph.
+BackgroundColor=white
+
+# The refresh interval in milliseconds
+Interval=1000
+
+# The percentage thresholds at which to change color. comma-separated list.
+# Percentages listed here must have a corresponding color entry, i.e.,
+# if "70" is in the list, then an entry like "70=somecolor" must be listed in
+# the properties file as well.
+Percentages=70,80,90
+
+# The default color, i.e., the color for memory usage below the smallest
+# threshold listed in "Percentages".
+DefaultColor=green
+
+# The colors for the thresholds (can use R,G,B format)
+70=yellow
+80=orange
+90=red
diff --git a/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$1.class
new file mode 100644
index 00000000..c8990684
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$MemoryMonitor$1.class b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$MemoryMonitor$1.class
new file mode 100644
index 00000000..e5882ae2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$MemoryMonitor$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$MemoryMonitor.class b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$MemoryMonitor.class
new file mode 100644
index 00000000..cb09e684
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel$MemoryMonitor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel.class b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel.class
new file mode 100644
index 00000000..5e0c5a21
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/MemoryUsagePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$1.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$1.class
new file mode 100644
index 00000000..b74d28ab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$10.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$10.class
new file mode 100644
index 00000000..dea84472
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$11.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$11.class
new file mode 100644
index 00000000..cfa907d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$12.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$12.class
new file mode 100644
index 00000000..725a5760
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$13.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$13.class
new file mode 100644
index 00000000..8efa3053
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$14.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$14.class
new file mode 100644
index 00000000..dfa643de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$15.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$15.class
new file mode 100644
index 00000000..ea367ee1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$16.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$16.class
new file mode 100644
index 00000000..2ef8122e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$17.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$17.class
new file mode 100644
index 00000000..7f9d066a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$18.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$18.class
new file mode 100644
index 00000000..6f318dce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$19.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$19.class
new file mode 100644
index 00000000..d4136df4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$2.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$2.class
new file mode 100644
index 00000000..956429cf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$1.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$1.class
new file mode 100644
index 00000000..12cf01bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$2.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$2.class
new file mode 100644
index 00000000..f5e2c07b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$3.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$3.class
new file mode 100644
index 00000000..5ffc4168
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3.class
new file mode 100644
index 00000000..6650dcd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$4.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$4.class
new file mode 100644
index 00000000..2b88fb02
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$5.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$5.class
new file mode 100644
index 00000000..56216886
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$6.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$6.class
new file mode 100644
index 00000000..bc9f7fc9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$7.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$7.class
new file mode 100644
index 00000000..130ce65c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$8.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$8.class
new file mode 100644
index 00000000..de84f2a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$9.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$9.class
new file mode 100644
index 00000000..0b60de0f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$CheckForNewPackages.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$CheckForNewPackages.class
new file mode 100644
index 00000000..0a2a3ff9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$CheckForNewPackages.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$ComboBoxEditor.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$ComboBoxEditor.class
new file mode 100644
index 00000000..5974ea7f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$ComboBoxEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$EstablishCache.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$EstablishCache.class
new file mode 100644
index 00000000..6a8a4aea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$EstablishCache.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$HomePageThread.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$HomePageThread.class
new file mode 100644
index 00000000..806211ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$HomePageThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$InstallTask.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$InstallTask.class
new file mode 100644
index 00000000..cfc5cf9b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$InstallTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$ProgressPrintStream.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$ProgressPrintStream.class
new file mode 100644
index 00000000..ed608773
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$ProgressPrintStream.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$Progressable.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$Progressable.class
new file mode 100644
index 00000000..8918bfe1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$Progressable.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$RefreshCache.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$RefreshCache.class
new file mode 100644
index 00000000..cf8ba19f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$RefreshCache.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$UninstallTask.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$UninstallTask.class
new file mode 100644
index 00000000..65e45b35
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$UninstallTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager$UnofficialInstallTask.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$UnofficialInstallTask.class
new file mode 100644
index 00000000..3bfd0411
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager$UnofficialInstallTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PackageManager.class b/workflow/apps/java/clustering/bin/weka/gui/PackageManager.class
new file mode 100644
index 00000000..84608a8a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PackageManager.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PasswordField$1.class b/workflow/apps/java/clustering/bin/weka/gui/PasswordField$1.class
new file mode 100644
index 00000000..d2dd002b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PasswordField$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PasswordField$2.class b/workflow/apps/java/clustering/bin/weka/gui/PasswordField$2.class
new file mode 100644
index 00000000..f88a78f8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PasswordField$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PasswordField.class b/workflow/apps/java/clustering/bin/weka/gui/PasswordField.class
new file mode 100644
index 00000000..c81feb2e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PasswordField.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PasswordProperty.class b/workflow/apps/java/clustering/bin/weka/gui/PasswordProperty.class
new file mode 100644
index 00000000..e5293bff
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PasswordProperty.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Perspective.class b/workflow/apps/java/clustering/bin/weka/gui/Perspective.class
new file mode 100644
index 00000000..c4d5d354
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Perspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveInfo.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveInfo.class
new file mode 100644
index 00000000..9b1cf8ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$1.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$1.class
new file mode 100644
index 00000000..5e3ef6b3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$2.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$2.class
new file mode 100644
index 00000000..cf8b3380
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$3.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$3.class
new file mode 100644
index 00000000..c7518c2d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$4.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$4.class
new file mode 100644
index 00000000..b690f5ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$5.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$5.class
new file mode 100644
index 00000000..d42b5199
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$6.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$6.class
new file mode 100644
index 00000000..32dcde34
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$SelectedPerspectivePreferences.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$SelectedPerspectivePreferences.class
new file mode 100644
index 00000000..e91e6d7a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager$SelectedPerspectivePreferences.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager.class b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager.class
new file mode 100644
index 00000000..fd3676da
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PerspectiveManager.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ProgrammaticProperty.class b/workflow/apps/java/clustering/bin/weka/gui/ProgrammaticProperty.class
new file mode 100644
index 00000000..fb3f0aed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ProgrammaticProperty.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyDialog$1.class
new file mode 100644
index 00000000..ab6a6900
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyDialog.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyDialog.class
new file mode 100644
index 00000000..dfd0d0eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$1.class
new file mode 100644
index 00000000..184b490b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$2.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$2.class
new file mode 100644
index 00000000..2a9a1fb8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$3.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$3.class
new file mode 100644
index 00000000..e8ed6202
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$4.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$4.class
new file mode 100644
index 00000000..c4a168fb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$5.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$5.class
new file mode 100644
index 00000000..7f605349
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1.class
new file mode 100644
index 00000000..a654b114
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$2.class
new file mode 100644
index 00000000..df85ebdd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel.class
new file mode 100644
index 00000000..10a6e88d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog$1.class
new file mode 100644
index 00000000..90811970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog$2.class
new file mode 100644
index 00000000..e0bdd499
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog.class
new file mode 100644
index 00000000..a8af82c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySelectorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$1.class
new file mode 100644
index 00000000..f2d7458f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$2.class
new file mode 100644
index 00000000..94f10dc8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$3.class
new file mode 100644
index 00000000..245ddf24
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$4.class
new file mode 100644
index 00000000..943002d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$CapabilitiesHelpDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$CapabilitiesHelpDialog$1.class
new file mode 100644
index 00000000..d4a9a25b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$CapabilitiesHelpDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$CapabilitiesHelpDialog.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$CapabilitiesHelpDialog.class
new file mode 100644
index 00000000..7095eda1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel$CapabilitiesHelpDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel.class b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel.class
new file mode 100644
index 00000000..7a81b2fd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertySheetPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyText$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyText$1.class
new file mode 100644
index 00000000..566c5fce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyText$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyText$2.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyText$2.class
new file mode 100644
index 00000000..6c173cb7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyText$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyText.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyText.class
new file mode 100644
index 00000000..291929c2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyText.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyValueSelector$1.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyValueSelector$1.class
new file mode 100644
index 00000000..4c4dbc6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyValueSelector$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/PropertyValueSelector.class b/workflow/apps/java/clustering/bin/weka/gui/PropertyValueSelector.class
new file mode 100644
index 00000000..a77d9424
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/PropertyValueSelector.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/RangeEditor.class b/workflow/apps/java/clustering/bin/weka/gui/RangeEditor.class
new file mode 100644
index 00000000..f74d51e7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/RangeEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ReaderToTextPane$1.class b/workflow/apps/java/clustering/bin/weka/gui/ReaderToTextPane$1.class
new file mode 100644
index 00000000..0d607f95
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ReaderToTextPane$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ReaderToTextPane.class b/workflow/apps/java/clustering/bin/weka/gui/ReaderToTextPane.class
new file mode 100644
index 00000000..6071d8fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ReaderToTextPane.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$1.class
new file mode 100644
index 00000000..f984760a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$2.class
new file mode 100644
index 00000000..f3a6d066
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$3.class
new file mode 100644
index 00000000..83c7f2d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$4.class
new file mode 100644
index 00000000..95ee822a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$5.class
new file mode 100644
index 00000000..c23aff6a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$6.class
new file mode 100644
index 00000000..594f144a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RDeleteListener.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RDeleteListener.class
new file mode 100644
index 00000000..8e398104
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RDeleteListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RKeyAdapter.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RKeyAdapter.class
new file mode 100644
index 00000000..32ac257d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RKeyAdapter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RMouseAdapter.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RMouseAdapter.class
new file mode 100644
index 00000000..438a0b7a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel$RMouseAdapter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel.class b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel.class
new file mode 100644
index 00000000..95b4b7a6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ResultHistoryPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer$1.class b/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer$1.class
new file mode 100644
index 00000000..ce3dfad0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer$2.class b/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer$2.class
new file mode 100644
index 00000000..5647ea5d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer.class b/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer.class
new file mode 100644
index 00000000..8d9e660b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SaveBuffer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SelectedTagEditor$1.class b/workflow/apps/java/clustering/bin/weka/gui/SelectedTagEditor$1.class
new file mode 100644
index 00000000..4095f3eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SelectedTagEditor$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SelectedTagEditor.class b/workflow/apps/java/clustering/bin/weka/gui/SelectedTagEditor.class
new file mode 100644
index 00000000..cd2138df
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SelectedTagEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$1.class
new file mode 100644
index 00000000..077328c2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$2.class
new file mode 100644
index 00000000..89269650
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$3.class
new file mode 100644
index 00000000..9f66bacc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$4.class
new file mode 100644
index 00000000..49eeef71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$5.class
new file mode 100644
index 00000000..0fb4749c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$6.class
new file mode 100644
index 00000000..d0be7b94
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel.class b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel.class
new file mode 100644
index 00000000..ebf358cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SetInstancesPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$1.class b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$1.class
new file mode 100644
index 00000000..88f09693
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$2.class b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$2.class
new file mode 100644
index 00000000..44e02b5b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$PerspectiveSelector.class b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$PerspectiveSelector.class
new file mode 100644
index 00000000..e5f82d35
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$PerspectiveSelector.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$PickList.class b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$PickList.class
new file mode 100644
index 00000000..24949f75
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$PickList.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$SingleSettingsEditor.class b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$SingleSettingsEditor.class
new file mode 100644
index 00000000..f7b45ef5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor$SingleSettingsEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor.class b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor.class
new file mode 100644
index 00000000..c34b6109
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SettingsEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI$1.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI$1.class
new file mode 100644
index 00000000..97866e8d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI.class
new file mode 100644
index 00000000..1f362842
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI.props b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI.props
new file mode 100644
index 00000000..dc7b2057
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLI.props
@@ -0,0 +1,8 @@
+# Contains properties for the SimpleCLI
+#
+# Author: FracPete (fracpete at waikato dot ac dot nz)
+# Version: $Revision: 8034 $
+
+# the maximum number of history commands to save (most recent ones)
+HistorySize=50
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$1.class
new file mode 100644
index 00000000..b8699345
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$ClassRunner.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$ClassRunner.class
new file mode 100644
index 00000000..e698776e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$ClassRunner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$CommandlineCompletion.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$CommandlineCompletion.class
new file mode 100644
index 00000000..f3df8e42
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel$CommandlineCompletion.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel.class
new file mode 100644
index 00000000..c425d9e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleCLIPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleDateFormatEditor$CustomEditor.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleDateFormatEditor$CustomEditor.class
new file mode 100644
index 00000000..36f01820
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleDateFormatEditor$CustomEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SimpleDateFormatEditor.class b/workflow/apps/java/clustering/bin/weka/gui/SimpleDateFormatEditor.class
new file mode 100644
index 00000000..609a7d64
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SimpleDateFormatEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel$1.class b/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel$1.class
new file mode 100644
index 00000000..f12cdb4a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel$SortContainer.class b/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel$SortContainer.class
new file mode 100644
index 00000000..55545fbe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel$SortContainer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel.class
new file mode 100644
index 00000000..03980ce3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SortedTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$1.class b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$1.class
new file mode 100644
index 00000000..83cce65f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$2.class b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$2.class
new file mode 100644
index 00000000..b63d4476
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$3.class b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$3.class
new file mode 100644
index 00000000..ea0d5e57
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SplashWindow.class b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow.class
new file mode 100644
index 00000000..45519b61
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SplashWindow.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/SysErrLog.class b/workflow/apps/java/clustering/bin/weka/gui/SysErrLog.class
new file mode 100644
index 00000000..ebd8fd11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/SysErrLog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/TaskLogger.class b/workflow/apps/java/clustering/bin/weka/gui/TaskLogger.class
new file mode 100644
index 00000000..c1e72921
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/TaskLogger.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$1.class
new file mode 100644
index 00000000..ca62eff4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$2.class
new file mode 100644
index 00000000..304b2d5b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$3.class
new file mode 100644
index 00000000..18d48faa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$4.class
new file mode 100644
index 00000000..24c6c52e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog.class b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog.class
new file mode 100644
index 00000000..75c707b6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/ViewerDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$Factory.class b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$Factory.class
new file mode 100644
index 00000000..96400459
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$Factory.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$FileChooserBookmarksPanel.class b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$FileChooserBookmarksPanel.class
new file mode 100644
index 00000000..94edd5a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$FileChooserBookmarksPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$PropertiesHandler.class b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$PropertiesHandler.class
new file mode 100644
index 00000000..c505b717
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser$PropertiesHandler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser.class b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser.class
new file mode 100644
index 00000000..8c111e6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WekaFileChooser.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WekaTaskMonitor$1.class b/workflow/apps/java/clustering/bin/weka/gui/WekaTaskMonitor$1.class
new file mode 100644
index 00000000..c4d91857
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WekaTaskMonitor$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WekaTaskMonitor.class b/workflow/apps/java/clustering/bin/weka/gui/WekaTaskMonitor.class
new file mode 100644
index 00000000..890c40ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WekaTaskMonitor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/Workbench.class b/workflow/apps/java/clustering/bin/weka/gui/Workbench.class
new file mode 100644
index 00000000..0c8320e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/Workbench.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WorkbenchApp$1.class b/workflow/apps/java/clustering/bin/weka/gui/WorkbenchApp$1.class
new file mode 100644
index 00000000..4314c731
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WorkbenchApp$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WorkbenchApp.class b/workflow/apps/java/clustering/bin/weka/gui/WorkbenchApp.class
new file mode 100644
index 00000000..8f684c26
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WorkbenchApp.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WorkbenchDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/WorkbenchDefaults.class
new file mode 100644
index 00000000..ca713a89
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WorkbenchDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/WrapLayout.class b/workflow/apps/java/clustering/bin/weka/gui/WrapLayout.class
new file mode 100644
index 00000000..f17aaf79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/WrapLayout.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffPanel.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffPanel.class
new file mode 100644
index 00000000..c84df8dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffSortedTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffSortedTableModel.class
new file mode 100644
index 00000000..ca0489cf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffSortedTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable$RelationalCellEditor$1.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable$RelationalCellEditor$1.class
new file mode 100644
index 00000000..dd1a4c7f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable$RelationalCellEditor$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable$RelationalCellEditor.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable$RelationalCellEditor.class
new file mode 100644
index 00000000..e0df39ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable$RelationalCellEditor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable.class
new file mode 100644
index 00000000..66d73fe7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTable.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTableCellRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTableCellRenderer.class
new file mode 100644
index 00000000..37bfbbbf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTableCellRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTableModel.class
new file mode 100644
index 00000000..37373135
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewer$1.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewer$1.class
new file mode 100644
index 00000000..504eeec6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewer.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewer.class
new file mode 100644
index 00000000..1d9c716b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewerMainPanel.class b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewerMainPanel.class
new file mode 100644
index 00000000..e8f5423c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/arffviewer/ArffViewerMainPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSink.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSink.class
new file mode 100644
index 00000000..0e6465f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSink.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSinkBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSinkBeanInfo.class
new file mode 100644
index 00000000..d423d00c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSinkBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSource.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSource.class
new file mode 100644
index 00000000..f2554941
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSource.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSourceBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSourceBeanInfo.class
new file mode 100644
index 00000000..38ce10c0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractDataSourceBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractEvaluator.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractEvaluator.class
new file mode 100644
index 00000000..257ab179
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractOffscreenChartRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractOffscreenChartRenderer.class
new file mode 100644
index 00000000..b08c6079
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractOffscreenChartRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTestSetProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTestSetProducer.class
new file mode 100644
index 00000000..4eb36aa8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTestSetProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTestSetProducerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTestSetProducerBeanInfo.class
new file mode 100644
index 00000000..50417661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTestSetProducerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainAndTestSetProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainAndTestSetProducer.class
new file mode 100644
index 00000000..064f0dc3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainAndTestSetProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainAndTestSetProducerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainAndTestSetProducerBeanInfo.class
new file mode 100644
index 00000000..2386ca29
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainAndTestSetProducerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainingSetProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainingSetProducer.class
new file mode 100644
index 00000000..2ff84f5b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainingSetProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainingSetProducerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainingSetProducerBeanInfo.class
new file mode 100644
index 00000000..f86ca56a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AbstractTrainingSetProducerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Appender.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Appender.class
new file mode 100644
index 00000000..025815e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Appender.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AppenderBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AppenderBeanInfo.class
new file mode 100644
index 00000000..5048fdc2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AppenderBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Associator$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Associator$1.class
new file mode 100644
index 00000000..4b844294
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Associator$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Associator.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Associator.class
new file mode 100644
index 00000000..52325833
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Associator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorBeanInfo.class
new file mode 100644
index 00000000..4ed9b42f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer$1.class
new file mode 100644
index 00000000..f3ea85fb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer$2.class
new file mode 100644
index 00000000..78bab994
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer.class
new file mode 100644
index 00000000..80557331
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AssociatorCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$1.class
new file mode 100644
index 00000000..0b8f183e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$2.class
new file mode 100644
index 00000000..a8e96201
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$3.class
new file mode 100644
index 00000000..c5453753
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer.class
new file mode 100644
index 00000000..a1d398e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerBeanInfo.class
new file mode 100644
index 00000000..d7e80fa4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$1.class
new file mode 100644
index 00000000..3b858f2e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$2.class
new file mode 100644
index 00000000..8f7c33b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$3.class
new file mode 100644
index 00000000..9a5d56dd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer.class
new file mode 100644
index 00000000..2dd06e32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/AttributeSummarizerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BatchAssociationRulesEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchAssociationRulesEvent.class
new file mode 100644
index 00000000..984d7ecc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchAssociationRulesEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BatchAssociationRulesListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchAssociationRulesListener.class
new file mode 100644
index 00000000..f7d3a5fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchAssociationRulesListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClassifierEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClassifierEvent.class
new file mode 100644
index 00000000..e48f4c54
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClassifierEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClassifierListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClassifierListener.class
new file mode 100644
index 00000000..756eedb4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClassifierListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClustererEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClustererEvent.class
new file mode 100644
index 00000000..22c6d24e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClustererEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClustererListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClustererListener.class
new file mode 100644
index 00000000..cf70a9e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BatchClustererListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCommon.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCommon.class
new file mode 100644
index 00000000..ded59ee7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCommon.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanConnection$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanConnection$1.class
new file mode 100644
index 00000000..5e31d8e0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanConnection$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanConnection.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanConnection.class
new file mode 100644
index 00000000..7900e009
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanConnection.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCustomizer$ModifyListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCustomizer$ModifyListener.class
new file mode 100644
index 00000000..8e337870
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCustomizer$ModifyListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCustomizer.class
new file mode 100644
index 00000000..45de30b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanInstance.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanInstance.class
new file mode 100644
index 00000000..a97f88d1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanInstance.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeanVisual.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanVisual.class
new file mode 100644
index 00000000..26ef2ae3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeanVisual.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Beans.props b/workflow/apps/java/clustering/bin/weka/gui/beans/Beans.props
new file mode 100644
index 00000000..5d725919
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/Beans.props
@@ -0,0 +1,81 @@
+# list of standard toolbars (containing bean tools that do not wrap weka
+# base class types)
+weka.gui.beans.KnowledgeFlow.standardToolBars=\
+ Evaluation,\
+ Visualization,\
+ Tools,\
+ Flow
+
+# Specifies the tools for each standard toolbar
+weka.gui.beans.KnowledgeFlow.Evaluation=weka.gui.beans.TrainingSetMaker,\
+ weka.gui.beans.TestSetMaker,\
+ weka.gui.beans.CrossValidationFoldMaker,\
+ weka.gui.beans.TrainTestSplitMaker,\
+ weka.gui.beans.ClassAssigner,\
+ weka.gui.beans.ClassValuePicker,\
+ weka.gui.beans.ClassifierPerformanceEvaluator,\
+ weka.gui.beans.IncrementalClassifierEvaluator,\
+ weka.gui.beans.ClustererPerformanceEvaluator,\
+ weka.gui.beans.PredictionAppender,\
+ weka.gui.beans.SerializedModelSaver,\
+ weka.gui.beans.TextSaver
+
+weka.gui.beans.KnowledgeFlow.Visualization=weka.gui.beans.DataVisualizer,\
+ weka.gui.beans.ScatterPlotMatrix,\
+ weka.gui.beans.AttributeSummarizer,\
+ weka.gui.beans.ModelPerformanceChart,\
+ weka.gui.beans.CostBenefitAnalysis,\
+ weka.gui.beans.TextViewer,\
+ weka.gui.beans.GraphViewer,\
+ weka.gui.beans.StripChart,\
+ weka.gui.beans.ImageSaver,\
+ weka.gui.beans.ImageViewer
+ weka.gui.beans.KnowledgeFlow.Tools=weka.gui.beans.Sorter,\
+ weka.gui.beans.SubstringLabeler,\
+ weka.gui.beans.SubstringReplacer
+weka.gui.beans.KnowledgeFlow.Flow=weka.gui.beans.Appender,\
+ weka.gui.beans.FlowByExpression,\
+ weka.gui.beans.InstanceStreamToBatchMaker,\
+ weka.gui.beans.Join
+
+# the bean panel processes keys in the generic object editor properties file.
+# If there is a corresponding entry here, then a toolbar is constructed using
+# the specified wrapper bean
+weka.core.converters.Loader=weka.gui.beans.Loader
+weka.core.converters.Saver=weka.gui.beans.Saver
+weka.classifiers.Classifier=weka.gui.beans.Classifier
+weka.filters.Filter=weka.gui.beans.Filter
+weka.clusterers.Clusterer=weka.gui.beans.Clusterer
+weka.associations.Associator=weka.gui.beans.Associator
+# weka.attributeSelection.ASEvaluation=weka.gui.beans.AttributeSelector
+
+# toolbar ordering information for wrapper types
+weka.core.converters.Loader.order=0
+weka.core.converters.Saver.order=1
+weka.filters.Filter.order=3
+weka.classifiers.Classifier.order=4
+weka.clusterers.Clusterer.order=5
+weka.associations.Associator.order=6
+# weka.attributeSelection.ASEvaluation.order=6
+
+# toolbar naming aliases for weka algorithm classes
+weka.core.converters.Loader.alias=DataSources
+weka.core.converters.Saver.alias=DataSinks
+weka.classifiers.Classifier.alias=Classifiers
+weka.clusterers.Clusterer.alias=Clusterers
+weka.filters.Filter.alias=Filters
+weka.associations.Associator.alias=Associations
+
+# GUI behaviour
+ScrollBarIncrementLayout=20
+ScrollBarIncrementComponents=50
+FlowWidth=2560
+FlowHeight=1440
+PreferredExtension=.kfml
+UserComponentsInXML=false
+
+# colours
+weka.gui.beans.StripChart.backgroundColour=black
+weka.gui.beans.StripChart$LegendPanel.borderColour=blue
+#weka.gui.beans.StripChart.backgroundColour=white
+#weka.gui.beans.StripChart$LegendPanel.borderColour=black
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/BeansProperties.class b/workflow/apps/java/clustering/bin/weka/gui/beans/BeansProperties.class
new file mode 100644
index 00000000..5f3814ea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/BeansProperties.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ChartEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ChartEvent.class
new file mode 100644
index 00000000..9e4121a2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ChartEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ChartListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ChartListener.class
new file mode 100644
index 00000000..547eca04
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ChartListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssigner.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssigner.class
new file mode 100644
index 00000000..8c8fac3a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssigner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerBeanInfo.class
new file mode 100644
index 00000000..46b55f94
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$1.class
new file mode 100644
index 00000000..e0cee5b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$2.class
new file mode 100644
index 00000000..3488c2bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$3.class
new file mode 100644
index 00000000..ba5124f8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer.class
new file mode 100644
index 00000000..17ddff17
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassAssignerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePicker.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePicker.class
new file mode 100644
index 00000000..d3ba1a01
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePicker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerBeanInfo.class
new file mode 100644
index 00000000..19020378
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$1.class
new file mode 100644
index 00000000..6c3b1e43
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$2.class
new file mode 100644
index 00000000..d75acb68
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$3.class
new file mode 100644
index 00000000..01689ecf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer.class
new file mode 100644
index 00000000..cd08aa32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassValuePickerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Classifier$TrainingTask.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Classifier$TrainingTask.class
new file mode 100644
index 00000000..d07e8d1c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Classifier$TrainingTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Classifier.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Classifier.class
new file mode 100644
index 00000000..75dc7219
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Classifier.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierBeanInfo.class
new file mode 100644
index 00000000..6bfc3533
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$1.class
new file mode 100644
index 00000000..3281ffc5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$2.class
new file mode 100644
index 00000000..2892d795
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$3.class
new file mode 100644
index 00000000..733cf659
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$4.class
new file mode 100644
index 00000000..8a5e9928
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$5.class
new file mode 100644
index 00000000..c0f764df
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$6.class
new file mode 100644
index 00000000..13a7f611
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$7.class
new file mode 100644
index 00000000..ed06ac81
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer.class
new file mode 100644
index 00000000..b10b7744
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator$AggregateableClassifierErrorsPlotInstances.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator$AggregateableClassifierErrorsPlotInstances.class
new file mode 100644
index 00000000..c538b882
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator$AggregateableClassifierErrorsPlotInstances.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator$EvaluationTask.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator$EvaluationTask.class
new file mode 100644
index 00000000..82121e56
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator$EvaluationTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator.class
new file mode 100644
index 00000000..407702c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorBeanInfo.class
new file mode 100644
index 00000000..96088e7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$1.class
new file mode 100644
index 00000000..cdfc76b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$2.class
new file mode 100644
index 00000000..c604c37e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$3.class
new file mode 100644
index 00000000..a6a81685
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer.class
new file mode 100644
index 00000000..4f087b5b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClassifierPerformanceEvaluatorCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Clusterer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Clusterer$1.class
new file mode 100644
index 00000000..687d7568
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Clusterer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Clusterer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Clusterer.class
new file mode 100644
index 00000000..3f67fcf6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Clusterer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererBeanInfo.class
new file mode 100644
index 00000000..1eef300c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer$1.class
new file mode 100644
index 00000000..d784e2dd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer$2.class
new file mode 100644
index 00000000..98597f84
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer.class
new file mode 100644
index 00000000..c5a2a522
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluator$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluator$1.class
new file mode 100644
index 00000000..d09ac0b1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluator$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluator.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluator.class
new file mode 100644
index 00000000..a0369126
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluatorBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluatorBeanInfo.class
new file mode 100644
index 00000000..61562758
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ClustererPerformanceEvaluatorBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationEvent.class
new file mode 100644
index 00000000..6aef0789
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationListener.class
new file mode 100644
index 00000000..d0480bea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationProducer.class
new file mode 100644
index 00000000..b5d15a86
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ConfigurationProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ConnectionNotificationConsumer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ConnectionNotificationConsumer.class
new file mode 100644
index 00000000..dd8e12bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ConnectionNotificationConsumer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$1.class
new file mode 100644
index 00000000..625abd2e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$2.class
new file mode 100644
index 00000000..2c048969
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$1.class
new file mode 100644
index 00000000..fc1eb872
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$2.class
new file mode 100644
index 00000000..f0e028bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$3.class
new file mode 100644
index 00000000..99ba112e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$4.class
new file mode 100644
index 00000000..1b05a5b7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$5.class
new file mode 100644
index 00000000..0b08e192
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$6.class
new file mode 100644
index 00000000..e6775026
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$ConfusionCell$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$ConfusionCell$1.class
new file mode 100644
index 00000000..374468a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$ConfusionCell$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$ConfusionCell.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$ConfusionCell.class
new file mode 100644
index 00000000..0177e830
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel$ConfusionCell.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel.class
new file mode 100644
index 00000000..e62e7945
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis$AnalysisPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis.class
new file mode 100644
index 00000000..3e4a4691
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysis.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysisBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysisBeanInfo.class
new file mode 100644
index 00000000..cb5ae375
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CostBenefitAnalysisBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMaker$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMaker$1.class
new file mode 100644
index 00000000..07a43675
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMaker$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMaker.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMaker.class
new file mode 100644
index 00000000..3d8aca82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerBeanInfo.class
new file mode 100644
index 00000000..fbf0e157
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer$1.class
new file mode 100644
index 00000000..95d98baa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer$2.class
new file mode 100644
index 00000000..7e61a116
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer.class
new file mode 100644
index 00000000..fa082243
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CrossValidationFoldMakerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CustomizerCloseRequester.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CustomizerCloseRequester.class
new file mode 100644
index 00000000..d418e38d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CustomizerCloseRequester.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/CustomizerClosingListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/CustomizerClosingListener.class
new file mode 100644
index 00000000..249b199d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/CustomizerClosingListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataFormatListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataFormatListener.class
new file mode 100644
index 00000000..75fd927f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataFormatListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataSetEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSetEvent.class
new file mode 100644
index 00000000..23138302
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSetEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataSink.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSink.class
new file mode 100644
index 00000000..6dbaa973
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSink.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataSource.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSource.class
new file mode 100644
index 00000000..cd6e7e35
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSource.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataSourceListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSourceListener.class
new file mode 100644
index 00000000..f0c07148
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataSourceListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer$1.class
new file mode 100644
index 00000000..1a0059ab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer$2.class
new file mode 100644
index 00000000..6a3badfd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer.class
new file mode 100644
index 00000000..9657a981
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerBeanInfo.class
new file mode 100644
index 00000000..91050a4e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$1.class
new file mode 100644
index 00000000..f49ad994
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$2.class
new file mode 100644
index 00000000..ee5d13f1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$3.class
new file mode 100644
index 00000000..4dcb4720
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer.class
new file mode 100644
index 00000000..aaf652d3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/DataVisualizerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$1.class
new file mode 100644
index 00000000..42032d51
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$2.class
new file mode 100644
index 00000000..cd78a944
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$3.class
new file mode 100644
index 00000000..9934ccd0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$4.class
new file mode 100644
index 00000000..8ff7225f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$5.class
new file mode 100644
index 00000000..a694bc9c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$6.class
new file mode 100644
index 00000000..91985cc4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$7.class
new file mode 100644
index 00000000..d4b72dba
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$WideComboBox.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$WideComboBox.class
new file mode 100644
index 00000000..a19f0071
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField$WideComboBox.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField.class
new file mode 100644
index 00000000..44793316
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EnvironmentField.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/EventConstraints.class b/workflow/apps/java/clustering/bin/weka/gui/beans/EventConstraints.class
new file mode 100644
index 00000000..05dd66f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/EventConstraints.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField$1.class
new file mode 100644
index 00000000..1197ce56
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField$2.class
new file mode 100644
index 00000000..bc203402
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField.class
new file mode 100644
index 00000000..9498ebde
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FileEnvironmentField.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Filter$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Filter$1.class
new file mode 100644
index 00000000..02b4466d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Filter$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Filter$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Filter$2.class
new file mode 100644
index 00000000..17c53d4f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Filter$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Filter.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Filter.class
new file mode 100644
index 00000000..a0b9e4ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Filter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FilterBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterBeanInfo.class
new file mode 100644
index 00000000..76b6c0df
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer$1.class
new file mode 100644
index 00000000..20a74643
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer$2.class
new file mode 100644
index 00000000..107504f9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer.class
new file mode 100644
index 00000000..a391a122
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FilterCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$1.class
new file mode 100644
index 00000000..22410ac3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$BracketNode.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$BracketNode.class
new file mode 100644
index 00000000..9be3a71f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$BracketNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$1.class
new file mode 100644
index 00000000..42d8d790
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$10.class
new file mode 100644
index 00000000..47c6bcd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$11.class
new file mode 100644
index 00000000..792caf79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$2.class
new file mode 100644
index 00000000..353f2a82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$3.class
new file mode 100644
index 00000000..873d52fb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$4.class
new file mode 100644
index 00000000..e3074afc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$5.class
new file mode 100644
index 00000000..41a6673d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$6.class
new file mode 100644
index 00000000..0bfbd3b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$7.class
new file mode 100644
index 00000000..d5efe4af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$8.class
new file mode 100644
index 00000000..fc08ab1d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$9.class
new file mode 100644
index 00000000..33df0ab5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType.class
new file mode 100644
index 00000000..eaeb6dea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause$ExpressionType.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause.class
new file mode 100644
index 00000000..732f553b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionClause.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionNode.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionNode.class
new file mode 100644
index 00000000..c3c190e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression$ExpressionNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression.class
new file mode 100644
index 00000000..671edfa4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpression.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionBeanInfo.class
new file mode 100644
index 00000000..ac9b2bd9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$1.class
new file mode 100644
index 00000000..c0e9d7e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$10.class
new file mode 100644
index 00000000..40aab24c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$11.class
new file mode 100644
index 00000000..dbcb45bd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$12.class
new file mode 100644
index 00000000..7e446e0e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$13.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$13.class
new file mode 100644
index 00000000..6e22b971
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$14.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$14.class
new file mode 100644
index 00000000..f89f1b4f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$2.class
new file mode 100644
index 00000000..f1065b42
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$3.class
new file mode 100644
index 00000000..6b359965
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$4.class
new file mode 100644
index 00000000..df84bfc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$5.class
new file mode 100644
index 00000000..26ba22e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$6.class
new file mode 100644
index 00000000..3909fa43
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$7.class
new file mode 100644
index 00000000..cbb115f9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$8.class
new file mode 100644
index 00000000..d274198f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$9.class
new file mode 100644
index 00000000..8f280f3e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer.class
new file mode 100644
index 00000000..7e3615dd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowByExpressionCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner$1.class
new file mode 100644
index 00000000..c62f32fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner$SimpleLogger.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner$SimpleLogger.class
new file mode 100644
index 00000000..abd8cf03
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner$SimpleLogger.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner.class b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner.class
new file mode 100644
index 00000000..f3f38497
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/FlowRunner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GOECustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GOECustomizer.class
new file mode 100644
index 00000000..1e54a55e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GOECustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphEvent.class
new file mode 100644
index 00000000..4088719e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphListener.class
new file mode 100644
index 00000000..12281fd9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$1.class
new file mode 100644
index 00000000..e3fded1a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$2.class
new file mode 100644
index 00000000..f992be6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$3.class
new file mode 100644
index 00000000..c90e15b1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$4.class
new file mode 100644
index 00000000..b16cc8a0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer.class
new file mode 100644
index 00000000..2291c5d2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewerBeanInfo.class
new file mode 100644
index 00000000..837b17c1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/GraphViewerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/HeadlessEventCollector.class b/workflow/apps/java/clustering/bin/weka/gui/beans/HeadlessEventCollector.class
new file mode 100644
index 00000000..12d98590
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/HeadlessEventCollector.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageEvent.class
new file mode 100644
index 00000000..de346944
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageListener.class
new file mode 100644
index 00000000..2a3d6fca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaver.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaver.class
new file mode 100644
index 00000000..a7ef54e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverBeanInfo.class
new file mode 100644
index 00000000..32976f5a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer$1.class
new file mode 100644
index 00000000..02ea57a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer$2.class
new file mode 100644
index 00000000..e7bbd832
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer.class
new file mode 100644
index 00000000..518292cc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageSaverCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$1.class
new file mode 100644
index 00000000..e95f4a39
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$2.class
new file mode 100644
index 00000000..871b03f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$3.class
new file mode 100644
index 00000000..c91c420b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$ImageDisplayer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$ImageDisplayer.class
new file mode 100644
index 00000000..01dcaf13
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$ImageDisplayer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel$1.class
new file mode 100644
index 00000000..22939e17
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel$2.class
new file mode 100644
index 00000000..810dbadb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel.class
new file mode 100644
index 00000000..7144b307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer$MainPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer.class
new file mode 100644
index 00000000..06e06053
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewerBeanInfo.class
new file mode 100644
index 00000000..1849bda5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ImageViewerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluator.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluator.class
new file mode 100644
index 00000000..2ce43d70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorBeanInfo.class
new file mode 100644
index 00000000..f1ec42e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer$1.class
new file mode 100644
index 00000000..0dd7d812
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer$2.class
new file mode 100644
index 00000000..4cbc01ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer.class
new file mode 100644
index 00000000..5984d258
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvaluatorCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvent.class
new file mode 100644
index 00000000..78315ff2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierListener.class
new file mode 100644
index 00000000..6cb88634
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/IncrementalClassifierListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceEvent.class
new file mode 100644
index 00000000..e6fb5e0d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceListener.class
new file mode 100644
index 00000000..8ddd9668
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceStreamToBatchMaker.class b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceStreamToBatchMaker.class
new file mode 100644
index 00000000..a0737ace
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceStreamToBatchMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceStreamToBatchMakerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceStreamToBatchMakerBeanInfo.class
new file mode 100644
index 00000000..4ed332ba
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/InstanceStreamToBatchMakerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/InteractiveTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/InteractiveTableModel.class
new file mode 100644
index 00000000..5a80eac2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/InteractiveTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/InteractiveTablePanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/InteractiveTablePanel.class
new file mode 100644
index 00000000..5a35ca6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/InteractiveTablePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Join$InstanceHolder.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Join$InstanceHolder.class
new file mode 100644
index 00000000..0bd0d5b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Join$InstanceHolder.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Join.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Join.class
new file mode 100644
index 00000000..7fb7435f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Join.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinBeanInfo.class
new file mode 100644
index 00000000..a3599153
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$1.class
new file mode 100644
index 00000000..91785f6b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$10.class
new file mode 100644
index 00000000..7cb7e514
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$11.class
new file mode 100644
index 00000000..b91987eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$12.class
new file mode 100644
index 00000000..18a053d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$2.class
new file mode 100644
index 00000000..e1bebc9f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$3.class
new file mode 100644
index 00000000..db0d6f5c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$4.class
new file mode 100644
index 00000000..71fc549e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$5.class
new file mode 100644
index 00000000..7e7218a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$6.class
new file mode 100644
index 00000000..4fe1cad0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$7.class
new file mode 100644
index 00000000..5403372e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$8.class
new file mode 100644
index 00000000..ae553c54
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$9.class
new file mode 100644
index 00000000..d9fbb005
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer.class
new file mode 100644
index 00000000..ebd35ac8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/JoinCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KFIgnore.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KFIgnore.class
new file mode 100644
index 00000000..ad9518da
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KFIgnore.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KFStep.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KFStep.class
new file mode 100644
index 00000000..ff01125c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KFStep.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow$1.class
new file mode 100644
index 00000000..afd4735e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow$2.class
new file mode 100644
index 00000000..c6f9b16c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow.class
new file mode 100644
index 00000000..7db5dd1e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlow.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$1.class
new file mode 100644
index 00000000..84bcb297
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$10.class
new file mode 100644
index 00000000..edd96e0f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$11.class
new file mode 100644
index 00000000..de24f551
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$12.class
new file mode 100644
index 00000000..c4c0cb49
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$13.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$13.class
new file mode 100644
index 00000000..c2e64d1c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$14.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$14.class
new file mode 100644
index 00000000..7ca0a1d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$15.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$15.class
new file mode 100644
index 00000000..abcf62dd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$16.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$16.class
new file mode 100644
index 00000000..a819a55d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$17.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$17.class
new file mode 100644
index 00000000..1b606e18
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$18.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$18.class
new file mode 100644
index 00000000..14a2b803
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$19.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$19.class
new file mode 100644
index 00000000..a16d92b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$2.class
new file mode 100644
index 00000000..7046e551
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$20.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$20.class
new file mode 100644
index 00000000..c18f8b11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$21$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$21$1.class
new file mode 100644
index 00000000..d419d9cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$21$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$21.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$21.class
new file mode 100644
index 00000000..062896ed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$22$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$22$1.class
new file mode 100644
index 00000000..356f0361
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$22$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$22.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$22.class
new file mode 100644
index 00000000..f0ee41f2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$23.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$23.class
new file mode 100644
index 00000000..fa4352b4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$24.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$24.class
new file mode 100644
index 00000000..d8be55b3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$25.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$25.class
new file mode 100644
index 00000000..fc3b3326
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$26.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$26.class
new file mode 100644
index 00000000..8528333c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$27.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$27.class
new file mode 100644
index 00000000..b3af1159
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$28.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$28.class
new file mode 100644
index 00000000..88640dd8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$29.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$29.class
new file mode 100644
index 00000000..26f47ec9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$3.class
new file mode 100644
index 00000000..47ac10c9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$30.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$30.class
new file mode 100644
index 00000000..b0401266
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$31.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$31.class
new file mode 100644
index 00000000..2f3c08d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$32.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$32.class
new file mode 100644
index 00000000..ec05132d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$33.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$33.class
new file mode 100644
index 00000000..fb4efcf5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$33.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$4.class
new file mode 100644
index 00000000..8aa3c58d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$5.class
new file mode 100644
index 00000000..091b84eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$6.class
new file mode 100644
index 00000000..f1ea2838
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$7.class
new file mode 100644
index 00000000..238c29ed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$8.class
new file mode 100644
index 00000000..5f69f65a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$9.class
new file mode 100644
index 00000000..c502e99e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$BeanIconRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$BeanIconRenderer.class
new file mode 100644
index 00000000..e9e99934
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$BeanIconRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$BeanLayout.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$BeanLayout.class
new file mode 100644
index 00000000..ab327953
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$BeanLayout.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$1.class
new file mode 100644
index 00000000..b5c85d0a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$TabButton$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$TabButton$1.class
new file mode 100644
index 00000000..37ed1435
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$TabButton$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$TabButton.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$TabButton.class
new file mode 100644
index 00000000..20a81a54
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle$TabButton.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle.class
new file mode 100644
index 00000000..1b869a77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$CloseableTabTitle.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$InvisibleNode.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$InvisibleNode.class
new file mode 100644
index 00000000..4fa6c0d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$InvisibleNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$InvisibleTreeModel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$InvisibleTreeModel.class
new file mode 100644
index 00000000..1b008048
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$InvisibleTreeModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$JTreeLeafDetails.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$JTreeLeafDetails.class
new file mode 100644
index 00000000..c3db9050
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$JTreeLeafDetails.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$KFLogPanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$KFLogPanel.class
new file mode 100644
index 00000000..e6bfa026
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$KFLogPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$KFPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$KFPerspective.class
new file mode 100644
index 00000000..29a8991e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$KFPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$1.class
new file mode 100644
index 00000000..e4946b6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$10.class
new file mode 100644
index 00000000..88e30fb3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$11.class
new file mode 100644
index 00000000..978f0ed8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$12.class
new file mode 100644
index 00000000..75936d2b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$13.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$13.class
new file mode 100644
index 00000000..1aa4dc55
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$14.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$14.class
new file mode 100644
index 00000000..24e4414f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$15.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$15.class
new file mode 100644
index 00000000..a17e4fef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$16.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$16.class
new file mode 100644
index 00000000..1093fdf1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$17.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$17.class
new file mode 100644
index 00000000..ca9f7825
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$18.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$18.class
new file mode 100644
index 00000000..9a0b4f00
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$19.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$19.class
new file mode 100644
index 00000000..125c0e34
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$2.class
new file mode 100644
index 00000000..18b1c47e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$20.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$20.class
new file mode 100644
index 00000000..1685f072
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$21.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$21.class
new file mode 100644
index 00000000..9e8f6460
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$22.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$22.class
new file mode 100644
index 00000000..89c6a831
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$23.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$23.class
new file mode 100644
index 00000000..5020db09
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$24.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$24.class
new file mode 100644
index 00000000..dc6577d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$25.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$25.class
new file mode 100644
index 00000000..7693aed5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$26.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$26.class
new file mode 100644
index 00000000..071e442b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$27.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$27.class
new file mode 100644
index 00000000..b3ff91fd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$28.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$28.class
new file mode 100644
index 00000000..0c3272f8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$29.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$29.class
new file mode 100644
index 00000000..4524c441
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$3.class
new file mode 100644
index 00000000..037aa9ee
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$30.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$30.class
new file mode 100644
index 00000000..6b259465
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$31.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$31.class
new file mode 100644
index 00000000..09714207
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$32.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$32.class
new file mode 100644
index 00000000..04e21266
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$33.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$33.class
new file mode 100644
index 00000000..e435edd7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$33.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$34.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$34.class
new file mode 100644
index 00000000..96c88e9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$34.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$35.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$35.class
new file mode 100644
index 00000000..d265b3ff
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$35.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$36.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$36.class
new file mode 100644
index 00000000..b7b84028
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$36.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$37.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$37.class
new file mode 100644
index 00000000..53f3e9b5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$37.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$38.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$38.class
new file mode 100644
index 00000000..54dc523c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$38.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$39.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$39.class
new file mode 100644
index 00000000..023a61c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$39.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$4.class
new file mode 100644
index 00000000..2b7bd6a4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$40.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$40.class
new file mode 100644
index 00000000..5b8a08e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$40.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$41.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$41.class
new file mode 100644
index 00000000..e18125f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$41.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$42.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$42.class
new file mode 100644
index 00000000..15c95532
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$42.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$43.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$43.class
new file mode 100644
index 00000000..3b552783
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$43.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$5.class
new file mode 100644
index 00000000..8a2ac663
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$6.class
new file mode 100644
index 00000000..7b6ea161
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$7.class
new file mode 100644
index 00000000..0e82f798
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$8.class
new file mode 100644
index 00000000..a32d51f4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$9.class
new file mode 100644
index 00000000..59b92567
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective.class
new file mode 100644
index 00000000..e2fd407e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$MainKFPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$RunThread.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$RunThread.class
new file mode 100644
index 00000000..ca523e24
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp$RunThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp.class b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp.class
new file mode 100644
index 00000000..6a303ba3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/KnowledgeFlowApp.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$1.class
new file mode 100644
index 00000000..68a224c9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$2.class
new file mode 100644
index 00000000..6f02698d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$LoadThread.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$LoadThread.class
new file mode 100644
index 00000000..784f11b6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader$LoadThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Loader.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader.class
new file mode 100644
index 00000000..cf5e4e8c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Loader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderBeanInfo.class
new file mode 100644
index 00000000..26f57828
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$1.class
new file mode 100644
index 00000000..59eaf516
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$2.class
new file mode 100644
index 00000000..b8bf6335
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$3.class
new file mode 100644
index 00000000..4b505b92
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$4.class
new file mode 100644
index 00000000..83507fd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$5.class
new file mode 100644
index 00000000..30d4d8c5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$6.class
new file mode 100644
index 00000000..7fb8f2ad
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$7.class
new file mode 100644
index 00000000..ab9b4456
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$8.class
new file mode 100644
index 00000000..ddd121e6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$9.class
new file mode 100644
index 00000000..c834dd9e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer.class
new file mode 100644
index 00000000..77946411
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LoaderCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$1.class
new file mode 100644
index 00000000..257073d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$2.class
new file mode 100644
index 00000000..97995bf3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$3.class
new file mode 100644
index 00000000..b5a7dc50
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$4.class
new file mode 100644
index 00000000..98f033d7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$5$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$5$1.class
new file mode 100644
index 00000000..81c409ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$5$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$5.class
new file mode 100644
index 00000000..df23593f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$6.class
new file mode 100644
index 00000000..09a3ecb8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel.class
new file mode 100644
index 00000000..2b1c6473
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/LogWriter.class b/workflow/apps/java/clustering/bin/weka/gui/beans/LogWriter.class
new file mode 100644
index 00000000..8ec2dbb8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/LogWriter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean$1.class
new file mode 100644
index 00000000..2367d17e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean$2.class
new file mode 100644
index 00000000..44d61613
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean.class b/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean.class
new file mode 100644
index 00000000..f07d21dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/MetaBean.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart$1.class
new file mode 100644
index 00000000..8dc28ab3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart$2.class
new file mode 100644
index 00000000..c04495a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart.class
new file mode 100644
index 00000000..1dc94f7e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChart.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartBeanInfo.class
new file mode 100644
index 00000000..7ef1882a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$1.class
new file mode 100644
index 00000000..1f0f1a2a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$2.class
new file mode 100644
index 00000000..37df959c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$3.class
new file mode 100644
index 00000000..d6c49b14
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer.class
new file mode 100644
index 00000000..2855dc32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ModelPerformanceChartCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Note.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Note.class
new file mode 100644
index 00000000..fe4c1690
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Note.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/NoteBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/NoteBeanInfo.class
new file mode 100644
index 00000000..8c9f406b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/NoteBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/NoteCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/NoteCustomizer$1.class
new file mode 100644
index 00000000..4b9fdda8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/NoteCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/NoteCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/NoteCustomizer.class
new file mode 100644
index 00000000..34cdfab1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/NoteCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/OffscreenChartRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/OffscreenChartRenderer.class
new file mode 100644
index 00000000..e6defc79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/OffscreenChartRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/PluginManager.class b/workflow/apps/java/clustering/bin/weka/gui/beans/PluginManager.class
new file mode 100644
index 00000000..baf5cde4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/PluginManager.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppender.class b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppender.class
new file mode 100644
index 00000000..e07ea32c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppender.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderBeanInfo.class
new file mode 100644
index 00000000..dad89ddc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer$1.class
new file mode 100644
index 00000000..a6d2fcbd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer$2.class
new file mode 100644
index 00000000..5f8c7225
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer.class
new file mode 100644
index 00000000..fc1cfa75
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/PredictionAppenderCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/README_KnowledgeFlow b/workflow/apps/java/clustering/bin/weka/gui/beans/README_KnowledgeFlow
new file mode 100644
index 00000000..ba5867fe
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/README_KnowledgeFlow
@@ -0,0 +1,202 @@
+===============================================================
+KnowledgeFlow GUI Quick Primer
+===============================================================
+
+What's new in the KnowledgeFlow:
+
+The KnowledgeFlow has undergone a major UI overhaul in Weka 3.7.4. New
+features include:
+
+* Move from tabbed toolbars of components to a tree
+* Multiple flow layouts (each in its own tab)
+* New icons for general controls
+* Support for cut, copy, paste and delete of multiple components
+* "Save as" as well as "Save"
+* Informational notes can now be added to the layout
+* Undo buffer
+* "Select all" button
+* Drag multiple components
+* Snap-to-grid
+* New buttons to run flow in parallel mode (all data sources launched simultaneously)
+ and sequential mode (data sources launched one after the other in an order
+ specified by the user)
+* Template flows demonstrating example learning processes
+* Plugin "perspectives" that allow additional functionality to take over
+ the main UI
+
+Introduction:
+
+The KnowledgeFlow provides an alternative to the Explorer as a
+graphical front end to Weka's core algorithms. It presents a
+"data-flow" inspired interface to Weka. The user can select Weka
+components from a pallete, place them on a layout canvas and connect
+them together in order to form a "knowledge flow" for processing and
+analyzing data. At present, all of Weka's classifiers, filters,
+clusterers, loaders and savers are available in the KnowledgeFlow
+along with some extra tools.
+
+The KnowledgeFlow can handle data either incrementally or in batches
+(the Explorer handles batch data only). Of course learning from data
+incrementally requires a classifier that can be updated on an instance
+by instance basis. There are a number of schemes that can handle data
+incrementally: NaiveBayesUpdateable, IB1, IBk, LWR (locally weighted
+regression), SGD, SPegasos, Cobweb and RacedIncrementalLogitBoost.
+
+Features of the KnowledgeFlow:
+
+* intuitive data flow style layout
+* process data in batches or incrementally
+* process multiple batches or streams in parallel! (each separate flow
+ executes in its own thread). Alternatively, multiple streams can be
+ executed sequentially, in a user-specified order
+* chain filters together
+* view models produced by classifiers for each fold in a cross validation
+* visualize performance of incremental classifiers during
+ processing (scrolling plots of classification accuracy, RMS error,
+ predictions etc)
+* access additional non flow-based functionality through plugin
+ "perspectives"
+
+Components available in the KnowledgeFlow:
+
+DataSources:
+ All of Weka's loaders are available
+
+DataSinks:
+ All of Weka's savers are available
+
+Filters:
+ All of Weka's filters are available
+
+Classifiers:
+ All of Weka's classifiers are available
+
+Clusterers:
+ All of Weka's clusterers are available
+
+Evaluation:
+ TrainingSetMaker - make a data set into a training set
+ TestSetMaker - make a data set into a test set
+ CrossValidationFoldMaker - split any data set, training set or test set
+ into folds
+ TrainTestSplitMaker - split any data set, training set or test set into
+ a training set and a test set
+ ClassAssigner - assign a column to be the class for any data set, training
+ set or test set
+ ClassValuePicker - choose a class value to be considered as the "positive"
+ class. This is useful when generating data for ROC style curves (see
+ below)
+ ClassifierPerformanceEvaluator - evaluate the performance of batch
+ trained/tested classifiers
+ IncrementalClassifierEvaluator - evaluate the performance of incrementally
+ trained classifiers
+ ClustererPerformanceEvaluator - evaluate the performance of batch
+ trained/tested clusterers
+ PredictionAppender - append classifier predictions to a test set. For
+ discrete class problems, can either append predicted class labels or
+ probability distributions
+ SerializedModelSaver - save a classifier out to a file for later use.
+
+Visualization:
+ DataVisualizer - component that can pop up a panel for visualizing data in
+ a single large 2D scatter plot
+ ScatterPlotMatrix - component that can pop up a panel containing a matrix of
+ small scatter plots (clicking on a small plot pops up a large scatter
+ plot)
+ AttributeSummarizer - component that can pop up a panel containing a matrix
+ of histogram plots - one for each of the attributes in the input data
+ ModelPerformanceChart - component that can pop up a panel for visualizing
+ threshold (i.e. ROC style) curves.
+ TextViewer - component for showing textual data. Can show data sets,
+ classification performance statistics etc.
+ GraphViewer - component that can pop up a panel for visualizing tree based
+ models
+ StripChart - component that can pop up a panel that displays a scrolling
+ plot of data (used for viewing the online performance of incremental
+ classifiers)
+ CostBenefitAnalysis - interactively and graphically explore the effects
+ of changing costs/benefits and adjusting prediction thresholds.
+
+
+---------------
+
+Launching the KnowledgeFlow:
+
+The Weka GUI Chooser window is used to launch Weka's graphical
+environments. Select the button labeled "KnowledgeFlow" to start the
+KnowledgeFlow. Alternatively, you can launch the KnowledgeFlow from a
+terminal window by typing "java weka.gui.beans.KnowledgeFlow".
+
+EXAMPLE:
+-----------------
+Setting up a flow to load an arff file (batch mode) and
+perform a cross validation using J48 (Weka's C4.5 implementation). NOTE,
+this example ("Cross validation") can be accessed from the Templates
+button (third in from the right in the toolbar) in the KnowledgeFlow
+UI.
+
+First start the KnowlegeFlow.
+
+Next expand the DataSources entry in the tree and choose "ArffLoader"
+from the toolbar (the mouse pointer will change to a "cross hairs").
+
+Next place the ArffLoader component on the layout area by clicking
+somewhere on the layout (A copy of the ArffLoader icon will appear on
+the layout area).
+
+Next specify an arff file to load by first right clicking the mouse
+over the ArffLoader icon on the layout. A pop-up menu will
+appear. Select "Configure" under "Edit" in the list from this menu and
+browse to the location of your arff file. Alternatively, you can
+double-click on the icon to bring up the configuration dialog (if
+the component in question has one).
+
+Next expand the "Evaluation" entry in the tree and choose the
+"ClassAssigner" (allows you to choose which column to be the class)
+component from the toolbar. Place this on the layout.
+
+Now connect the ArffLoader to the ClassAssigner: first right click
+over the ArffLoader and select the "dataSet" under "Connections" in
+the menu. A "rubber band" line will appear. Move the mouse over the
+ClassAssigner component and left click - a red line labeled "dataSet"
+will connect the two components.
+
+Next right click over the ClassAssigner and choose "Configure" from
+the menu. This will pop up a window from which you can specify which
+column is the class in your data (last is the default).
+
+Next grab a "CrossValidationFoldMaker" component from Evaluation
+and place it on the layout. Connect the ClassAssigner to the
+CrossValidationFoldMaker by right clicking over "ClassAssigner" and
+selecting "dataSet" from under "Connections" in the menu.
+
+Next expand the "Classifiers" entry in the tree, then the "trees"
+sub-entry and select the "J48" component. Place it on the layout.
+
+Connect the CrossValidationFoldMaker to J48 TWICE by first choosing
+"trainingSet" and then "testSet" from the pop-up menu for the
+CrossValidationFoldMaker.
+
+Next go back to the "Evaluation" entry and place a
+"ClassifierPerformanceEvaluator" component on the layout. Connect J48
+to this component by selecting the "batchClassifier" entry from the
+pop-up menu for J48.
+
+Next expand the "Visualization" entry and place a "TextViewer"
+component on the layout. Connect the ClassifierPerformanceEvaluator to
+the TextViewer by selecting the "text" entry from the pop-up menu for
+ClassifierPerformanceEvaluator.
+
+Now start the flow executing by pressing the blue "play" icon at the
+top-left of the display. Progress information for the executing
+components willa appear in the "Status" area and "Log" at the bottom
+of the window.
+
+When finished you can view the results by choosing show results from
+the pop-up menu for the TextViewer component.
+
+Other cool things to add to this flow: connect a TextViewer and/or a
+GraphViewer to J48 in order to view the textual or graphical
+representations of the trees produced for each fold of the cross
+validation (this is something that is not possible in the Explorer).
+-----------------------------
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$1.class
new file mode 100644
index 00000000..2b39bd65
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$2.class
new file mode 100644
index 00000000..95961eb4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$3.class
new file mode 100644
index 00000000..0aed1b69
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective.class
new file mode 100644
index 00000000..70336336
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SQLViewerPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Saver$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Saver$1.class
new file mode 100644
index 00000000..5d68dcab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Saver$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Saver$SaveBatchThread.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Saver$SaveBatchThread.class
new file mode 100644
index 00000000..fe9da33d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Saver$SaveBatchThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Saver.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Saver.class
new file mode 100644
index 00000000..50aaaef8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Saver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverBeanInfo.class
new file mode 100644
index 00000000..6bba87e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$1.class
new file mode 100644
index 00000000..ab54b944
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$10.class
new file mode 100644
index 00000000..b274fde1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$11.class
new file mode 100644
index 00000000..f00d13eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$12.class
new file mode 100644
index 00000000..e3f197d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$13.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$13.class
new file mode 100644
index 00000000..a2972293
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$2.class
new file mode 100644
index 00000000..600c791c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$3.class
new file mode 100644
index 00000000..5c1f2699
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$4.class
new file mode 100644
index 00000000..574e8814
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$5.class
new file mode 100644
index 00000000..77f88743
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$6.class
new file mode 100644
index 00000000..84736922
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$7.class
new file mode 100644
index 00000000..79de6344
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$8.class
new file mode 100644
index 00000000..ee95a3c1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$9.class
new file mode 100644
index 00000000..db5e740e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer.class
new file mode 100644
index 00000000..2ab5a6a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SaverCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix$1.class
new file mode 100644
index 00000000..dedc349a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix$2.class
new file mode 100644
index 00000000..cc727dc5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix.class
new file mode 100644
index 00000000..80230307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrix.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrixBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrixBeanInfo.class
new file mode 100644
index 00000000..1e4d1cc5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ScatterPlotMatrixBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaver.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaver.class
new file mode 100644
index 00000000..027229ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverBeanInfo.class
new file mode 100644
index 00000000..9f04c26c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$1.class
new file mode 100644
index 00000000..30d97e38
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$2.class
new file mode 100644
index 00000000..39c78234
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$3.class
new file mode 100644
index 00000000..a020b821
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$4.class
new file mode 100644
index 00000000..c25ac9a8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$5.class
new file mode 100644
index 00000000..0ccd02ab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer.class
new file mode 100644
index 00000000..e7380a46
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SerializedModelSaverCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ShadowBorder.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ShadowBorder.class
new file mode 100644
index 00000000..9726dc41
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ShadowBorder.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$1.class
new file mode 100644
index 00000000..bf82ef03
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$InstanceHolder.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$InstanceHolder.class
new file mode 100644
index 00000000..4cf97e75
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$InstanceHolder.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$SortComparator.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$SortComparator.class
new file mode 100644
index 00000000..0c2cd5af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$SortComparator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$SortRule.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$SortRule.class
new file mode 100644
index 00000000..c5ce1e4e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter$SortRule.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter.class
new file mode 100644
index 00000000..e7f826bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Sorter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterBeanInfo.class
new file mode 100644
index 00000000..b82d8743
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$1.class
new file mode 100644
index 00000000..ac038e3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$10.class
new file mode 100644
index 00000000..f6f83087
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$2.class
new file mode 100644
index 00000000..d0673f59
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$3.class
new file mode 100644
index 00000000..6bc15e84
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$4.class
new file mode 100644
index 00000000..a1396ae1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$5.class
new file mode 100644
index 00000000..2e0839c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$6.class
new file mode 100644
index 00000000..81aee672
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$7.class
new file mode 100644
index 00000000..92170b6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$8.class
new file mode 100644
index 00000000..389f715a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$9.class
new file mode 100644
index 00000000..d2482856
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer.class
new file mode 100644
index 00000000..a825197d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SorterCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StartUpListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StartUpListener.class
new file mode 100644
index 00000000..db31fe11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StartUpListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Startable.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Startable.class
new file mode 100644
index 00000000..6fe1a97f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Startable.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StreamThroughput.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StreamThroughput.class
new file mode 100644
index 00000000..1d245fc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StreamThroughput.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$1.class
new file mode 100644
index 00000000..9121f00d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$2.class
new file mode 100644
index 00000000..66cacb7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$3.class
new file mode 100644
index 00000000..1580a25c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$LegendPanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$LegendPanel.class
new file mode 100644
index 00000000..672bffae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$LegendPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$ScalePanel.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$ScalePanel.class
new file mode 100644
index 00000000..7d91305f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$ScalePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$StripPlotter.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$StripPlotter.class
new file mode 100644
index 00000000..1ee0a131
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart$StripPlotter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart.class
new file mode 100644
index 00000000..60b90c73
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChart.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChartBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChartBeanInfo.class
new file mode 100644
index 00000000..49a8e2ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChartBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StripChartCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChartCustomizer.class
new file mode 100644
index 00000000..84ca5d8b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StripChartCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/StructureProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/StructureProducer.class
new file mode 100644
index 00000000..ee066395
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/StructureProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabeler.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabeler.class
new file mode 100644
index 00000000..bbe1fac9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabeler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerBeanInfo.class
new file mode 100644
index 00000000..667a9a01
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$1.class
new file mode 100644
index 00000000..c05c0a21
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$10.class
new file mode 100644
index 00000000..be224627
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$11.class
new file mode 100644
index 00000000..cf7af897
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$12.class
new file mode 100644
index 00000000..aa46a9be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$2.class
new file mode 100644
index 00000000..f664d5fa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$3.class
new file mode 100644
index 00000000..2289fdf2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$4.class
new file mode 100644
index 00000000..cb99fe27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$5.class
new file mode 100644
index 00000000..129c74f9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$6.class
new file mode 100644
index 00000000..a7277c1f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$7.class
new file mode 100644
index 00000000..b99e3cdc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$8.class
new file mode 100644
index 00000000..b3afbb46
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$9.class
new file mode 100644
index 00000000..996e2fd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer.class
new file mode 100644
index 00000000..1fc8cb85
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerRules$SubstringLabelerMatchRule.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerRules$SubstringLabelerMatchRule.class
new file mode 100644
index 00000000..3b45d57a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerRules$SubstringLabelerMatchRule.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerRules.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerRules.class
new file mode 100644
index 00000000..b7e27f74
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringLabelerRules.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacer.class
new file mode 100644
index 00000000..291b5a6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerBeanInfo.class
new file mode 100644
index 00000000..7887aaa5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$1.class
new file mode 100644
index 00000000..b69dd2a8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$10.class
new file mode 100644
index 00000000..5a666a6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$11.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$11.class
new file mode 100644
index 00000000..5a57c910
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$12.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$12.class
new file mode 100644
index 00000000..c29c9946
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$2.class
new file mode 100644
index 00000000..72776133
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$3.class
new file mode 100644
index 00000000..94fba88e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$4.class
new file mode 100644
index 00000000..3cd69e4c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$5.class
new file mode 100644
index 00000000..8ec150d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$6.class
new file mode 100644
index 00000000..95ba1203
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$7.class
new file mode 100644
index 00000000..5e2f76ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$8.class
new file mode 100644
index 00000000..17c020e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$9.class
new file mode 100644
index 00000000..314ec708
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer.class
new file mode 100644
index 00000000..bcb2f499
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerRules$SubstringReplacerMatchRule.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerRules$SubstringReplacerMatchRule.class
new file mode 100644
index 00000000..c7427884
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerRules$SubstringReplacerMatchRule.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerRules.class b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerRules.class
new file mode 100644
index 00000000..1a4a59d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/SubstringReplacerRules.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetEvent.class
new file mode 100644
index 00000000..83db9fd3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetListener.class
new file mode 100644
index 00000000..1f583222
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetMaker.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetMaker.class
new file mode 100644
index 00000000..9c1174dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetMakerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetMakerBeanInfo.class
new file mode 100644
index 00000000..d4e2885b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetMakerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetProducer.class
new file mode 100644
index 00000000..0650f3e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TestSetProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextEvent.class
new file mode 100644
index 00000000..155ebfeb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextListener.class
new file mode 100644
index 00000000..9027a8a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaver.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaver.class
new file mode 100644
index 00000000..ff03ae30
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverBeanInfo.class
new file mode 100644
index 00000000..ca8b5a87
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer$1.class
new file mode 100644
index 00000000..c12ba550
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer$2.class
new file mode 100644
index 00000000..48cdec45
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer.class
new file mode 100644
index 00000000..34267937
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextSaverCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$1.class
new file mode 100644
index 00000000..021b4a20
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$2.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$2.class
new file mode 100644
index 00000000..776c4335
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$3.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$3.class
new file mode 100644
index 00000000..2cea3b69
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$4.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$4.class
new file mode 100644
index 00000000..5a743426
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$5.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$5.class
new file mode 100644
index 00000000..57c9048d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$6.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$6.class
new file mode 100644
index 00000000..ea925510
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$7.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$7.class
new file mode 100644
index 00000000..21e85793
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer.class
new file mode 100644
index 00000000..fa1061e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewerBeanInfo.class
new file mode 100644
index 00000000..e69b9c73
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TextViewerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ThresholdDataEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ThresholdDataEvent.class
new file mode 100644
index 00000000..526d5909
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ThresholdDataEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/ThresholdDataListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/ThresholdDataListener.class
new file mode 100644
index 00000000..1b314df9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/ThresholdDataListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMaker$1.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMaker$1.class
new file mode 100644
index 00000000..4a63bea9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMaker$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMaker.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMaker.class
new file mode 100644
index 00000000..f700d65f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMakerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMakerBeanInfo.class
new file mode 100644
index 00000000..d97e3c1c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMakerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMakerCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMakerCustomizer.class
new file mode 100644
index 00000000..cbc63f76
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainTestSplitMakerCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetEvent.class
new file mode 100644
index 00000000..149c3f54
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetListener.class
new file mode 100644
index 00000000..cce9fea4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetMaker.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetMaker.class
new file mode 100644
index 00000000..c36ff495
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetMakerBeanInfo.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetMakerBeanInfo.class
new file mode 100644
index 00000000..325f7615
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetMakerBeanInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetProducer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetProducer.class
new file mode 100644
index 00000000..e4f6b8ce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/TrainingSetProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/UserRequestAcceptor.class b/workflow/apps/java/clustering/bin/weka/gui/beans/UserRequestAcceptor.class
new file mode 100644
index 00000000..9579c506
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/UserRequestAcceptor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/Visible.class b/workflow/apps/java/clustering/bin/weka/gui/beans/Visible.class
new file mode 100644
index 00000000..fef8c8e2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/Visible.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/VisualizableErrorEvent.class b/workflow/apps/java/clustering/bin/weka/gui/beans/VisualizableErrorEvent.class
new file mode 100644
index 00000000..7b90d6fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/VisualizableErrorEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/VisualizableErrorListener.class b/workflow/apps/java/clustering/bin/weka/gui/beans/VisualizableErrorListener.class
new file mode 100644
index 00000000..a0a21627
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/VisualizableErrorListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/WekaOffscreenChartRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/beans/WekaOffscreenChartRenderer.class
new file mode 100644
index 00000000..6605b0c7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/WekaOffscreenChartRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/WekaWrapper.class b/workflow/apps/java/clustering/bin/weka/gui/beans/WekaWrapper.class
new file mode 100644
index 00000000..df45c0c2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/WekaWrapper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ADTree.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ADTree.gif
new file mode 100644
index 00000000..c81a17a0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ADTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ADTree_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ADTree_animated.gif
new file mode 100644
index 00000000..c81a17a0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ADTree_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AODE.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AODE.gif
new file mode 100644
index 00000000..e41282b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AODE.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AODE_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AODE_animated.gif
new file mode 100644
index 00000000..e41282b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AODE_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdaBoostM1.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdaBoostM1.gif
new file mode 100644
index 00000000..ba3960e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdaBoostM1.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdaBoostM1_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdaBoostM1_animated.gif
new file mode 100644
index 00000000..ba3960e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdaBoostM1_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdditiveRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdditiveRegression.gif
new file mode 100644
index 00000000..aac15c0c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdditiveRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdditiveRegression_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdditiveRegression_animated.gif
new file mode 100644
index 00000000..aac15c0c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AdditiveRegression_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Appender.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Appender.png
new file mode 100644
index 00000000..becec227
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Appender.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffLoader.gif
new file mode 100644
index 00000000..a0f3c970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffLoader_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffLoader_animated.gif
new file mode 100644
index 00000000..a0f3c970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffLoader_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffSaver.gif
new file mode 100644
index 00000000..2afa81d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffSaver_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffSaver_animated.gif
new file mode 100644
index 00000000..2afa81d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ArffSaver_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSelectedClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSelectedClassifier.gif
new file mode 100644
index 00000000..3b8c9ef2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSelectedClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSelectedClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSelectedClassifier_animated.gif
new file mode 100644
index 00000000..3b8c9ef2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSelectedClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSummarizer.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSummarizer.gif
new file mode 100644
index 00000000..2907f5bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSummarizer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSummarizer_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSummarizer_animated.gif
new file mode 100644
index 00000000..2907f5bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/AttributeSummarizer_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Bagging.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Bagging.gif
new file mode 100644
index 00000000..1f7cf661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Bagging.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Bagging_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Bagging_animated.gif
new file mode 100644
index 00000000..1f7cf661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Bagging_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/BayesNet.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/BayesNet.gif
new file mode 100644
index 00000000..afbcecf0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/BayesNet.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/BayesNet_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/BayesNet_animated.gif
new file mode 100644
index 00000000..afbcecf0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/BayesNet_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Loader.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Loader.gif
new file mode 100644
index 00000000..8b277ae6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Loader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Loader_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Loader_animated.gif
new file mode 100644
index 00000000..8b277ae6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Loader_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Saver.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Saver.gif
new file mode 100644
index 00000000..72e3a9c1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Saver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Saver_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Saver_animated.gif
new file mode 100644
index 00000000..72e3a9c1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/C45Saver_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVLoader.gif
new file mode 100644
index 00000000..8a87b634
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVLoader_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVLoader_animated.gif
new file mode 100644
index 00000000..8a87b634
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVLoader_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVSaver.gif
new file mode 100644
index 00000000..0dfdf214
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVSaver_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVSaver_animated.gif
new file mode 100644
index 00000000..0dfdf214
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CSVSaver_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CVParameterSelection.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CVParameterSelection.gif
new file mode 100644
index 00000000..a92d506d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CVParameterSelection.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CVParameterSelection_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CVParameterSelection_animated.gif
new file mode 100644
index 00000000..a92d506d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CVParameterSelection_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassAssigner.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassAssigner.gif
new file mode 100644
index 00000000..d275c4f7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassAssigner.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassAssigner_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassAssigner_animated.gif
new file mode 100644
index 00000000..d275c4f7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassAssigner_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassBalancedND.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassBalancedND.gif
new file mode 100644
index 00000000..bc018f1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassBalancedND.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassBalancedND_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassBalancedND_animated.gif
new file mode 100644
index 00000000..bc018f1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassBalancedND_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassValuePicker.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassValuePicker.gif
new file mode 100644
index 00000000..83c96c6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassValuePicker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassValuePicker_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassValuePicker_animated.gif
new file mode 100644
index 00000000..83c96c6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassValuePicker_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassificationViaRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassificationViaRegression.gif
new file mode 100644
index 00000000..329adfed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassificationViaRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassificationViaRegression_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassificationViaRegression_animated.gif
new file mode 100644
index 00000000..329adfed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassificationViaRegression_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassifierPerformanceEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassifierPerformanceEvaluator.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassifierPerformanceEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassifierPerformanceEvaluator_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassifierPerformanceEvaluator_animated.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClassifierPerformanceEvaluator_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClustererPerformanceEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClustererPerformanceEvaluator.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClustererPerformanceEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClustererPerformanceEvaluator_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClustererPerformanceEvaluator_animated.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ClustererPerformanceEvaluator_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Cobweb.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Cobweb.gif
new file mode 100644
index 00000000..1d476c53
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Cobweb.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Cobweb_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Cobweb_animated.gif
new file mode 100644
index 00000000..1d476c53
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Cobweb_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ComplementNaiveBayes.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ComplementNaiveBayes.gif
new file mode 100644
index 00000000..1b5cdc6c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ComplementNaiveBayes.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ComplementNaiveBayes_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ComplementNaiveBayes_animated.gif
new file mode 100644
index 00000000..1b5cdc6c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ComplementNaiveBayes_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ConjunctiveRule.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ConjunctiveRule.gif
new file mode 100644
index 00000000..c41b6a3c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ConjunctiveRule.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ConjunctiveRule_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ConjunctiveRule_animated.gif
new file mode 100644
index 00000000..c41b6a3c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ConjunctiveRule_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CostSensitiveClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CostSensitiveClassifier.gif
new file mode 100644
index 00000000..0013d282
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CostSensitiveClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CostSensitiveClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CostSensitiveClassifier_animated.gif
new file mode 100644
index 00000000..0013d282
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CostSensitiveClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CrossValidationFoldMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CrossValidationFoldMaker.gif
new file mode 100644
index 00000000..4864b450
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CrossValidationFoldMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CrossValidationFoldMaker_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CrossValidationFoldMaker_animated.gif
new file mode 100644
index 00000000..4864b450
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/CrossValidationFoldMaker_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DBScan.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DBScan.gif
new file mode 100644
index 00000000..3e25285d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DBScan.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DBScan_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DBScan_animated.gif
new file mode 100644
index 00000000..3e25285d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DBScan_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Dagging.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Dagging.gif
new file mode 100644
index 00000000..c8f8c09f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Dagging.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Dagging_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Dagging_animated.gif
new file mode 100644
index 00000000..c8f8c09f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Dagging_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DataNearBalancedND.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DataNearBalancedND.gif
new file mode 100644
index 00000000..fabaf9d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DataNearBalancedND.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DataNearBalancedND_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DataNearBalancedND_animated.gif
new file mode 100644
index 00000000..fabaf9d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DataNearBalancedND_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseLoader.gif
new file mode 100644
index 00000000..1cd49816
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseLoader_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseLoader_animated.gif
new file mode 100644
index 00000000..1cd49816
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseLoader_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseSaver.gif
new file mode 100644
index 00000000..79472f8c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseSaver_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseSaver_animated.gif
new file mode 100644
index 00000000..79472f8c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DatabaseSaver_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionStump.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionStump.gif
new file mode 100644
index 00000000..9dfd3e15
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionStump.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionStump_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionStump_animated.gif
new file mode 100644
index 00000000..9dfd3e15
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionStump_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionTable.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionTable.gif
new file mode 100644
index 00000000..a57f5db8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionTable.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionTable_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionTable_animated.gif
new file mode 100644
index 00000000..a57f5db8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DecisionTable_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Decorate.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Decorate.gif
new file mode 100644
index 00000000..d46fbbb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Decorate.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Decorate_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Decorate_animated.gif
new file mode 100644
index 00000000..d46fbbb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Decorate_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultAssociator.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultAssociator.gif
new file mode 100644
index 00000000..e3bc46cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultAssociator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultAssociator_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultAssociator_animated.gif
new file mode 100644
index 00000000..e3bc46cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultAssociator_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClassifier.gif
new file mode 100644
index 00000000..27840e6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClassifier_animated.gif
new file mode 100644
index 00000000..27840e6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClusterer.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClusterer.gif
new file mode 100644
index 00000000..7324787c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClusterer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClusterer_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClusterer_animated.gif
new file mode 100644
index 00000000..7324787c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultClusterer_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSink.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSink.gif
new file mode 100644
index 00000000..2afa81d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSink.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSink_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSink_animated.gif
new file mode 100644
index 00000000..2afa81d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSink_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSource.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSource.gif
new file mode 100644
index 00000000..a0f3c970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSource.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSource_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSource_animated.gif
new file mode 100644
index 00000000..a0f3c970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataSource_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataVisualizer.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataVisualizer.gif
new file mode 100644
index 00000000..f33fb36d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataVisualizer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataVisualizer_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataVisualizer_animated.gif
new file mode 100644
index 00000000..f33fb36d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultDataVisualizer_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultEvaluator.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultEvaluator_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultEvaluator_animated.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultEvaluator_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultFilter.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultFilter.gif
new file mode 100644
index 00000000..ac312496
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultFilter.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultFilter_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultFilter_animated.gif
new file mode 100644
index 00000000..ac312496
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultFilter_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultGraph.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultGraph.gif
new file mode 100644
index 00000000..d69fd766
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultGraph.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultGraph_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultGraph_animated.gif
new file mode 100644
index 00000000..d69fd766
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultGraph_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultText.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultText.gif
new file mode 100644
index 00000000..b6a19f32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultText.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultText_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultText_animated.gif
new file mode 100644
index 00000000..b6a19f32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultText_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultTrainTest.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultTrainTest.gif
new file mode 100644
index 00000000..4a4e710a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultTrainTest.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultTrainTest_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultTrainTest_animated.gif
new file mode 100644
index 00000000..4a4e710a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DefaultTrainTest_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_bayesClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_bayesClassifier.gif
new file mode 100644
index 00000000..555548af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_bayesClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_bayesClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_bayesClassifier_animated.gif
new file mode 100644
index 00000000..555548af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_bayesClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_functionsClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_functionsClassifier.gif
new file mode 100644
index 00000000..9e121c77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_functionsClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_functionsClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_functionsClassifier_animated.gif
new file mode 100644
index 00000000..9e121c77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_functionsClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_lazyClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_lazyClassifier.gif
new file mode 100644
index 00000000..94085a3e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_lazyClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_lazyClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_lazyClassifier_animated.gif
new file mode 100644
index 00000000..94085a3e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_lazyClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_metaClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_metaClassifier.gif
new file mode 100644
index 00000000..e17d0e70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_metaClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_metaClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_metaClassifier_animated.gif
new file mode 100644
index 00000000..e17d0e70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_metaClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_miscClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_miscClassifier.gif
new file mode 100644
index 00000000..0b6d1efa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_miscClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_miscClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_miscClassifier_animated.gif
new file mode 100644
index 00000000..0b6d1efa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_miscClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_nestedDichotomiesClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_nestedDichotomiesClassifier.gif
new file mode 100644
index 00000000..e17d0e70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_nestedDichotomiesClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_nestedDichotomiesClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_nestedDichotomiesClassifier_animated.gif
new file mode 100644
index 00000000..e17d0e70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_nestedDichotomiesClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_rulesClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_rulesClassifier.gif
new file mode 100644
index 00000000..f53cac93
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_rulesClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_rulesClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_rulesClassifier_animated.gif
new file mode 100644
index 00000000..f53cac93
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_rulesClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_treeClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_treeClassifier.gif
new file mode 100644
index 00000000..7bd36ed5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_treeClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_treeClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_treeClassifier_animated.gif
new file mode 100644
index 00000000..7bd36ed5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Default_treeClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DiamondPlain.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DiamondPlain.gif
new file mode 100644
index 00000000..c30c0b03
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/DiamondPlain.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/EM.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/EM.gif
new file mode 100644
index 00000000..5ac72339
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/EM.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/EM_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/EM_animated.gif
new file mode 100644
index 00000000..5ac72339
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/EM_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/END.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/END.gif
new file mode 100644
index 00000000..d5485678
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/END.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/END_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/END_animated.gif
new file mode 100644
index 00000000..d5485678
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/END_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FarthestFirst.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FarthestFirst.gif
new file mode 100644
index 00000000..61ef6530
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FarthestFirst.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FarthestFirst_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FarthestFirst_animated.gif
new file mode 100644
index 00000000..61ef6530
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FarthestFirst_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FilteredClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FilteredClassifier.gif
new file mode 100644
index 00000000..73a4ddd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FilteredClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FilteredClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FilteredClassifier_animated.gif
new file mode 100644
index 00000000..73a4ddd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FilteredClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FlowByExpression.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FlowByExpression.png
new file mode 100644
index 00000000..f7ecf14d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/FlowByExpression.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/GaussianProcesses.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/GaussianProcesses.gif
new file mode 100644
index 00000000..5707bd77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/GaussianProcesses.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/GaussianProcesses_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/GaussianProcesses_animated.gif
new file mode 100644
index 00000000..5707bd77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/GaussianProcesses_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Grading.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Grading.gif
new file mode 100644
index 00000000..7cca6705
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Grading.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Grading_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Grading_animated.gif
new file mode 100644
index 00000000..7cca6705
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Grading_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/HNB.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/HNB.gif
new file mode 100644
index 00000000..c86dc383
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/HNB.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/HNB_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/HNB_animated.gif
new file mode 100644
index 00000000..c86dc383
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/HNB_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Help24.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Help24.gif
new file mode 100644
index 00000000..a2848d88
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Help24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IB1.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IB1.gif
new file mode 100644
index 00000000..f5bdb177
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IB1.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IB1_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IB1_animated.gif
new file mode 100644
index 00000000..f5bdb177
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IB1_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IBk.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IBk.gif
new file mode 100644
index 00000000..0c9877ee
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IBk.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IBk_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IBk_animated.gif
new file mode 100644
index 00000000..0c9877ee
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IBk_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ID3.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ID3.gif
new file mode 100644
index 00000000..9f3f6a66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ID3.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ID3_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ID3_animated.gif
new file mode 100644
index 00000000..9f3f6a66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ID3_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IncrementalClassifierEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IncrementalClassifierEvaluator.gif
new file mode 100644
index 00000000..71435198
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IncrementalClassifierEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IncrementalClassifierEvaluator_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IncrementalClassifierEvaluator_animated.gif
new file mode 100644
index 00000000..71435198
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/IncrementalClassifierEvaluator_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/InstanceStreamToBatchMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/InstanceStreamToBatchMaker.gif
new file mode 100644
index 00000000..fce4ffc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/InstanceStreamToBatchMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/InstanceStreamToBatchMaker_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/InstanceStreamToBatchMaker_animated.gif
new file mode 100644
index 00000000..fce4ffc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/InstanceStreamToBatchMaker_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/J48.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/J48.gif
new file mode 100644
index 00000000..8f8f6324
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/J48.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/J48_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/J48_animated.gif
new file mode 100644
index 00000000..8f8f6324
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/J48_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/JRip.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/JRip.gif
new file mode 100644
index 00000000..d61875ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/JRip.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/JRip_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/JRip_animated.gif
new file mode 100644
index 00000000..d61875ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/JRip_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Join.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Join.gif
new file mode 100644
index 00000000..d91622e2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Join.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/KStar.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/KStar.gif
new file mode 100644
index 00000000..4f5c8831
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/KStar.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/KStar_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/KStar_animated.gif
new file mode 100644
index 00000000..4f5c8831
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/KStar_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LBR.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LBR.gif
new file mode 100644
index 00000000..05cffce4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LBR.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LBR_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LBR_animated.gif
new file mode 100644
index 00000000..05cffce4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LBR_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LMT.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LMT.gif
new file mode 100644
index 00000000..e6af35a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LMT.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LMT_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LMT_animated.gif
new file mode 100644
index 00000000..e6af35a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LMT_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LWL.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LWL.gif
new file mode 100644
index 00000000..3c664d4a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LWL.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LWL_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LWL_animated.gif
new file mode 100644
index 00000000..3c664d4a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LWL_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LeastMedSq.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LeastMedSq.gif
new file mode 100644
index 00000000..80b4cd85
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LeastMedSq.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LeastMedSq_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LeastMedSq_animated.gif
new file mode 100644
index 00000000..80b4cd85
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LeastMedSq_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LibSVM.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LibSVM.gif
new file mode 100644
index 00000000..4b412d3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LibSVM.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LibSVM_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LibSVM_animated.gif
new file mode 100644
index 00000000..4b412d3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LibSVM_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LinearRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LinearRegression.gif
new file mode 100644
index 00000000..7fc7877a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LinearRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LinearRegression_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LinearRegression_animated.gif
new file mode 100644
index 00000000..7fc7877a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LinearRegression_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Logistic.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Logistic.gif
new file mode 100644
index 00000000..6e2e60c0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Logistic.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Logistic_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Logistic_animated.gif
new file mode 100644
index 00000000..6e2e60c0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Logistic_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LogitBoost.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LogitBoost.gif
new file mode 100644
index 00000000..c3300129
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LogitBoost.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LogitBoost_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LogitBoost_animated.gif
new file mode 100644
index 00000000..c3300129
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/LogitBoost_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5P.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5P.gif
new file mode 100644
index 00000000..35073764
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5P.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5P_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5P_animated.gif
new file mode 100644
index 00000000..35073764
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5P_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5Rules.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5Rules.gif
new file mode 100644
index 00000000..8858568f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5Rules.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5Rules_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5Rules_animated.gif
new file mode 100644
index 00000000..8858568f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/M5Rules_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MakeDensityBasedClusterer.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MakeDensityBasedClusterer.gif
new file mode 100644
index 00000000..66751bc7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MakeDensityBasedClusterer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MakeDensityBasedClusterer_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MakeDensityBasedClusterer_animated.gif
new file mode 100644
index 00000000..66751bc7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MakeDensityBasedClusterer_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MetaCost.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MetaCost.gif
new file mode 100644
index 00000000..a5cd0c98
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MetaCost.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MetaCost_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MetaCost_animated.gif
new file mode 100644
index 00000000..a5cd0c98
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MetaCost_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ModelPerformanceChart.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ModelPerformanceChart.gif
new file mode 100644
index 00000000..dc2d6664
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ModelPerformanceChart.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ModelPerformanceChart_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ModelPerformanceChart_animated.gif
new file mode 100644
index 00000000..dc2d6664
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ModelPerformanceChart_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiBoostAB.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiBoostAB.gif
new file mode 100644
index 00000000..a54cb488
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiBoostAB.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiBoostAB_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiBoostAB_animated.gif
new file mode 100644
index 00000000..a54cb488
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiBoostAB_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiClassClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiClassClassifier.gif
new file mode 100644
index 00000000..2e08ae81
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiClassClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiClassClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiClassClassifier_animated.gif
new file mode 100644
index 00000000..2e08ae81
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiClassClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiScheme.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiScheme.gif
new file mode 100644
index 00000000..f08f8f91
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiScheme.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiScheme_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiScheme_animated.gif
new file mode 100644
index 00000000..f08f8f91
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultiScheme_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultilayerPerceptron.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultilayerPerceptron.gif
new file mode 100644
index 00000000..606acf11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultilayerPerceptron.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultilayerPerceptron_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultilayerPerceptron_animated.gif
new file mode 100644
index 00000000..606acf11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/MultilayerPerceptron_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NBTree.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NBTree.gif
new file mode 100644
index 00000000..61e1db2f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NBTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NBTree_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NBTree_animated.gif
new file mode 100644
index 00000000..61e1db2f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NBTree_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NNge.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NNge.gif
new file mode 100644
index 00000000..f9779402
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NNge.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NNge_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NNge_animated.gif
new file mode 100644
index 00000000..f9779402
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NNge_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayes.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayes.gif
new file mode 100644
index 00000000..ed03d672
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayes.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesMultinomial.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesMultinomial.gif
new file mode 100644
index 00000000..8b70d1e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesMultinomial.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesMultinomial_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesMultinomial_animated.gif
new file mode 100644
index 00000000..8b70d1e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesMultinomial_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesSimple.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesSimple.gif
new file mode 100644
index 00000000..0a8515bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesSimple.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesSimple_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesSimple_animated.gif
new file mode 100644
index 00000000..0a8515bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesSimple_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesUpdateable.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesUpdateable.gif
new file mode 100644
index 00000000..061ff527
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesUpdateable.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesUpdateable_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesUpdateable_animated.gif
new file mode 100644
index 00000000..061ff527
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayesUpdateable_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayes_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayes_animated.gif
new file mode 100644
index 00000000..ed03d672
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/NaiveBayes_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/New24.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/New24.gif
new file mode 100644
index 00000000..1cc488d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/New24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OPTICS.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OPTICS.gif
new file mode 100644
index 00000000..70967c27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OPTICS.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OPTICS_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OPTICS_animated.gif
new file mode 100644
index 00000000..70967c27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OPTICS_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OneR.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OneR.gif
new file mode 100644
index 00000000..5330d1d7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OneR.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OneR_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OneR_animated.gif
new file mode 100644
index 00000000..5330d1d7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OneR_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Open24.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Open24.gif
new file mode 100644
index 00000000..2086bc29
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Open24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OrdinalClassClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OrdinalClassClassifier.gif
new file mode 100644
index 00000000..a3617dce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OrdinalClassClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OrdinalClassClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OrdinalClassClassifier_animated.gif
new file mode 100644
index 00000000..a3617dce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/OrdinalClassClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PART.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PART.gif
new file mode 100644
index 00000000..7c47fde4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PART.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PART_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PART_animated.gif
new file mode 100644
index 00000000..7c47fde4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PART_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PaceRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PaceRegression.gif
new file mode 100644
index 00000000..a27a8d23
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PaceRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PaceRegression_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PaceRegression_animated.gif
new file mode 100644
index 00000000..a27a8d23
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PaceRegression_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Pointer.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Pointer.gif
new file mode 100644
index 00000000..87278b30
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Pointer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PredictionAppender.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PredictionAppender.gif
new file mode 100644
index 00000000..5c1f32f2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PredictionAppender.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PredictionAppender_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PredictionAppender_animated.gif
new file mode 100644
index 00000000..5c1f32f2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/PredictionAppender_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Prism.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Prism.gif
new file mode 100644
index 00000000..98d435a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Prism.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Prism_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Prism_animated.gif
new file mode 100644
index 00000000..98d435a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Prism_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RBFNetwork.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RBFNetwork.gif
new file mode 100644
index 00000000..a5e028b4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RBFNetwork.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RBFNetwork_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RBFNetwork_animated.gif
new file mode 100644
index 00000000..a5e028b4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RBFNetwork_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/REPTree.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/REPTree.gif
new file mode 100644
index 00000000..2f2d6878
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/REPTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/REPTree_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/REPTree_animated.gif
new file mode 100644
index 00000000..2f2d6878
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/REPTree_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RacedIncrementalLogitBoost.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RacedIncrementalLogitBoost.gif
new file mode 100644
index 00000000..26a5ff67
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RacedIncrementalLogitBoost.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RacedIncrementalLogitBoost_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RacedIncrementalLogitBoost_animated.gif
new file mode 100644
index 00000000..26a5ff67
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RacedIncrementalLogitBoost_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomCommittee.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomCommittee.gif
new file mode 100644
index 00000000..848503c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomCommittee.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomCommittee_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomCommittee_animated.gif
new file mode 100644
index 00000000..848503c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomCommittee_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomForest.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomForest.gif
new file mode 100644
index 00000000..b2809054
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomForest.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomForest_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomForest_animated.gif
new file mode 100644
index 00000000..b2809054
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomForest_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomTree.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomTree.gif
new file mode 100644
index 00000000..06879b94
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomTree_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomTree_animated.gif
new file mode 100644
index 00000000..06879b94
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RandomTree_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RegressionByDiscretization.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RegressionByDiscretization.gif
new file mode 100644
index 00000000..378002ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RegressionByDiscretization.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RegressionByDiscretization_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RegressionByDiscretization_animated.gif
new file mode 100644
index 00000000..378002ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/RegressionByDiscretization_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMO.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMO.gif
new file mode 100644
index 00000000..1a867f66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMO.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMO_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMO_animated.gif
new file mode 100644
index 00000000..1a867f66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMO_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMOreg.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMOreg.gif
new file mode 100644
index 00000000..f2dacdb6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMOreg.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMOreg_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMOreg_animated.gif
new file mode 100644
index 00000000..f2dacdb6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SMOreg_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Save24.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Save24.gif
new file mode 100644
index 00000000..bfa98a8d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Save24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ScatterPlotMatrix.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ScatterPlotMatrix.gif
new file mode 100644
index 00000000..4f02119a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ScatterPlotMatrix.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ScatterPlotMatrix_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ScatterPlotMatrix_animated.gif
new file mode 100644
index 00000000..4f02119a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ScatterPlotMatrix_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesLoader.gif
new file mode 100644
index 00000000..97a57f8e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesLoader_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesLoader_animated.gif
new file mode 100644
index 00000000..97a57f8e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesLoader_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesSaver.gif
new file mode 100644
index 00000000..81b855f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesSaver_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesSaver_animated.gif
new file mode 100644
index 00000000..81b855f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedInstancesSaver_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedModelSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedModelSaver.gif
new file mode 100644
index 00000000..81b855f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedModelSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedModelSaver_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedModelSaver_animated.gif
new file mode 100644
index 00000000..81b855f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SerializedModelSaver_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleKMeans.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleKMeans.gif
new file mode 100644
index 00000000..331001be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleKMeans.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleKMeans_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleKMeans_animated.gif
new file mode 100644
index 00000000..331001be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleKMeans_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLinearRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLinearRegression.gif
new file mode 100644
index 00000000..3e661105
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLinearRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLinearRegression_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLinearRegression_animated.gif
new file mode 100644
index 00000000..3e661105
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLinearRegression_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLogistic.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLogistic.gif
new file mode 100644
index 00000000..f6c45db4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLogistic.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLogistic_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLogistic_animated.gif
new file mode 100644
index 00000000..f6c45db4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/SimpleLogistic_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Sorter.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Sorter.gif
new file mode 100644
index 00000000..e5404236
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Sorter.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Sorter_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Sorter_animated.gif
new file mode 100644
index 00000000..e5404236
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Sorter_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stacking.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stacking.gif
new file mode 100644
index 00000000..8ee4d74e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stacking.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StackingC.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StackingC.gif
new file mode 100644
index 00000000..79d19bfe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StackingC.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StackingC_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StackingC_animated.gif
new file mode 100644
index 00000000..79d19bfe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StackingC_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stacking_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stacking_animated.gif
new file mode 100644
index 00000000..8ee4d74e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stacking_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stop24.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stop24.gif
new file mode 100644
index 00000000..62b7743d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Stop24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StripChart.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StripChart.gif
new file mode 100644
index 00000000..5ed83a82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StripChart.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StripChart_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StripChart_animated.gif
new file mode 100644
index 00000000..5ed83a82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/StripChart_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TestSetMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TestSetMaker.gif
new file mode 100644
index 00000000..16c9261f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TestSetMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TestSetMaker_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TestSetMaker_animated.gif
new file mode 100644
index 00000000..16c9261f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TestSetMaker_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ThresholdSelector.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ThresholdSelector.gif
new file mode 100644
index 00000000..1d712c95
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ThresholdSelector.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ThresholdSelector_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ThresholdSelector_animated.gif
new file mode 100644
index 00000000..1d712c95
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ThresholdSelector_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainTestSplitMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainTestSplitMaker.gif
new file mode 100644
index 00000000..4a4e710a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainTestSplitMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainTestSplitMaker_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainTestSplitMaker_animated.gif
new file mode 100644
index 00000000..4a4e710a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainTestSplitMaker_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainingSetMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainingSetMaker.gif
new file mode 100644
index 00000000..fce4ffc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainingSetMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainingSetMaker_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainingSetMaker_animated.gif
new file mode 100644
index 00000000..fce4ffc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/TrainingSetMaker_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/UserClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/UserClassifier.gif
new file mode 100644
index 00000000..514e3b71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/UserClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/UserClassifier_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/UserClassifier_animated.gif
new file mode 100644
index 00000000..514e3b71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/UserClassifier_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Vote.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Vote.gif
new file mode 100644
index 00000000..b4aac53c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Vote.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Vote_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Vote_animated.gif
new file mode 100644
index 00000000..b4aac53c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Vote_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/VotedPerceptron.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/VotedPerceptron.gif
new file mode 100644
index 00000000..6c805307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/VotedPerceptron.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/VotedPerceptron_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/VotedPerceptron_animated.gif
new file mode 100644
index 00000000..6c805307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/VotedPerceptron_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Winnow.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Winnow.gif
new file mode 100644
index 00000000..6de9f9be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Winnow.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Winnow_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Winnow_animated.gif
new file mode 100644
index 00000000..6de9f9be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/Winnow_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/XMeans.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/XMeans.gif
new file mode 100644
index 00000000..d1110fed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/XMeans.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/XMeans_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/XMeans_animated.gif
new file mode 100644
index 00000000..d1110fed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/XMeans_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ZeroR.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ZeroR.gif
new file mode 100644
index 00000000..ac605740
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ZeroR.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ZeroR_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ZeroR_animated.gif
new file mode 100644
index 00000000..ac605740
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/ZeroR_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/application_view_tile.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/application_view_tile.png
new file mode 100644
index 00000000..3bc0bd32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/application_view_tile.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/arrow_undo.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/arrow_undo.png
new file mode 100644
index 00000000..6972c5e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/arrow_undo.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/bricks.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/bricks.png
new file mode 100644
index 00000000..0905f933
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/bricks.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/chart_bar.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/chart_bar.png
new file mode 100644
index 00000000..9051fbc6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/chart_bar.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cog.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cog.png
new file mode 100644
index 00000000..67de2c6c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cog.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cog_go.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cog_go.png
new file mode 100644
index 00000000..3262767c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cog_go.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cursor.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cursor.png
new file mode 100644
index 00000000..532f532d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cursor.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cut.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cut.png
new file mode 100644
index 00000000..f215d6f6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/cut.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/database.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/database.png
new file mode 100644
index 00000000..3d09261a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/database.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/delete.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/delete.png
new file mode 100644
index 00000000..08f24936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/delete.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/disk.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/disk.png
new file mode 100644
index 00000000..99d532e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/disk.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/disk_multiple.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/disk_multiple.png
new file mode 100644
index 00000000..fc5a52f5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/disk_multiple.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.AttributeSelection.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.AttributeSelection.gif
new file mode 100644
index 00000000..45330da8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.AttributeSelection.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.AttributeSelection_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.AttributeSelection_animated.gif
new file mode 100644
index 00000000..45330da8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.AttributeSelection_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.ClassOrder.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.ClassOrder.gif
new file mode 100644
index 00000000..d6a05ada
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.ClassOrder.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.ClassOrder_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.ClassOrder_animated.gif
new file mode 100644
index 00000000..d6a05ada
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.ClassOrder_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.Discretize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.Discretize.gif
new file mode 100644
index 00000000..02a51cd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.Discretize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.Discretize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.Discretize_animated.gif
new file mode 100644
index 00000000..02a51cd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.Discretize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.NominalToBinary.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.NominalToBinary.gif
new file mode 100644
index 00000000..4502a87e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.NominalToBinary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.NominalToBinary_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.NominalToBinary_animated.gif
new file mode 100644
index 00000000..4502a87e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.attribute.NominalToBinary_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.Resample.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.Resample.gif
new file mode 100644
index 00000000..c911010f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.Resample.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.Resample_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.Resample_animated.gif
new file mode 100644
index 00000000..c911010f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.Resample_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.SpreadSubsample.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.SpreadSubsample.gif
new file mode 100644
index 00000000..8a6f7d79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.SpreadSubsample.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.SpreadSubsample_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.SpreadSubsample_animated.gif
new file mode 100644
index 00000000..8a6f7d79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.SpreadSubsample_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.StratifiedRemoveFolds.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.StratifiedRemoveFolds.gif
new file mode 100644
index 00000000..ca450c60
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.StratifiedRemoveFolds.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.StratifiedRemoveFolds_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.StratifiedRemoveFolds_animated.gif
new file mode 100644
index 00000000..ca450c60
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.supervised.instance.StratifiedRemoveFolds_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Add.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Add.gif
new file mode 100644
index 00000000..a65aa1bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Add.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddCluster.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddCluster.gif
new file mode 100644
index 00000000..80e0c44e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddCluster.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddCluster_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddCluster_animated.gif
new file mode 100644
index 00000000..80e0c44e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddCluster_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddExpression.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddExpression.gif
new file mode 100644
index 00000000..72676f79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddExpression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddExpression_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddExpression_animated.gif
new file mode 100644
index 00000000..72676f79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddExpression_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddNoise.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddNoise.gif
new file mode 100644
index 00000000..a2e73d6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddNoise.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddNoise_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddNoise_animated.gif
new file mode 100644
index 00000000..a2e73d6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.AddNoise_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Add_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Add_animated.gif
new file mode 100644
index 00000000..a65aa1bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Add_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ClusterMembership.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ClusterMembership.gif
new file mode 100644
index 00000000..5b0a2661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ClusterMembership.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ClusterMembership_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ClusterMembership_animated.gif
new file mode 100644
index 00000000..5b0a2661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ClusterMembership_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Copy.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Copy.gif
new file mode 100644
index 00000000..abaab0bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Copy.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Copy_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Copy_animated.gif
new file mode 100644
index 00000000..abaab0bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Copy_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Discretize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Discretize.gif
new file mode 100644
index 00000000..4b211ec9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Discretize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Discretize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Discretize_animated.gif
new file mode 100644
index 00000000..4b211ec9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Discretize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.FirstOrder.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.FirstOrder.gif
new file mode 100644
index 00000000..eae91800
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.FirstOrder.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.FirstOrder_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.FirstOrder_animated.gif
new file mode 100644
index 00000000..eae91800
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.FirstOrder_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MakeIndicator.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MakeIndicator.gif
new file mode 100644
index 00000000..aca5bd1f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MakeIndicator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MakeIndicator_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MakeIndicator_animated.gif
new file mode 100644
index 00000000..aca5bd1f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MakeIndicator_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MergeTwoValues.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MergeTwoValues.gif
new file mode 100644
index 00000000..ee133a59
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MergeTwoValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MergeTwoValues_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MergeTwoValues_animated.gif
new file mode 100644
index 00000000..ee133a59
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.MergeTwoValues_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NominalToBinary.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NominalToBinary.gif
new file mode 100644
index 00000000..467deb3d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NominalToBinary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NominalToBinary_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NominalToBinary_animated.gif
new file mode 100644
index 00000000..467deb3d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NominalToBinary_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Normalize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Normalize.gif
new file mode 100644
index 00000000..649577c6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Normalize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Normalize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Normalize_animated.gif
new file mode 100644
index 00000000..649577c6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Normalize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericToBinary.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericToBinary.gif
new file mode 100644
index 00000000..40cb097c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericToBinary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericToBinary_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericToBinary_animated.gif
new file mode 100644
index 00000000..40cb097c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericToBinary_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericTransform.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericTransform.gif
new file mode 100644
index 00000000..8c4ed035
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericTransform.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericTransform_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericTransform_animated.gif
new file mode 100644
index 00000000..8c4ed035
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.NumericTransform_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Obfuscate.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Obfuscate.gif
new file mode 100644
index 00000000..3a3d51c7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Obfuscate.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Obfuscate_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Obfuscate_animated.gif
new file mode 100644
index 00000000..3a3d51c7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Obfuscate_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.PKIDiscretize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.PKIDiscretize.gif
new file mode 100644
index 00000000..6da93254
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.PKIDiscretize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.PKIDiscretize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.PKIDiscretize_animated.gif
new file mode 100644
index 00000000..6da93254
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.PKIDiscretize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RandomProjection.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RandomProjection.gif
new file mode 100644
index 00000000..34998a1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RandomProjection.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RandomProjection_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RandomProjection_animated.gif
new file mode 100644
index 00000000..34998a1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RandomProjection_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Remove.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Remove.gif
new file mode 100644
index 00000000..534550d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Remove.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveType.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveType.gif
new file mode 100644
index 00000000..7b66beb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveType.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveType_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveType_animated.gif
new file mode 100644
index 00000000..7b66beb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveType_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveUseless.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveUseless.gif
new file mode 100644
index 00000000..b49fc20a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveUseless.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveUseless_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveUseless_animated.gif
new file mode 100644
index 00000000..b49fc20a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.RemoveUseless_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Remove_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Remove_animated.gif
new file mode 100644
index 00000000..534550d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Remove_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ReplaceMissingValues.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ReplaceMissingValues.gif
new file mode 100644
index 00000000..99a6afde
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ReplaceMissingValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ReplaceMissingValues_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ReplaceMissingValues_animated.gif
new file mode 100644
index 00000000..99a6afde
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.ReplaceMissingValues_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Standardize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Standardize.gif
new file mode 100644
index 00000000..c71790f8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Standardize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Standardize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Standardize_animated.gif
new file mode 100644
index 00000000..c71790f8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.Standardize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToNominal.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToNominal.gif
new file mode 100644
index 00000000..2ffa81a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToNominal.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToNominal_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToNominal_animated.gif
new file mode 100644
index 00000000..2ffa81a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToNominal_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToWordVector.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToWordVector.gif
new file mode 100644
index 00000000..eeb11f22
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToWordVector.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToWordVector_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToWordVector_animated.gif
new file mode 100644
index 00000000..eeb11f22
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.StringToWordVector_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.SwapValues.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.SwapValues.gif
new file mode 100644
index 00000000..cde34f9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.SwapValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.SwapValues_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.SwapValues_animated.gif
new file mode 100644
index 00000000..cde34f9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.SwapValues_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesDelta.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesDelta.gif
new file mode 100644
index 00000000..e4e058d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesDelta.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesDelta_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesDelta_animated.gif
new file mode 100644
index 00000000..e4e058d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesDelta_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesTranslate.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesTranslate.gif
new file mode 100644
index 00000000..e4e058d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesTranslate.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesTranslate_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesTranslate_animated.gif
new file mode 100644
index 00000000..e4e058d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.attribute.TimeSeriesTranslate_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.NonSparseToSparse.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.NonSparseToSparse.gif
new file mode 100644
index 00000000..01e8e704
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.NonSparseToSparse.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.NonSparseToSparse_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.NonSparseToSparse_animated.gif
new file mode 100644
index 00000000..01e8e704
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.NonSparseToSparse_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Normalize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Normalize.gif
new file mode 100644
index 00000000..b92d7936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Normalize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Normalize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Normalize_animated.gif
new file mode 100644
index 00000000..b92d7936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Normalize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Randomize.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Randomize.gif
new file mode 100644
index 00000000..f6c6c580
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Randomize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Randomize_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Randomize_animated.gif
new file mode 100644
index 00000000..f6c6c580
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Randomize_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveFolds.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveFolds.gif
new file mode 100644
index 00000000..a7e14b4c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveFolds.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveFolds_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveFolds_animated.gif
new file mode 100644
index 00000000..a7e14b4c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveFolds_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveMisclassified.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveMisclassified.gif
new file mode 100644
index 00000000..d046914d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveMisclassified.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveMisclassified_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveMisclassified_animated.gif
new file mode 100644
index 00000000..d046914d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveMisclassified_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemovePercentage.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemovePercentage.gif
new file mode 100644
index 00000000..dd97328a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemovePercentage.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemovePercentage_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemovePercentage_animated.gif
new file mode 100644
index 00000000..dd97328a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemovePercentage_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveRange.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveRange.gif
new file mode 100644
index 00000000..e33d835e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveRange.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveRange_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveRange_animated.gif
new file mode 100644
index 00000000..e33d835e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveRange_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveWithValues.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveWithValues.gif
new file mode 100644
index 00000000..599b7717
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveWithValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveWithValues_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveWithValues_animated.gif
new file mode 100644
index 00000000..599b7717
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.RemoveWithValues_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Resample.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Resample.gif
new file mode 100644
index 00000000..f07fd6b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Resample.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Resample_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Resample_animated.gif
new file mode 100644
index 00000000..f07fd6b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.Resample_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.SparseToNonSparse.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.SparseToNonSparse.gif
new file mode 100644
index 00000000..156b56a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.SparseToNonSparse.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.SparseToNonSparse_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.SparseToNonSparse_animated.gif
new file mode 100644
index 00000000..156b56a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/filters.unsupervised.instance.SparseToNonSparse_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/folder_add.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/folder_add.png
new file mode 100644
index 00000000..529fe8fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/folder_add.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/help.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/help.png
new file mode 100644
index 00000000..5c870176
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/help.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/note_add.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/note_add.png
new file mode 100644
index 00000000..abdad91e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/note_add.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/page_add.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/page_add.png
new file mode 100644
index 00000000..d5bfa071
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/page_add.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/page_copy.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/page_copy.png
new file mode 100644
index 00000000..195dc6d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/page_copy.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/paste_plain.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/paste_plain.png
new file mode 100644
index 00000000..c0490eb7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/paste_plain.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/resultset_last.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/resultset_last.png
new file mode 100644
index 00000000..8ec89478
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/resultset_last.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/resultset_next.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/resultset_next.png
new file mode 100644
index 00000000..e252606d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/resultset_next.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_group.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_group.png
new file mode 100644
index 00000000..bb2ff516
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_group.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_handles.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_handles.png
new file mode 100644
index 00000000..ce27fe3a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_handles.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_square.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_square.png
new file mode 100644
index 00000000..33af0460
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/shape_square.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/splash.jpg b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/splash.jpg
new file mode 100644
index 00000000..7fd53930
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/splash.jpg differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/zoom_in.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/zoom_in.png
new file mode 100644
index 00000000..cdf0a52f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/zoom_in.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/icons/zoom_out.png b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/zoom_out.png
new file mode 100644
index 00000000..07bf98a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/icons/zoom_out.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/ROCcurves.kfml b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/ROCcurves.kfml
new file mode 100644
index 00000000..8c995c44
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/ROCcurves.kfml
@@ -0,0 +1,310 @@
+
+
+
+
+
+
+
+
+
+]
+>
+
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/credit-g.arff b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/credit-g.arff
new file mode 100644
index 00000000..a0e349a4
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/credit-g.arff
@@ -0,0 +1,1301 @@
+% Description of the German credit dataset.
+%
+% 1. Title: German Credit data
+%
+% 2. Source Information
+%
+% Professor Dr. Hans Hofmann
+% Institut f"ur Statistik und "Okonometrie
+% Universit"at Hamburg
+% FB Wirtschaftswissenschaften
+% Von-Melle-Park 5
+% 2000 Hamburg 13
+%
+% 3. Number of Instances: 1000
+%
+% Two datasets are provided. the original dataset, in the form provided
+% by Prof. Hofmann, contains categorical/symbolic attributes and
+% is in the file "german.data".
+%
+% For algorithms that need numerical attributes, Strathclyde University
+% produced the file "german.data-numeric". This file has been edited
+% and several indicator variables added to make it suitable for
+% algorithms which cannot cope with categorical variables. Several
+% attributes that are ordered categorical (such as attribute 17) have
+% been coded as integer. This was the form used by StatLog.
+%
+%
+% 6. Number of Attributes german: 20 (7 numerical, 13 categorical)
+% Number of Attributes german.numer: 24 (24 numerical)
+%
+%
+% 7. Attribute description for german
+%
+% Attribute 1: (qualitative)
+% Status of existing checking account
+% A11 : ... < 0 DM
+% A12 : 0 <= ... < 200 DM
+% A13 : ... >= 200 DM /
+% salary assignments for at least 1 year
+% A14 : no checking account
+%
+% Attribute 2: (numerical)
+% Duration in month
+%
+% Attribute 3: (qualitative)
+% Credit history
+% A30 : no credits taken/
+% all credits paid back duly
+% A31 : all credits at this bank paid back duly
+% A32 : existing credits paid back duly till now
+% A33 : delay in paying off in the past
+% A34 : critical account/
+% other credits existing (not at this bank)
+%
+% Attribute 4: (qualitative)
+% Purpose
+% A40 : car (new)
+% A41 : car (used)
+% A42 : furniture/equipment
+% A43 : radio/television
+% A44 : domestic appliances
+% A45 : repairs
+% A46 : education
+% A47 : (vacation - does not exist?)
+% A48 : retraining
+% A49 : business
+% A410 : others
+%
+% Attribute 5: (numerical)
+% Credit amount
+%
+% Attibute 6: (qualitative)
+% Savings account/bonds
+% A61 : ... < 100 DM
+% A62 : 100 <= ... < 500 DM
+% A63 : 500 <= ... < 1000 DM
+% A64 : .. >= 1000 DM
+% A65 : unknown/ no savings account
+%
+% Attribute 7: (qualitative)
+% Present employment since
+% A71 : unemployed
+% A72 : ... < 1 year
+% A73 : 1 <= ... < 4 years
+% A74 : 4 <= ... < 7 years
+% A75 : .. >= 7 years
+%
+% Attribute 8: (numerical)
+% Installment rate in percentage of disposable income
+%
+% Attribute 9: (qualitative)
+% Personal status and sex
+% A91 : male : divorced/separated
+% A92 : female : divorced/separated/married
+% A93 : male : single
+% A94 : male : married/widowed
+% A95 : female : single
+%
+% Attribute 10: (qualitative)
+% Other debtors / guarantors
+% A101 : none
+% A102 : co-applicant
+% A103 : guarantor
+%
+% Attribute 11: (numerical)
+% Present residence since
+%
+% Attribute 12: (qualitative)
+% Property
+% A121 : real estate
+% A122 : if not A121 : building society savings agreement/
+% life insurance
+% A123 : if not A121/A122 : car or other, not in attribute 6
+% A124 : unknown / no property
+%
+% Attribute 13: (numerical)
+% Age in years
+%
+% Attribute 14: (qualitative)
+% Other installment plans
+% A141 : bank
+% A142 : stores
+% A143 : none
+%
+% Attribute 15: (qualitative)
+% Housing
+% A151 : rent
+% A152 : own
+% A153 : for free
+%
+% Attribute 16: (numerical)
+% Number of existing credits at this bank
+%
+% Attribute 17: (qualitative)
+% Job
+% A171 : unemployed/ unskilled - non-resident
+% A172 : unskilled - resident
+% A173 : skilled employee / official
+% A174 : management/ self-employed/
+% highly qualified employee/ officer
+%
+% Attribute 18: (numerical)
+% Number of people being liable to provide maintenance for
+%
+% Attribute 19: (qualitative)
+% Telephone
+% A191 : none
+% A192 : yes, registered under the customers name
+%
+% Attribute 20: (qualitative)
+% foreign worker
+% A201 : yes
+% A202 : no
+%
+%
+%
+% 8. Cost Matrix
+%
+% This dataset requires use of a cost matrix (see below)
+%
+%
+% 1 2
+% ----------------------------
+% 1 0 1
+% -----------------------
+% 2 5 0
+%
+% (1 = Good, 2 = Bad)
+%
+% the rows represent the actual classification and the columns
+% the predicted classification.
+%
+% It is worse to class a customer as good when they are bad (5),
+% than it is to class a customer as bad when they are good (1).
+%
+%
+%
+%
+%
+% Relabeled values in attribute checking_status
+% From: A11 To: '<0'
+% From: A12 To: '0<=X<200'
+% From: A13 To: '>=200'
+% From: A14 To: 'no checking'
+%
+%
+% Relabeled values in attribute credit_history
+% From: A30 To: 'no credits/all paid'
+% From: A31 To: 'all paid'
+% From: A32 To: 'existing paid'
+% From: A33 To: 'delayed previously'
+% From: A34 To: 'critical/other existing credit'
+%
+%
+% Relabeled values in attribute purpose
+% From: A40 To: 'new car'
+% From: A41 To: 'used car'
+% From: A42 To: furniture/equipment
+% From: A43 To: radio/tv
+% From: A44 To: 'domestic appliance'
+% From: A45 To: repairs
+% From: A46 To: education
+% From: A47 To: vacation
+% From: A48 To: retraining
+% From: A49 To: business
+% From: A410 To: other
+%
+%
+% Relabeled values in attribute savings_status
+% From: A61 To: '<100'
+% From: A62 To: '100<=X<500'
+% From: A63 To: '500<=X<1000'
+% From: A64 To: '>=1000'
+% From: A65 To: 'no known savings'
+%
+%
+% Relabeled values in attribute employment
+% From: A71 To: unemployed
+% From: A72 To: '<1'
+% From: A73 To: '1<=X<4'
+% From: A74 To: '4<=X<7'
+% From: A75 To: '>=7'
+%
+%
+% Relabeled values in attribute personal_status
+% From: A91 To: 'male div/sep'
+% From: A92 To: 'female div/dep/mar'
+% From: A93 To: 'male single'
+% From: A94 To: 'male mar/wid'
+% From: A95 To: 'female single'
+%
+%
+% Relabeled values in attribute other_parties
+% From: A101 To: none
+% From: A102 To: 'co applicant'
+% From: A103 To: guarantor
+%
+%
+% Relabeled values in attribute property_magnitude
+% From: A121 To: 'real estate'
+% From: A122 To: 'life insurance'
+% From: A123 To: car
+% From: A124 To: 'no known property'
+%
+%
+% Relabeled values in attribute other_payment_plans
+% From: A141 To: bank
+% From: A142 To: stores
+% From: A143 To: none
+%
+%
+% Relabeled values in attribute housing
+% From: A151 To: rent
+% From: A152 To: own
+% From: A153 To: 'for free'
+%
+%
+% Relabeled values in attribute job
+% From: A171 To: 'unemp/unskilled non res'
+% From: A172 To: 'unskilled resident'
+% From: A173 To: skilled
+% From: A174 To: 'high qualif/self emp/mgmt'
+%
+%
+% Relabeled values in attribute own_telephone
+% From: A191 To: none
+% From: A192 To: yes
+%
+%
+% Relabeled values in attribute foreign_worker
+% From: A201 To: yes
+% From: A202 To: no
+%
+%
+% Relabeled values in attribute class
+% From: 1 To: good
+% From: 2 To: bad
+%
+@relation german_credit
+@attribute checking_status { '<0', '0<=X<200', '>=200', 'no checking'}
+@attribute duration real
+@attribute credit_history { 'no credits/all paid', 'all paid', 'existing paid', 'delayed previously', 'critical/other existing credit'}
+@attribute purpose { 'new car', 'used car', furniture/equipment, radio/tv, 'domestic appliance', repairs, education, vacation, retraining, business, other}
+@attribute credit_amount real
+@attribute savings_status { '<100', '100<=X<500', '500<=X<1000', '>=1000', 'no known savings'}
+@attribute employment { unemployed, '<1', '1<=X<4', '4<=X<7', '>=7'}
+@attribute installment_commitment real
+@attribute personal_status { 'male div/sep', 'female div/dep/mar', 'male single', 'male mar/wid', 'female single'}
+@attribute other_parties { none, 'co applicant', guarantor}
+@attribute residence_since real
+@attribute property_magnitude { 'real estate', 'life insurance', car, 'no known property'}
+@attribute age real
+@attribute other_payment_plans { bank, stores, none}
+@attribute housing { rent, own, 'for free'}
+@attribute existing_credits real
+@attribute job { 'unemp/unskilled non res', 'unskilled resident', skilled, 'high qualif/self emp/mgmt'}
+@attribute num_dependents real
+@attribute own_telephone { none, yes}
+@attribute foreign_worker { yes, no}
+@attribute class { good, bad}
+@data
+'<0',6,'critical/other existing credit',radio/tv,1169,'no known savings','>=7',4,'male single',none,4,'real estate',67,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',48,'existing paid',radio/tv,5951,'<100','1<=X<4',2,'female div/dep/mar',none,2,'real estate',22,none,own,1,skilled,1,none,yes,bad
+'no checking',12,'critical/other existing credit',education,2096,'<100','4<=X<7',2,'male single',none,3,'real estate',49,none,own,1,'unskilled resident',2,none,yes,good
+'<0',42,'existing paid',furniture/equipment,7882,'<100','4<=X<7',2,'male single',guarantor,4,'life insurance',45,none,'for free',1,skilled,2,none,yes,good
+'<0',24,'delayed previously','new car',4870,'<100','1<=X<4',3,'male single',none,4,'no known property',53,none,'for free',2,skilled,2,none,yes,bad
+'no checking',36,'existing paid',education,9055,'no known savings','1<=X<4',2,'male single',none,4,'no known property',35,none,'for free',1,'unskilled resident',2,yes,yes,good
+'no checking',24,'existing paid',furniture/equipment,2835,'500<=X<1000','>=7',3,'male single',none,4,'life insurance',53,none,own,1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid','used car',6948,'<100','1<=X<4',2,'male single',none,2,car,35,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,3059,'>=1000','4<=X<7',2,'male div/sep',none,4,'real estate',61,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'critical/other existing credit','new car',5234,'<100',unemployed,4,'male mar/wid',none,2,car,28,none,own,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'0<=X<200',12,'existing paid','new car',1295,'<100','<1',3,'female div/dep/mar',none,1,car,25,none,rent,1,skilled,1,none,yes,bad
+'<0',48,'existing paid',business,4308,'<100','<1',3,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',12,'existing paid',radio/tv,1567,'<100','1<=X<4',1,'female div/dep/mar',none,1,car,22,none,own,1,skilled,1,yes,yes,good
+'<0',24,'critical/other existing credit','new car',1199,'<100','>=7',4,'male single',none,4,car,60,none,own,2,'unskilled resident',1,none,yes,bad
+'<0',15,'existing paid','new car',1403,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,rent,1,skilled,1,none,yes,good
+'<0',24,'existing paid',radio/tv,1282,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,2,car,32,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,2424,'no known savings','>=7',4,'male single',none,4,'life insurance',53,none,own,2,skilled,1,none,yes,good
+'<0',30,'no credits/all paid',business,8072,'no known savings','<1',2,'male single',none,3,car,25,bank,own,3,skilled,1,none,yes,good
+'0<=X<200',24,'existing paid','used car',12579,'<100','>=7',4,'female div/dep/mar',none,2,'no known property',44,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'existing paid',radio/tv,3430,'500<=X<1000','>=7',3,'male single',none,2,car,31,none,own,1,skilled,2,yes,yes,good
+'no checking',9,'critical/other existing credit','new car',2134,'<100','1<=X<4',4,'male single',none,4,car,48,none,own,3,skilled,1,yes,yes,good
+'<0',6,'existing paid',radio/tv,2647,'500<=X<1000','1<=X<4',2,'male single',none,3,'real estate',44,none,rent,1,skilled,2,none,yes,good
+'<0',10,'critical/other existing credit','new car',2241,'<100','<1',1,'male single',none,3,'real estate',48,none,rent,2,'unskilled resident',2,none,no,good
+'0<=X<200',12,'critical/other existing credit','used car',1804,'100<=X<500','<1',3,'male single',none,4,'life insurance',44,none,own,1,skilled,1,none,yes,good
+'no checking',10,'critical/other existing credit',furniture/equipment,2069,'no known savings','1<=X<4',2,'male mar/wid',none,1,car,26,none,own,2,skilled,1,none,no,good
+'<0',6,'existing paid',furniture/equipment,1374,'<100','1<=X<4',1,'male single',none,2,'real estate',36,bank,own,1,'unskilled resident',1,yes,yes,good
+'no checking',6,'no credits/all paid',radio/tv,426,'<100','>=7',4,'male mar/wid',none,4,car,39,none,own,1,'unskilled resident',1,none,yes,good
+'>=200',12,'all paid',radio/tv,409,'>=1000','1<=X<4',3,'female div/dep/mar',none,3,'real estate',42,none,rent,2,skilled,1,none,yes,good
+'0<=X<200',7,'existing paid',radio/tv,2415,'<100','1<=X<4',3,'male single',guarantor,2,'real estate',34,none,own,1,skilled,1,none,yes,good
+'<0',60,'delayed previously',business,6836,'<100','>=7',3,'male single',none,4,'no known property',63,none,own,2,skilled,1,yes,yes,bad
+'0<=X<200',18,'existing paid',business,1913,'>=1000','<1',3,'male mar/wid',none,3,'real estate',36,bank,own,1,skilled,1,yes,yes,good
+'<0',24,'existing paid',furniture/equipment,4020,'<100','1<=X<4',2,'male single',none,2,car,27,stores,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid','new car',5866,'100<=X<500','1<=X<4',2,'male single',none,2,car,30,none,own,2,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',business,1264,'no known savings','>=7',4,'male single',none,4,'no known property',57,none,rent,1,'unskilled resident',1,none,yes,good
+'>=200',12,'existing paid',furniture/equipment,1474,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',33,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',45,'critical/other existing credit',radio/tv,4746,'<100','<1',4,'male single',none,2,'life insurance',25,none,own,2,'unskilled resident',1,none,yes,bad
+'no checking',48,'critical/other existing credit',education,6110,'<100','1<=X<4',1,'male single',none,3,'no known property',31,bank,'for free',1,skilled,1,yes,yes,good
+'>=200',18,'existing paid',radio/tv,2100,'<100','1<=X<4',4,'male single','co applicant',2,'real estate',37,stores,own,1,skilled,1,none,yes,bad
+'>=200',10,'existing paid','domestic appliance',1225,'<100','1<=X<4',2,'male single',none,2,car,37,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',9,'existing paid',radio/tv,458,'<100','1<=X<4',4,'male single',none,3,'real estate',24,none,own,1,skilled,1,none,yes,good
+'no checking',30,'existing paid',radio/tv,2333,'500<=X<1000','>=7',4,'male single',none,2,car,30,bank,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1158,'500<=X<1000','1<=X<4',3,'male div/sep',none,1,car,26,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'delayed previously',repairs,6204,'<100','1<=X<4',2,'male single',none,4,'real estate',44,none,own,1,'unskilled resident',2,yes,yes,good
+'<0',30,'critical/other existing credit','used car',6187,'100<=X<500','4<=X<7',1,'male mar/wid',none,4,car,24,none,rent,2,skilled,1,none,yes,good
+'<0',48,'critical/other existing credit','used car',6143,'<100','>=7',4,'female div/dep/mar',none,4,'no known property',58,stores,'for free',2,'unskilled resident',1,none,yes,bad
+'no checking',11,'critical/other existing credit','new car',1393,'<100','<1',4,'female div/dep/mar',none,4,car,35,none,own,2,'high qualif/self emp/mgmt',1,none,yes,good
+'no checking',36,'existing paid',radio/tv,2299,'500<=X<1000','>=7',4,'male single',none,4,car,39,none,own,1,skilled,1,none,yes,good
+'<0',6,'existing paid','used car',1352,'500<=X<1000',unemployed,1,'female div/dep/mar',none,2,'life insurance',23,none,rent,1,'unemp/unskilled non res',1,yes,yes,good
+'no checking',11,'critical/other existing credit','new car',7228,'<100','1<=X<4',1,'male single',none,4,'life insurance',39,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',12,'existing paid',radio/tv,2073,'100<=X<500','1<=X<4',4,'female div/dep/mar','co applicant',2,'real estate',28,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'delayed previously',furniture/equipment,2333,'no known savings','<1',4,'male single',none,2,'life insurance',29,bank,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',27,'delayed previously','used car',5965,'<100','>=7',1,'male single',none,2,car,30,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,1262,'<100','1<=X<4',3,'male single',none,2,car,25,none,own,1,skilled,1,none,yes,good
+'no checking',18,'existing paid','used car',3378,'no known savings','1<=X<4',2,'male single',none,1,'life insurance',31,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',36,'delayed previously','new car',2225,'<100','>=7',4,'male single',none,4,'no known property',57,bank,'for free',2,skilled,1,yes,yes,bad
+'no checking',6,'all paid','new car',783,'no known savings','1<=X<4',1,'male single',guarantor,2,'real estate',26,stores,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,6468,'no known savings',unemployed,2,'male single',none,1,'no known property',52,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',36,'critical/other existing credit',radio/tv,9566,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,31,stores,own,2,skilled,1,none,yes,good
+'>=200',18,'existing paid','new car',1961,'<100','>=7',3,'female div/dep/mar',none,2,car,23,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',36,'critical/other existing credit',furniture/equipment,6229,'<100','<1',4,'female div/dep/mar','co applicant',4,'no known property',23,none,rent,2,'unskilled resident',1,yes,yes,bad
+'0<=X<200',9,'existing paid',business,1391,'<100','1<=X<4',2,'male mar/wid',none,1,'real estate',27,bank,own,1,skilled,1,yes,yes,good
+'0<=X<200',15,'critical/other existing credit',radio/tv,1537,'no known savings','>=7',4,'male single',guarantor,4,'real estate',50,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',36,'no credits/all paid',business,1953,'<100','>=7',4,'male single',none,4,'no known property',61,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',48,'no credits/all paid',business,14421,'<100','1<=X<4',2,'male single',none,2,car,25,none,own,1,skilled,1,yes,yes,bad
+'no checking',24,'existing paid',radio/tv,3181,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',26,none,own,1,skilled,1,yes,yes,good
+'no checking',27,'existing paid',repairs,5190,'no known savings','>=7',4,'male single',none,4,'life insurance',48,none,own,4,skilled,2,yes,yes,good
+'no checking',12,'existing paid',radio/tv,2171,'<100','<1',2,'female div/dep/mar',none,2,car,29,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',1007,'>=1000','1<=X<4',4,'male mar/wid',none,1,'real estate',22,none,own,1,skilled,1,none,yes,good
+'no checking',36,'existing paid',education,1819,'<100','1<=X<4',4,'male single',none,4,'no known property',37,stores,'for free',1,skilled,1,yes,yes,bad
+'no checking',36,'existing paid',radio/tv,2394,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,car,25,none,own,1,skilled,1,none,yes,good
+'no checking',36,'existing paid','used car',8133,'<100','1<=X<4',1,'female div/dep/mar',none,2,'life insurance',30,bank,own,1,skilled,1,none,yes,good
+'no checking',7,'critical/other existing credit',radio/tv,730,'no known savings','>=7',4,'male single',none,2,'life insurance',46,none,rent,2,'unskilled resident',1,yes,yes,good
+'<0',8,'critical/other existing credit',other,1164,'<100','>=7',3,'male single',none,4,'no known property',51,bank,'for free',2,'high qualif/self emp/mgmt',2,yes,yes,good
+'0<=X<200',42,'critical/other existing credit',business,5954,'<100','4<=X<7',2,'female div/dep/mar',none,1,'real estate',41,bank,own,2,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid',education,1977,'no known savings','>=7',4,'male single',none,4,'no known property',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',12,'critical/other existing credit','used car',1526,'<100','>=7',4,'male single',none,4,'no known property',66,none,'for free',2,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',42,'existing paid',radio/tv,3965,'<100','<1',4,'male single',none,3,car,34,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',11,'delayed previously',radio/tv,4771,'<100','4<=X<7',2,'male single',none,4,'life insurance',51,none,own,1,skilled,1,none,yes,good
+'no checking',54,'no credits/all paid','used car',9436,'no known savings','1<=X<4',2,'male single',none,2,'life insurance',39,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',30,'existing paid',furniture/equipment,3832,'<100','<1',2,'male mar/wid',none,1,'life insurance',22,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,5943,'no known savings','<1',1,'female div/dep/mar',none,1,car,44,none,own,2,skilled,1,yes,yes,bad
+'no checking',15,'existing paid',radio/tv,1213,'500<=X<1000','>=7',4,'male single',none,3,'life insurance',47,stores,own,1,skilled,1,yes,yes,good
+'no checking',18,'existing paid',business,1568,'100<=X<500','1<=X<4',3,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,'unskilled resident',1,none,yes,good
+'<0',24,'existing paid',other,1755,'<100','>=7',4,'female div/dep/mar',guarantor,4,'real estate',58,none,own,1,'unskilled resident',1,yes,yes,good
+'<0',10,'existing paid',radio/tv,2315,'<100','>=7',3,'male single',none,4,'real estate',52,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',12,'critical/other existing credit',business,1412,'<100','1<=X<4',4,'female div/dep/mar',guarantor,2,'real estate',29,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,1295,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid',education,12612,'100<=X<500','1<=X<4',1,'male single',none,4,'no known property',47,none,'for free',1,skilled,2,yes,yes,bad
+'<0',18,'existing paid','new car',2249,'100<=X<500','4<=X<7',4,'male single',none,3,car,30,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',12,'no credits/all paid',repairs,1108,'<100','4<=X<7',4,'male single',none,3,'real estate',28,none,own,2,skilled,1,none,yes,bad
+'no checking',12,'critical/other existing credit',radio/tv,618,'<100','>=7',4,'male single',none,4,'real estate',56,none,own,1,skilled,1,none,yes,good
+'<0',12,'critical/other existing credit','used car',1409,'<100','>=7',4,'male single',none,3,'real estate',54,none,own,1,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,797,'no known savings','>=7',4,'female div/dep/mar',none,3,'life insurance',33,bank,own,1,'unskilled resident',2,none,yes,bad
+'>=200',24,'critical/other existing credit',furniture/equipment,3617,'no known savings','>=7',4,'male single','co applicant',4,'no known property',20,none,rent,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',1318,'>=1000','>=7',4,'male single',none,4,'real estate',54,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',54,'no credits/all paid',business,15945,'<100','<1',3,'male single',none,4,'no known property',58,none,rent,1,skilled,1,yes,yes,bad
+'no checking',12,'critical/other existing credit',education,2012,'no known savings','4<=X<7',4,'female div/dep/mar',none,2,car,61,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',business,2622,'100<=X<500','1<=X<4',4,'male single',none,4,car,34,none,own,1,skilled,1,none,yes,good
+'0<=X<200',36,'critical/other existing credit',radio/tv,2337,'<100','>=7',4,'male single',none,4,'real estate',36,none,own,1,skilled,1,none,yes,good
+'0<=X<200',20,'delayed previously','used car',7057,'no known savings','4<=X<7',3,'male single',none,4,'life insurance',36,bank,rent,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',24,'existing paid','new car',1469,'100<=X<500','>=7',4,'male mar/wid',none,4,'real estate',41,none,rent,1,'unskilled resident',1,none,yes,good
+'0<=X<200',36,'existing paid',radio/tv,2323,'<100','4<=X<7',4,'male single',none,4,car,24,none,rent,1,skilled,1,none,yes,good
+'no checking',6,'delayed previously',radio/tv,932,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',24,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'critical/other existing credit',furniture/equipment,1919,'<100','4<=X<7',4,'male single',none,3,car,35,none,rent,1,skilled,1,yes,yes,good
+'no checking',12,'existing paid','used car',2445,'no known savings','<1',2,'male mar/wid',none,4,car,26,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',24,'critical/other existing credit',other,11938,'<100','1<=X<4',2,'male single','co applicant',3,car,39,none,own,2,'high qualif/self emp/mgmt',2,yes,yes,bad
+'no checking',18,'all paid','new car',6458,'<100','>=7',2,'male single',none,4,'no known property',39,bank,own,2,'high qualif/self emp/mgmt',2,yes,yes,bad
+'0<=X<200',12,'existing paid','new car',6078,'<100','4<=X<7',2,'male single',none,2,car,32,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',furniture/equipment,7721,'no known savings','<1',1,'female div/dep/mar',none,2,'life insurance',30,none,own,1,skilled,1,yes,no,good
+'0<=X<200',14,'existing paid',business,1410,'500<=X<1000','>=7',1,'male mar/wid',none,2,'real estate',35,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'delayed previously',business,1449,'100<=X<500','>=7',1,'male div/sep',none,2,car,31,bank,own,2,skilled,2,none,yes,good
+'>=200',15,'existing paid',education,392,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',23,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',18,'existing paid','new car',6260,'<100','4<=X<7',3,'male single',none,3,'real estate',28,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',36,'critical/other existing credit','new car',7855,'<100','1<=X<4',4,'female div/dep/mar',none,2,'real estate',25,stores,own,2,skilled,1,yes,yes,bad
+'<0',12,'existing paid',radio/tv,1680,'500<=X<1000','>=7',3,'male mar/wid',none,1,'real estate',35,none,own,1,skilled,1,none,yes,good
+'no checking',48,'critical/other existing credit',radio/tv,3578,'no known savings','>=7',4,'male single',none,1,'real estate',47,none,own,1,skilled,1,yes,yes,good
+'<0',42,'existing paid',radio/tv,7174,'no known savings','4<=X<7',4,'female div/dep/mar',none,3,car,30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',10,'critical/other existing credit',furniture/equipment,2132,'no known savings','<1',2,'female div/dep/mar','co applicant',3,'real estate',27,none,rent,2,skilled,1,none,no,good
+'<0',33,'critical/other existing credit',furniture/equipment,4281,'500<=X<1000','1<=X<4',1,'female div/dep/mar',none,4,car,23,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',12,'critical/other existing credit','new car',2366,'500<=X<1000','4<=X<7',3,'male div/sep',none,3,car,36,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',21,'existing paid',radio/tv,1835,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',25,none,own,2,skilled,1,yes,yes,bad
+'no checking',24,'critical/other existing credit','used car',3868,'<100','>=7',4,'female div/dep/mar',none,2,car,41,none,rent,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1768,'<100','1<=X<4',3,'male single',none,2,'real estate',24,none,rent,1,'unskilled resident',1,none,yes,good
+'>=200',10,'critical/other existing credit','new car',781,'<100','>=7',4,'male single',none,4,'no known property',63,none,'for free',2,skilled,1,yes,yes,good
+'0<=X<200',18,'existing paid',furniture/equipment,1924,'no known savings','<1',4,'female div/dep/mar',none,3,'real estate',27,none,rent,1,skilled,1,none,yes,bad
+'<0',12,'critical/other existing credit','new car',2121,'<100','1<=X<4',4,'male single',none,2,'life insurance',30,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',radio/tv,701,'<100','1<=X<4',4,'male mar/wid',none,2,'real estate',40,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',12,'existing paid',repairs,639,'<100','1<=X<4',4,'male single',none,2,car,30,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',12,'critical/other existing credit','used car',1860,'<100',unemployed,4,'male single',none,2,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'critical/other existing credit','new car',3499,'<100','1<=X<4',3,'female div/dep/mar','co applicant',2,'real estate',29,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',48,'existing paid','new car',8487,'no known savings','4<=X<7',1,'female div/dep/mar',none,2,car,24,none,own,1,skilled,1,none,yes,good
+'<0',36,'delayed previously',education,6887,'<100','1<=X<4',4,'male single',none,3,'life insurance',29,stores,own,1,skilled,1,yes,yes,bad
+'no checking',15,'existing paid',furniture/equipment,2708,'<100','<1',2,'male single',none,3,'life insurance',27,bank,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',furniture/equipment,1984,'<100','1<=X<4',4,'male single',none,4,'no known property',47,bank,'for free',2,skilled,1,none,yes,good
+'no checking',60,'existing paid',radio/tv,10144,'100<=X<500','4<=X<7',2,'female div/dep/mar',none,4,'real estate',21,none,own,1,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,1240,'no known savings','>=7',4,'female div/dep/mar',none,2,'real estate',38,none,own,2,skilled,1,yes,yes,good
+'no checking',27,'delayed previously','used car',8613,'>=1000','1<=X<4',2,'male single',none,2,car,27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,766,'500<=X<1000','1<=X<4',4,'male single',none,3,'real estate',66,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',15,'critical/other existing credit',radio/tv,2728,'no known savings','4<=X<7',4,'male single',guarantor,2,'real estate',35,bank,own,3,skilled,1,yes,yes,good
+'>=200',12,'existing paid',radio/tv,1881,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,44,none,rent,1,'unskilled resident',1,yes,yes,good
+'>=200',6,'existing paid','new car',709,'>=1000','<1',2,'male mar/wid',none,2,'real estate',27,none,own,1,'unemp/unskilled non res',1,none,no,good
+'0<=X<200',36,'existing paid',radio/tv,4795,'<100','<1',4,'female div/dep/mar',none,1,'no known property',30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',27,'existing paid',radio/tv,3416,'<100','1<=X<4',3,'male single',none,2,car,27,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,2462,'<100','1<=X<4',2,'male single',none,2,car,22,none,own,1,skilled,1,none,yes,bad
+'no checking',21,'critical/other existing credit',furniture/equipment,2288,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',23,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',48,'all paid',business,3566,'100<=X<500','4<=X<7',4,'male single',none,2,car,30,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit','new car',860,'<100','>=7',1,'female div/dep/mar',none,4,'no known property',39,none,own,2,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit','new car',682,'100<=X<500','4<=X<7',4,'female div/dep/mar',none,3,car,51,none,own,2,skilled,1,yes,yes,good
+'<0',36,'critical/other existing credit',furniture/equipment,5371,'<100','1<=X<4',3,'male single',guarantor,2,'life insurance',28,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1582,'>=1000','>=7',4,'male single',none,4,car,46,none,own,2,skilled,1,none,yes,good
+'no checking',6,'existing paid',radio/tv,1346,'100<=X<500','>=7',2,'male single',none,4,'no known property',42,bank,'for free',1,skilled,2,yes,yes,good
+'no checking',10,'existing paid',radio/tv,1924,'<100','1<=X<4',1,'male single',none,4,'life insurance',38,none,own,1,skilled,1,yes,no,good
+'>=200',36,'existing paid',radio/tv,5848,'<100','1<=X<4',4,'male single',none,1,car,24,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit','used car',7758,'>=1000','>=7',2,'female div/dep/mar',none,4,'no known property',29,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',24,'delayed previously',business,6967,'100<=X<500','4<=X<7',4,'male single',none,4,car,36,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid',furniture/equipment,1282,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,20,none,rent,1,skilled,1,none,yes,bad
+'<0',9,'critical/other existing credit',repairs,1288,'100<=X<500','>=7',3,'male single',guarantor,4,'real estate',48,none,own,2,skilled,2,none,no,good
+'<0',12,'all paid',retraining,339,'<100','>=7',4,'male mar/wid',none,1,car,45,bank,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid','new car',3512,'100<=X<500','4<=X<7',2,'male single',none,3,car,38,bank,own,2,skilled,1,yes,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,1898,'no known savings','1<=X<4',1,'male single',none,2,'real estate',34,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2872,'100<=X<500','>=7',3,'male single',none,4,'real estate',36,none,own,1,skilled,2,yes,yes,good
+'no checking',18,'critical/other existing credit','new car',1055,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',30,none,own,2,skilled,1,none,yes,good
+'no checking',15,'existing paid','domestic appliance',1262,'500<=X<1000','4<=X<7',4,'male single',none,3,'life insurance',36,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',10,'existing paid','new car',7308,'<100',unemployed,2,'male single',none,4,'no known property',70,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',36,'existing paid','new car',909,'500<=X<1000','>=7',4,'male single',none,4,'life insurance',36,none,own,1,skilled,1,none,yes,good
+'no checking',6,'existing paid',furniture/equipment,2978,'500<=X<1000','1<=X<4',1,'male single',none,2,car,32,none,own,1,skilled,1,yes,yes,good
+'<0',18,'existing paid',furniture/equipment,1131,'<100',unemployed,4,'female div/dep/mar',none,2,car,33,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',11,'existing paid',furniture/equipment,1577,'>=1000','<1',4,'female div/dep/mar',none,1,'real estate',20,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',furniture/equipment,3972,'<100','4<=X<7',2,'female div/dep/mar',none,4,'life insurance',25,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',24,'critical/other existing credit',business,1935,'<100','>=7',4,'male div/sep',none,4,'real estate',31,none,own,2,skilled,1,yes,yes,bad
+'<0',15,'no credits/all paid','new car',950,'<100','>=7',4,'male single',none,3,car,33,none,rent,2,skilled,2,none,yes,bad
+'no checking',12,'existing paid',furniture/equipment,763,'<100','1<=X<4',4,'female div/dep/mar',none,1,'real estate',26,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',24,'delayed previously',furniture/equipment,2064,'<100',unemployed,3,'female div/dep/mar',none,2,'life insurance',34,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',8,'existing paid',radio/tv,1414,'<100','1<=X<4',4,'male single',guarantor,2,'real estate',33,none,own,1,skilled,1,none,no,good
+'<0',21,'delayed previously',education,3414,'<100','<1',2,'male single',none,1,'life insurance',26,none,own,2,skilled,1,none,yes,bad
+'no checking',30,'all paid','used car',7485,'no known savings',unemployed,4,'female div/dep/mar',none,1,'real estate',53,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',12,'existing paid',furniture/equipment,2577,'<100','1<=X<4',2,'male div/sep',none,1,car,42,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit',radio/tv,338,'500<=X<1000','>=7',4,'male single',none,4,car,52,none,own,2,skilled,1,none,yes,good
+'no checking',12,'existing paid',radio/tv,1963,'<100','4<=X<7',4,'male single',none,2,car,31,none,rent,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',21,'critical/other existing credit','new car',571,'<100','>=7',4,'male single',none,4,'real estate',65,none,own,2,skilled,1,none,yes,good
+'no checking',36,'delayed previously',business,9572,'<100','<1',1,'male div/sep',none,1,car,28,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',36,'delayed previously',business,4455,'<100','1<=X<4',2,'male div/sep',none,2,'real estate',30,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',21,'all paid','new car',1647,'no known savings','1<=X<4',4,'male single',none,2,'life insurance',40,none,own,2,'unskilled resident',2,none,yes,bad
+'no checking',24,'critical/other existing credit',furniture/equipment,3777,'>=1000','1<=X<4',4,'male single',none,4,'real estate',50,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit','new car',884,'<100','>=7',4,'male single',none,4,car,36,bank,own,1,skilled,2,yes,yes,bad
+'no checking',15,'critical/other existing credit',radio/tv,1360,'<100','1<=X<4',4,'male single',none,2,'life insurance',31,none,own,2,skilled,1,none,yes,good
+'0<=X<200',9,'all paid','used car',5129,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',74,bank,'for free',1,'high qualif/self emp/mgmt',2,yes,yes,bad
+'0<=X<200',16,'critical/other existing credit','new car',1175,'<100',unemployed,2,'male single',none,3,car,68,none,'for free',3,'unemp/unskilled non res',1,yes,yes,good
+'<0',12,'existing paid',radio/tv,674,'100<=X<500','4<=X<7',4,'male mar/wid',none,1,'life insurance',20,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',18,'no credits/all paid',furniture/equipment,3244,'<100','1<=X<4',1,'female div/dep/mar',none,4,car,33,bank,own,2,skilled,1,yes,yes,good
+'no checking',24,'existing paid',business,4591,'>=1000','1<=X<4',2,'male single',none,3,'life insurance',54,none,own,3,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',48,'no credits/all paid',business,3844,'100<=X<500','4<=X<7',4,'male single',none,4,'no known property',34,none,'for free',1,'unskilled resident',2,none,yes,bad
+'0<=X<200',27,'existing paid',business,3915,'<100','1<=X<4',4,'male single',none,2,car,36,none,own,1,skilled,2,yes,yes,bad
+'no checking',6,'existing paid',radio/tv,2108,'<100','4<=X<7',2,'male mar/wid',none,2,'real estate',29,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',45,'existing paid',radio/tv,3031,'100<=X<500','1<=X<4',4,'male single',guarantor,4,'life insurance',21,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',9,'critical/other existing credit',education,1501,'<100','>=7',2,'female div/dep/mar',none,3,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',6,'critical/other existing credit',radio/tv,1382,'<100','1<=X<4',1,'female div/dep/mar',none,1,car,28,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,951,'100<=X<500','<1',4,'female div/dep/mar',none,4,car,27,bank,rent,4,skilled,1,none,yes,bad
+'0<=X<200',24,'existing paid','used car',2760,'no known savings','>=7',4,'male single',none,4,'no known property',36,bank,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',18,'delayed previously',furniture/equipment,4297,'<100','>=7',4,'male div/sep',none,3,'no known property',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',9,'critical/other existing credit',education,936,'500<=X<1000','>=7',4,'male single',none,2,car,52,none,own,2,skilled,1,yes,yes,good
+'<0',12,'existing paid','new car',1168,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',27,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',27,'delayed previously',business,5117,'<100','4<=X<7',3,'male single',none,4,car,26,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',retraining,902,'<100','4<=X<7',4,'male mar/wid',none,4,'life insurance',21,none,rent,1,skilled,1,none,yes,bad
+'no checking',12,'critical/other existing credit','new car',1495,'<100','>=7',4,'male single',none,1,'real estate',38,none,own,2,'unskilled resident',2,none,yes,good
+'<0',30,'critical/other existing credit','used car',10623,'<100','>=7',3,'male single',none,4,'no known property',38,none,'for free',3,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',12,'critical/other existing credit',furniture/equipment,1935,'<100','>=7',4,'male single',none,4,'real estate',43,none,own,3,skilled,1,yes,yes,good
+'0<=X<200',12,'critical/other existing credit','domestic appliance',1424,'<100','4<=X<7',4,'male single',none,3,'life insurance',26,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',business,6568,'<100','1<=X<4',2,'male mar/wid',none,2,car,21,stores,own,1,'unskilled resident',1,none,yes,good
+'no checking',12,'existing paid','used car',1413,'>=1000','4<=X<7',3,'male single',none,2,'life insurance',55,none,own,1,skilled,1,none,no,good
+'no checking',9,'critical/other existing credit',radio/tv,3074,'no known savings','1<=X<4',1,'male single',none,2,'real estate',33,none,own,2,skilled,2,none,yes,good
+'no checking',36,'existing paid',radio/tv,3835,'no known savings','>=7',2,'female div/dep/mar',none,4,'real estate',45,none,own,1,'unskilled resident',1,yes,yes,good
+'<0',27,'no credits/all paid',business,5293,'<100',unemployed,2,'male single',none,4,'life insurance',50,stores,own,2,skilled,1,yes,yes,bad
+'>=200',30,'delayed previously',business,1908,'<100','>=7',4,'male single',none,4,'real estate',66,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',36,'critical/other existing credit',radio/tv,3342,'no known savings','>=7',4,'male single',none,2,car,51,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'critical/other existing credit',retraining,932,'no known savings','4<=X<7',1,'female div/dep/mar',none,3,'life insurance',39,none,own,2,'unskilled resident',1,none,yes,good
+'<0',18,'no credits/all paid',business,3104,'<100','4<=X<7',3,'male single',none,1,'life insurance',31,bank,own,1,skilled,1,yes,yes,good
+'>=200',36,'existing paid',radio/tv,3913,'<100','1<=X<4',2,'male single',none,2,'real estate',23,none,own,1,skilled,1,yes,yes,good
+'<0',24,'existing paid',furniture/equipment,3021,'<100','1<=X<4',2,'male div/sep',none,2,'real estate',24,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',10,'existing paid','new car',1364,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,64,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,625,'<100','<1',4,'male mar/wid',guarantor,1,'real estate',26,bank,own,1,'unskilled resident',1,none,yes,good
+'<0',12,'existing paid',education,1200,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,'life insurance',23,bank,rent,1,skilled,1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,707,'<100','1<=X<4',4,'male single',none,2,'real estate',30,bank,own,2,skilled,1,none,yes,good
+'no checking',24,'delayed previously',business,2978,'no known savings','1<=X<4',4,'male single',none,4,'real estate',32,none,own,2,skilled,2,yes,yes,good
+'no checking',15,'existing paid','used car',4657,'<100','1<=X<4',3,'male single',none,2,car,30,none,own,1,skilled,1,yes,yes,good
+'no checking',36,'no credits/all paid',repairs,2613,'<100','1<=X<4',4,'male single',none,2,car,27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',48,'existing paid',radio/tv,10961,'>=1000','4<=X<7',1,'male single','co applicant',2,'no known property',27,bank,own,2,skilled,1,yes,yes,bad
+'<0',12,'existing paid',furniture/equipment,7865,'<100','>=7',4,'male single',none,4,'no known property',53,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',9,'existing paid',radio/tv,1478,'<100','4<=X<7',4,'male single',none,2,car,22,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',furniture/equipment,3149,'<100','<1',4,'male single',none,1,'no known property',22,bank,'for free',1,skilled,1,none,yes,good
+'>=200',36,'existing paid',radio/tv,4210,'<100','1<=X<4',4,'male single',none,2,car,26,none,own,1,skilled,1,none,yes,bad
+'no checking',9,'existing paid','new car',2507,'500<=X<1000','>=7',2,'male single',none,4,'no known property',51,none,'for free',1,'unskilled resident',1,none,yes,good
+'no checking',12,'existing paid',radio/tv,2141,'100<=X<500','4<=X<7',3,'male single',none,1,'no known property',35,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,866,'<100','1<=X<4',4,'male mar/wid',guarantor,2,'real estate',25,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',4,'critical/other existing credit',radio/tv,1544,'<100','4<=X<7',2,'male single',none,1,'real estate',42,none,own,3,'unskilled resident',2,none,yes,good
+'<0',24,'existing paid',radio/tv,1823,'<100',unemployed,4,'male single',none,2,car,30,stores,own,1,'high qualif/self emp/mgmt',2,none,yes,bad
+'0<=X<200',6,'existing paid','new car',14555,'no known savings',unemployed,1,'male single',none,2,'life insurance',23,none,own,1,'unemp/unskilled non res',1,yes,yes,bad
+'0<=X<200',21,'existing paid',business,2767,'100<=X<500','>=7',4,'male div/sep',none,2,car,61,bank,rent,2,'unskilled resident',1,none,yes,bad
+'no checking',12,'critical/other existing credit',radio/tv,1291,'<100','1<=X<4',4,'female div/dep/mar',none,2,'life insurance',35,none,own,2,skilled,1,none,yes,good
+'<0',30,'existing paid',radio/tv,2522,'<100','>=7',1,'male single',guarantor,3,'life insurance',39,none,own,1,skilled,2,none,yes,good
+'<0',24,'existing paid','new car',915,'no known savings','>=7',4,'female div/dep/mar',none,2,car,29,bank,own,1,skilled,1,none,yes,bad
+'no checking',6,'existing paid',radio/tv,1595,'<100','4<=X<7',3,'male single',none,2,'life insurance',51,none,own,1,skilled,2,none,yes,good
+'<0',48,'no credits/all paid','used car',4605,'<100','>=7',3,'male single',none,4,'no known property',24,none,'for free',2,skilled,2,none,yes,bad
+'no checking',12,'critical/other existing credit',business,1185,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',27,none,own,2,skilled,1,none,yes,good
+'no checking',12,'all paid',retraining,3447,'500<=X<1000','1<=X<4',4,'female div/dep/mar',none,3,'real estate',35,none,own,1,'unskilled resident',2,none,yes,good
+'no checking',24,'existing paid',business,1258,'<100','4<=X<7',4,'male single',none,1,'real estate',25,none,own,1,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,717,'<100','>=7',4,'male single',none,4,'real estate',52,none,own,3,skilled,1,none,yes,good
+'no checking',6,'no credits/all paid','new car',1204,'100<=X<500','1<=X<4',4,'male single',none,1,'no known property',35,bank,rent,1,skilled,1,none,no,good
+'>=200',24,'existing paid',furniture/equipment,1925,'<100','1<=X<4',2,'male single',none,2,'real estate',26,none,own,1,skilled,1,none,yes,good
+'no checking',18,'existing paid',radio/tv,433,'<100',unemployed,3,'female div/dep/mar','co applicant',4,'real estate',22,none,rent,1,skilled,1,none,yes,bad
+'<0',6,'critical/other existing credit','new car',666,'>=1000','4<=X<7',3,'female div/dep/mar',none,4,'real estate',39,none,own,2,'unskilled resident',1,yes,yes,good
+'>=200',12,'existing paid',furniture/equipment,2251,'<100','1<=X<4',1,'female div/dep/mar',none,2,car,46,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'existing paid','new car',2150,'<100','1<=X<4',4,'female div/dep/mar',guarantor,2,'no known property',24,bank,own,1,skilled,1,none,yes,bad
+'no checking',24,'delayed previously',furniture/equipment,4151,'100<=X<500','1<=X<4',2,'male single',none,3,'life insurance',35,none,own,2,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',furniture/equipment,2030,'no known savings','4<=X<7',2,'male single',none,1,car,24,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',60,'delayed previously',radio/tv,7418,'no known savings','1<=X<4',1,'male single',none,1,'real estate',27,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2684,'<100','1<=X<4',4,'male single',none,2,'real estate',35,none,own,2,'unskilled resident',1,none,yes,good
+'<0',12,'all paid',radio/tv,2149,'<100','1<=X<4',4,'male div/sep',none,1,'no known property',29,none,'for free',1,skilled,1,none,yes,bad
+'no checking',15,'existing paid','used car',3812,'100<=X<500','<1',1,'female div/dep/mar',none,4,car,23,none,own,1,skilled,1,yes,yes,good
+'no checking',11,'critical/other existing credit',radio/tv,1154,'100<=X<500',unemployed,4,'female div/dep/mar',none,4,'real estate',57,none,own,3,'unskilled resident',1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,1657,'<100','1<=X<4',2,'male single',none,2,'real estate',27,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',radio/tv,1603,'<100','>=7',4,'female div/dep/mar',none,4,car,55,none,own,1,skilled,1,none,yes,good
+'<0',18,'critical/other existing credit','new car',5302,'<100','>=7',2,'male single',none,4,'no known property',36,none,'for free',3,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'critical/other existing credit',education,2748,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',57,bank,'for free',3,'unskilled resident',1,none,yes,good
+'no checking',10,'critical/other existing credit','new car',1231,'<100','>=7',3,'male single',none,4,'real estate',32,none,own,2,'unskilled resident',2,none,no,good
+'0<=X<200',15,'existing paid',radio/tv,802,'<100','>=7',4,'male single',none,3,car,37,none,own,1,skilled,2,none,yes,bad
+'no checking',36,'critical/other existing credit',business,6304,'no known savings','>=7',4,'male single',none,4,'real estate',36,none,own,2,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,1533,'<100','<1',4,'female div/dep/mar',none,3,car,38,stores,own,1,skilled,1,yes,yes,good
+'<0',14,'existing paid','new car',8978,'<100','>=7',1,'male div/sep',none,4,'life insurance',45,none,own,1,'high qualif/self emp/mgmt',1,yes,no,bad
+'no checking',24,'existing paid',radio/tv,999,'no known savings','>=7',4,'male single',none,2,car,25,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid','new car',2662,'no known savings','4<=X<7',4,'male single',none,3,'life insurance',32,none,own,1,skilled,1,none,no,good
+'no checking',12,'critical/other existing credit',furniture/equipment,1402,'500<=X<1000','4<=X<7',3,'female div/dep/mar',none,4,car,37,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',48,'all paid','new car',12169,'no known savings',unemployed,4,'male single','co applicant',4,'no known property',36,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',48,'existing paid',radio/tv,3060,'<100','4<=X<7',4,'male single',none,4,'real estate',28,none,own,2,skilled,1,none,yes,bad
+'<0',30,'existing paid',repairs,11998,'<100','<1',1,'male div/sep',none,1,'no known property',34,none,own,1,'unskilled resident',1,yes,yes,bad
+'no checking',9,'existing paid',radio/tv,2697,'<100','1<=X<4',1,'male single',none,2,'real estate',32,none,own,1,skilled,2,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,2404,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,26,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,1262,'no known savings','>=7',2,'male div/sep',none,4,'life insurance',49,none,own,1,'unskilled resident',1,yes,yes,good
+'no checking',6,'existing paid',furniture/equipment,4611,'<100','<1',1,'female div/dep/mar',none,4,'life insurance',32,none,own,1,skilled,1,none,yes,bad
+'no checking',24,'existing paid',radio/tv,1901,'100<=X<500','1<=X<4',4,'male single',none,4,car,29,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',15,'critical/other existing credit','used car',3368,'>=1000','>=7',3,'male single',none,4,'no known property',23,none,rent,2,skilled,1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1574,'<100','1<=X<4',4,'male single',none,2,'real estate',50,none,own,1,skilled,1,none,yes,good
+'>=200',18,'all paid',radio/tv,1445,'no known savings','4<=X<7',4,'male single',none,4,car,49,bank,own,1,'unskilled resident',1,none,yes,good
+'no checking',15,'critical/other existing credit',furniture/equipment,1520,'no known savings','>=7',4,'male single',none,4,'life insurance',63,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit','new car',3878,'100<=X<500','<1',4,'male div/sep',none,2,car,37,none,own,1,skilled,1,yes,yes,good
+'<0',47,'existing paid','new car',10722,'<100','<1',1,'female div/dep/mar',none,1,'real estate',35,none,own,1,'unskilled resident',1,yes,yes,good
+'<0',48,'existing paid','used car',4788,'<100','4<=X<7',4,'male single',none,3,'life insurance',26,none,own,1,skilled,2,none,yes,good
+'0<=X<200',48,'delayed previously',other,7582,'100<=X<500',unemployed,2,'male single',none,4,'no known property',31,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1092,'<100','1<=X<4',4,'female div/dep/mar',guarantor,4,'real estate',49,none,own,2,skilled,1,yes,yes,good
+'<0',24,'delayed previously',radio/tv,1024,'<100','<1',4,'male mar/wid',none,4,'real estate',48,stores,own,1,skilled,1,none,yes,bad
+'no checking',12,'existing paid',business,1076,'<100','1<=X<4',2,'male mar/wid',none,2,'real estate',26,none,own,1,skilled,1,yes,no,good
+'0<=X<200',36,'existing paid','used car',9398,'<100','<1',1,'male mar/wid',none,4,car,28,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',24,'critical/other existing credit','used car',6419,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',44,none,'for free',2,'high qualif/self emp/mgmt',2,yes,yes,good
+'>=200',42,'critical/other existing credit','used car',4796,'<100','>=7',4,'male single',none,4,'no known property',56,none,'for free',1,skilled,1,none,yes,good
+'no checking',48,'critical/other existing credit',business,7629,'no known savings','>=7',4,'male div/sep',none,2,car,46,bank,own,2,'high qualif/self emp/mgmt',2,none,yes,good
+'0<=X<200',48,'existing paid',furniture/equipment,9960,'<100','<1',1,'female div/dep/mar',none,2,car,26,none,own,1,skilled,1,yes,yes,bad
+'no checking',12,'existing paid','used car',4675,'no known savings','<1',1,'female div/dep/mar',none,4,car,20,none,rent,1,skilled,1,none,yes,good
+'no checking',10,'existing paid','new car',1287,'no known savings','>=7',4,'male single','co applicant',2,'life insurance',45,none,own,1,'unskilled resident',1,none,no,good
+'no checking',18,'existing paid',furniture/equipment,2515,'<100','1<=X<4',3,'male single',none,4,'real estate',43,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',21,'critical/other existing credit',furniture/equipment,2745,'>=1000','4<=X<7',3,'male single',none,2,car,32,none,own,2,skilled,1,yes,yes,good
+'no checking',6,'existing paid','new car',672,'<100',unemployed,1,'female div/dep/mar',none,4,'real estate',54,none,own,1,'unemp/unskilled non res',1,yes,yes,good
+'0<=X<200',36,'no credits/all paid',radio/tv,3804,'<100','1<=X<4',4,'female div/dep/mar',none,1,car,42,none,own,1,skilled,1,yes,yes,bad
+'>=200',24,'critical/other existing credit','new car',1344,'no known savings','4<=X<7',4,'male single',none,2,'real estate',37,bank,own,2,'unskilled resident',2,none,yes,bad
+'<0',10,'critical/other existing credit','new car',1038,'<100','4<=X<7',4,'male single','co applicant',3,'life insurance',49,none,own,2,skilled,1,yes,yes,good
+'no checking',48,'critical/other existing credit','new car',10127,'500<=X<1000','1<=X<4',2,'male single',none,2,'no known property',44,bank,'for free',1,skilled,1,none,yes,bad
+'no checking',6,'existing paid',furniture/equipment,1543,'>=1000','1<=X<4',4,'male div/sep',none,2,'real estate',33,none,own,1,skilled,1,none,yes,good
+'no checking',30,'existing paid','used car',4811,'no known savings','4<=X<7',2,'female div/dep/mar',none,4,'life insurance',24,stores,rent,1,'unskilled resident',1,none,yes,good
+'<0',12,'existing paid',radio/tv,727,'100<=X<500','<1',4,'male mar/wid',none,3,'no known property',33,none,own,1,'unskilled resident',1,yes,yes,bad
+'0<=X<200',8,'existing paid',furniture/equipment,1237,'<100','1<=X<4',3,'female div/dep/mar',none,4,'real estate',24,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',9,'existing paid','new car',276,'<100','1<=X<4',4,'male mar/wid',none,4,'real estate',22,none,rent,1,'unskilled resident',1,none,yes,good
+'0<=X<200',48,'existing paid',other,5381,'no known savings',unemployed,3,'male single',none,4,'no known property',40,bank,'for free',1,'unemp/unskilled non res',1,yes,yes,good
+'no checking',24,'existing paid',furniture/equipment,5511,'100<=X<500','1<=X<4',4,'male single',none,1,car,25,stores,own,1,skilled,1,none,yes,good
+'>=200',24,'existing paid',furniture/equipment,3749,'<100','<1',2,'female div/dep/mar',none,4,car,26,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',685,'<100','4<=X<7',2,'male mar/wid',none,3,car,25,bank,own,1,'unskilled resident',1,none,yes,bad
+'>=200',4,'existing paid','new car',1494,'no known savings','<1',1,'male single',none,2,'real estate',29,none,own,1,'unskilled resident',2,none,no,good
+'<0',36,'all paid',furniture/equipment,2746,'<100','>=7',4,'male single',none,4,car,31,bank,own,1,skilled,1,none,yes,bad
+'<0',12,'existing paid',furniture/equipment,708,'<100','1<=X<4',2,'male single',guarantor,3,'life insurance',38,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',24,'existing paid',furniture/equipment,4351,'no known savings','1<=X<4',1,'female div/dep/mar',none,4,'life insurance',48,none,own,1,'unskilled resident',1,yes,yes,good
+'no checking',12,'critical/other existing credit',education,701,'<100','1<=X<4',4,'male single',none,2,car,32,none,own,2,skilled,1,none,yes,good
+'<0',15,'delayed previously',furniture/equipment,3643,'<100','>=7',1,'female div/dep/mar',none,4,'life insurance',27,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'critical/other existing credit','new car',4249,'<100',unemployed,4,'male mar/wid',none,2,car,28,none,own,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'<0',24,'existing paid',radio/tv,1938,'<100','<1',4,'male div/sep',none,3,'life insurance',32,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid','used car',2910,'<100','4<=X<7',2,'male single',none,1,'no known property',34,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',18,'existing paid',furniture/equipment,2659,'>=1000','1<=X<4',4,'male single',none,2,car,28,none,own,1,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit','new car',1028,'<100','1<=X<4',4,'female div/dep/mar',none,3,'real estate',36,none,own,2,skilled,1,none,yes,good
+'<0',8,'critical/other existing credit','new car',3398,'<100','4<=X<7',1,'male single',none,4,'real estate',39,none,own,2,'unskilled resident',1,none,no,good
+'no checking',12,'critical/other existing credit',furniture/equipment,5801,'no known savings','>=7',2,'male single',none,4,'life insurance',49,none,rent,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid','new car',1525,'>=1000','4<=X<7',4,'female div/dep/mar',none,3,car,34,none,own,1,skilled,2,yes,yes,good
+'>=200',36,'existing paid',radio/tv,4473,'<100','>=7',4,'male single',none,2,car,31,none,own,1,skilled,1,none,yes,good
+'0<=X<200',6,'existing paid',radio/tv,1068,'<100','>=7',4,'male single',none,4,car,28,none,own,1,skilled,2,none,yes,good
+'<0',24,'critical/other existing credit','used car',6615,'<100',unemployed,2,'male single',none,4,'no known property',75,none,'for free',2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',18,'critical/other existing credit',education,1864,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,2,'real estate',30,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',60,'existing paid','new car',7408,'100<=X<500','<1',4,'female div/dep/mar',none,2,'life insurance',24,none,own,1,'high qualif/self emp/mgmt',1,none,yes,bad
+'no checking',48,'critical/other existing credit','used car',11590,'100<=X<500','1<=X<4',2,'female div/dep/mar',none,4,car,24,bank,rent,2,'unskilled resident',1,none,yes,bad
+'<0',24,'no credits/all paid',furniture/equipment,4110,'<100','>=7',3,'male single',none,4,'no known property',23,bank,rent,2,skilled,2,none,yes,bad
+'<0',6,'critical/other existing credit',furniture/equipment,3384,'<100','1<=X<4',1,'male div/sep',none,4,'real estate',44,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',13,'existing paid',radio/tv,2101,'<100','<1',2,'female div/dep/mar',guarantor,4,'life insurance',23,none,own,1,'unskilled resident',1,none,yes,good
+'<0',15,'existing paid','domestic appliance',1275,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,car,24,none,rent,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',furniture/equipment,4169,'<100','1<=X<4',4,'male single',none,4,'life insurance',28,none,own,1,skilled,1,none,yes,good
+'0<=X<200',10,'existing paid',furniture/equipment,1521,'<100','1<=X<4',4,'male div/sep',none,2,car,31,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'critical/other existing credit',education,5743,'<100','<1',2,'female div/dep/mar',none,4,'no known property',24,none,'for free',2,skilled,1,yes,yes,good
+'<0',21,'existing paid',furniture/equipment,3599,'<100','4<=X<7',1,'female div/dep/mar',none,4,car,26,none,rent,1,'unskilled resident',1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,3213,'500<=X<1000','<1',1,'male mar/wid',none,3,'real estate',25,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',business,4439,'<100','>=7',1,'male single','co applicant',1,'real estate',33,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',10,'existing paid','new car',3949,'<100','<1',1,'male single',guarantor,1,'life insurance',37,none,own,1,'unskilled resident',2,none,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1459,'<100','1<=X<4',4,'female div/dep/mar',none,2,car,43,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',13,'critical/other existing credit',radio/tv,882,'<100','<1',4,'male single',guarantor,4,'real estate',23,none,own,2,skilled,1,none,yes,good
+'0<=X<200',24,'existing paid',radio/tv,3758,'500<=X<1000',unemployed,1,'female div/dep/mar',none,4,'no known property',23,none,rent,1,'unemp/unskilled non res',1,none,yes,good
+'no checking',6,'delayed previously',business,1743,'100<=X<500','1<=X<4',1,'male single',none,2,'real estate',34,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'critical/other existing credit',education,1136,'>=1000','>=7',4,'male single',none,3,'no known property',32,none,'for free',2,skilled,2,none,yes,bad
+'no checking',9,'existing paid','domestic appliance',1236,'<100','<1',1,'female div/dep/mar',none,4,'real estate',23,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',9,'existing paid',furniture/equipment,959,'<100','1<=X<4',1,'female div/dep/mar',none,2,car,29,none,own,1,skilled,1,none,no,bad
+'no checking',18,'critical/other existing credit','used car',3229,'no known savings',unemployed,2,'male single',none,4,'no known property',38,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'no credits/all paid',radio/tv,6199,'<100','1<=X<4',4,'male single',none,2,'life insurance',28,none,rent,2,skilled,1,yes,yes,bad
+'no checking',10,'existing paid',education,727,'500<=X<1000','>=7',4,'male single',none,4,'no known property',46,none,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',24,'existing paid','new car',1246,'<100','<1',4,'male single',none,2,'real estate',23,stores,own,1,'unskilled resident',1,none,yes,bad
+'no checking',12,'critical/other existing credit',radio/tv,2331,'no known savings','>=7',1,'male single','co applicant',4,'real estate',49,none,own,1,skilled,1,yes,yes,good
+'no checking',36,'delayed previously',radio/tv,4463,'<100','1<=X<4',4,'male single',none,2,car,26,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',12,'existing paid',radio/tv,776,'<100','1<=X<4',4,'male mar/wid',none,2,'real estate',28,none,own,1,skilled,1,none,yes,good
+'<0',30,'existing paid',furniture/equipment,2406,'<100','4<=X<7',4,'female div/dep/mar',none,4,'real estate',23,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',18,'existing paid',education,1239,'no known savings','1<=X<4',4,'male single',none,4,'no known property',61,none,'for free',1,skilled,1,none,yes,good
+'>=200',12,'existing paid',radio/tv,3399,'no known savings','>=7',2,'male single',none,3,car,37,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'>=200',12,'delayed previously','new car',2247,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,36,stores,own,2,skilled,1,yes,yes,good
+'no checking',6,'existing paid',furniture/equipment,1766,'<100','1<=X<4',1,'male mar/wid',none,2,'life insurance',21,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,2473,'<100',unemployed,4,'male single',none,1,car,25,none,own,1,'unemp/unskilled non res',1,none,yes,bad
+'no checking',12,'existing paid',business,1542,'<100','4<=X<7',2,'male single',none,4,car,36,none,own,1,skilled,1,yes,yes,good
+'no checking',18,'critical/other existing credit','used car',3850,'<100','4<=X<7',3,'male single',none,1,car,27,none,own,2,skilled,1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,3650,'<100','<1',1,'female div/dep/mar',none,4,car,22,none,rent,1,skilled,1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,3446,'<100','>=7',4,'male single',none,2,car,42,none,own,1,skilled,2,none,yes,bad
+'0<=X<200',18,'existing paid',furniture/equipment,3001,'<100','4<=X<7',2,'female div/dep/mar',none,4,'real estate',40,none,rent,1,skilled,1,none,yes,good
+'no checking',36,'existing paid','new car',3079,'no known savings','1<=X<4',4,'male single',none,4,'real estate',36,none,own,1,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,6070,'<100','>=7',3,'male single',none,4,car,33,none,own,2,skilled,1,yes,yes,good
+'no checking',10,'critical/other existing credit',furniture/equipment,2146,'<100','<1',1,'female div/dep/mar',none,3,'real estate',23,none,rent,2,skilled,1,none,yes,good
+'no checking',60,'critical/other existing credit','new car',13756,'no known savings','>=7',2,'male single',none,4,'no known property',63,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',60,'all paid',other,14782,'100<=X<500','>=7',3,'female div/dep/mar',none,4,'no known property',60,bank,'for free',2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',48,'all paid',business,7685,'<100','4<=X<7',2,'female div/dep/mar',guarantor,4,car,37,none,rent,1,skilled,1,none,yes,bad
+'no checking',18,'delayed previously',radio/tv,2320,'<100',unemployed,2,'male mar/wid',none,3,'real estate',34,none,own,2,skilled,1,none,yes,good
+'no checking',7,'delayed previously',radio/tv,846,'no known savings','>=7',3,'male single',none,4,'no known property',36,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid','new car',14318,'<100','>=7',4,'male single',none,2,'no known property',57,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',6,'critical/other existing credit','new car',362,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,4,car,52,none,own,2,'unskilled resident',1,none,yes,good
+'<0',20,'existing paid',furniture/equipment,2212,'no known savings','4<=X<7',4,'male single',none,4,car,39,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'existing paid','used car',12976,'<100',unemployed,3,'female div/dep/mar',none,4,'no known property',38,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',22,'existing paid','new car',1283,'no known savings','4<=X<7',4,'female div/dep/mar',none,4,'life insurance',25,none,rent,1,skilled,1,none,yes,good
+'>=200',12,'existing paid','new car',1330,'<100','<1',4,'male single',none,1,'real estate',26,none,own,1,skilled,1,none,yes,good
+'no checking',30,'delayed previously',business,4272,'100<=X<500','1<=X<4',2,'male single',none,2,'life insurance',26,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,2238,'<100','1<=X<4',2,'female div/dep/mar',none,1,car,25,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid',radio/tv,1126,'no known savings','<1',4,'female div/dep/mar',none,2,'real estate',21,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,7374,'<100',unemployed,4,'male single',none,4,'life insurance',40,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',15,'critical/other existing credit',business,2326,'500<=X<1000','1<=X<4',2,'male single',none,4,car,27,bank,own,1,skilled,1,none,yes,good
+'no checking',9,'existing paid',business,1449,'<100','4<=X<7',3,'female div/dep/mar',none,2,car,27,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid','new car',1820,'<100','1<=X<4',2,'male mar/wid',none,2,'life insurance',30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,983,'>=1000','<1',1,'female div/dep/mar',none,4,'real estate',19,none,rent,1,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid','new car',3249,'<100','4<=X<7',2,'male single',none,4,'no known property',39,bank,'for free',1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',6,'critical/other existing credit',radio/tv,1957,'<100','4<=X<7',1,'female div/dep/mar',none,4,car,31,none,own,1,skilled,1,none,yes,good
+'no checking',9,'critical/other existing credit',furniture/equipment,2406,'<100',unemployed,2,'male single',none,3,car,31,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',39,'delayed previously',education,11760,'100<=X<500','4<=X<7',2,'male single',none,3,'no known property',32,none,rent,1,skilled,1,yes,yes,good
+'<0',12,'existing paid',furniture/equipment,2578,'<100',unemployed,3,'female div/dep/mar',none,4,'no known property',55,none,'for free',1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',36,'critical/other existing credit',furniture/equipment,2348,'<100','1<=X<4',3,'male mar/wid',none,2,'life insurance',46,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid','new car',1223,'<100','>=7',1,'male div/sep',none,1,'real estate',46,none,rent,2,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,1516,'>=1000','1<=X<4',4,'female div/dep/mar',none,1,'real estate',43,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',radio/tv,1473,'<100','<1',3,'male mar/wid',none,4,'real estate',39,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',business,1887,'no known savings','1<=X<4',4,'male mar/wid',none,4,'real estate',28,bank,own,2,skilled,1,none,yes,good
+'no checking',24,'delayed previously',business,8648,'<100','<1',2,'male single',none,2,car,27,bank,own,2,skilled,1,yes,yes,bad
+'no checking',14,'delayed previously','new car',802,'<100','1<=X<4',4,'male single',none,2,car,27,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',18,'delayed previously','new car',2899,'no known savings','>=7',4,'male single',none,4,car,43,none,own,1,skilled,2,none,yes,good
+'0<=X<200',24,'existing paid',radio/tv,2039,'<100','<1',1,'male mar/wid',none,1,'life insurance',22,none,own,1,skilled,1,yes,yes,bad
+'no checking',24,'critical/other existing credit','used car',2197,'no known savings','4<=X<7',4,'male single',none,4,car,43,none,own,2,skilled,2,yes,yes,good
+'<0',15,'existing paid',radio/tv,1053,'<100','<1',4,'male mar/wid',none,2,'real estate',27,none,own,1,skilled,1,none,no,good
+'no checking',24,'existing paid',radio/tv,3235,'500<=X<1000','>=7',3,'male div/sep',none,2,car,26,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',12,'critical/other existing credit','new car',939,'500<=X<1000','4<=X<7',4,'male mar/wid',none,2,'real estate',28,none,own,3,skilled,1,yes,yes,bad
+'0<=X<200',24,'existing paid',radio/tv,1967,'<100','>=7',4,'female div/dep/mar',none,4,car,20,none,own,1,skilled,1,yes,yes,good
+'no checking',33,'critical/other existing credit','used car',7253,'<100','4<=X<7',3,'male single',none,2,car,35,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'critical/other existing credit',business,2292,'<100',unemployed,4,'male single',none,2,car,42,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',10,'existing paid','new car',1597,'500<=X<1000','1<=X<4',3,'male single',none,2,'no known property',40,none,rent,1,'unskilled resident',2,none,no,good
+'<0',24,'existing paid','new car',1381,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,'life insurance',35,none,own,1,skilled,1,none,yes,bad
+'no checking',36,'critical/other existing credit','used car',5842,'<100','>=7',2,'male single',none,2,'life insurance',35,none,own,2,skilled,2,yes,yes,good
+'<0',12,'existing paid','new car',2579,'<100','<1',4,'male single',none,1,'real estate',33,none,own,1,'unskilled resident',2,none,yes,bad
+'<0',18,'delayed previously',education,8471,'no known savings','1<=X<4',1,'female div/dep/mar',none,2,car,23,none,rent,2,skilled,1,yes,yes,good
+'no checking',21,'existing paid','new car',2782,'500<=X<1000','4<=X<7',1,'female div/dep/mar',none,2,car,31,bank,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',18,'existing paid','new car',1042,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,'life insurance',33,none,own,1,skilled,1,none,yes,bad
+'no checking',15,'existing paid','new car',3186,'>=1000','4<=X<7',2,'female div/dep/mar',none,3,car,20,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','used car',2028,'no known savings','1<=X<4',4,'male single',none,2,car,30,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'critical/other existing credit','new car',958,'<100','4<=X<7',2,'male single',none,3,'real estate',47,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',21,'delayed previously',furniture/equipment,1591,'100<=X<500','4<=X<7',4,'male single',none,3,'real estate',34,none,own,2,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,2762,'no known savings','>=7',1,'female div/dep/mar',none,2,'life insurance',25,bank,own,1,skilled,1,yes,yes,bad
+'0<=X<200',18,'existing paid','used car',2779,'<100','1<=X<4',1,'male mar/wid',none,3,car,21,none,rent,1,skilled,1,yes,yes,good
+'no checking',28,'critical/other existing credit',radio/tv,2743,'<100','>=7',4,'male single',none,2,car,29,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1149,'>=1000','1<=X<4',4,'male single',none,3,'real estate',46,none,own,2,skilled,1,none,yes,good
+'no checking',9,'existing paid',furniture/equipment,1313,'<100','>=7',1,'male single',none,4,car,20,none,own,1,skilled,1,none,yes,good
+'<0',18,'critical/other existing credit',repairs,1190,'<100',unemployed,2,'female div/dep/mar',none,4,'no known property',55,none,'for free',3,'unemp/unskilled non res',2,none,yes,bad
+'no checking',5,'existing paid',business,3448,'<100','4<=X<7',1,'male single',none,4,'real estate',74,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid',other,11328,'<100','1<=X<4',2,'male single','co applicant',3,car,29,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',6,'critical/other existing credit',furniture/equipment,1872,'<100',unemployed,4,'male single',none,4,'no known property',36,none,'for free',3,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'critical/other existing credit',repairs,2058,'<100','1<=X<4',4,'male div/sep',none,2,'real estate',33,none,own,2,skilled,1,yes,yes,good
+'<0',9,'existing paid',furniture/equipment,2136,'<100','1<=X<4',3,'male single',none,2,'real estate',25,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1484,'no known savings','1<=X<4',2,'male mar/wid',none,1,'real estate',25,none,own,1,skilled,1,yes,yes,bad
+'no checking',6,'existing paid',repairs,660,'500<=X<1000','4<=X<7',2,'male mar/wid',none,4,'real estate',23,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',24,'critical/other existing credit','new car',1287,'>=1000','>=7',4,'female div/dep/mar',none,4,'real estate',37,none,own,2,skilled,1,yes,yes,good
+'<0',42,'critical/other existing credit',repairs,3394,'<100',unemployed,4,'male single','co applicant',4,car,65,none,own,2,'unemp/unskilled non res',1,none,yes,good
+'>=200',12,'all paid',business,609,'<100','<1',4,'female div/dep/mar',none,1,'real estate',26,none,own,1,'unemp/unskilled non res',1,none,yes,bad
+'no checking',12,'existing paid','new car',1884,'<100','>=7',4,'male single',none,4,car,39,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid',furniture/equipment,1620,'<100','1<=X<4',2,'female div/dep/mar','co applicant',3,'life insurance',30,none,own,1,skilled,1,none,yes,good
+'0<=X<200',20,'delayed previously',other,2629,'<100','1<=X<4',2,'male single',none,3,car,29,bank,own,2,skilled,1,yes,yes,good
+'no checking',12,'existing paid',education,719,'<100','>=7',4,'male single',none,4,car,41,bank,own,1,'unskilled resident',2,none,yes,bad
+'0<=X<200',48,'critical/other existing credit',furniture/equipment,5096,'<100','1<=X<4',2,'female div/dep/mar',none,3,car,30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',9,'critical/other existing credit',education,1244,'no known savings','>=7',4,'female div/dep/mar',none,4,'life insurance',41,none,rent,2,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid','new car',1842,'<100','<1',4,'female div/dep/mar',none,4,car,34,none,own,1,skilled,1,yes,yes,bad
+'0<=X<200',7,'existing paid',radio/tv,2576,'<100','1<=X<4',2,'male single',guarantor,2,'real estate',35,none,own,1,skilled,1,none,yes,good
+'>=200',12,'existing paid',furniture/equipment,1424,'no known savings','>=7',3,'female div/dep/mar',none,4,'real estate',55,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',15,'delayed previously',repairs,1512,'>=1000','1<=X<4',3,'male mar/wid',none,3,'life insurance',61,stores,own,2,skilled,1,none,yes,bad
+'no checking',36,'critical/other existing credit','used car',11054,'no known savings','1<=X<4',4,'male single',none,2,car,30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',6,'existing paid',radio/tv,518,'<100','1<=X<4',3,'female div/dep/mar',none,1,'real estate',29,none,own,1,skilled,1,none,yes,good
+'no checking',12,'no credits/all paid',furniture/equipment,2759,'<100','>=7',2,'male single',none,4,'life insurance',34,none,own,2,skilled,1,none,yes,good
+'no checking',24,'existing paid','used car',2670,'<100','>=7',4,'male single',none,4,car,35,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',24,'existing paid','new car',4817,'<100','4<=X<7',2,'male single','co applicant',3,'life insurance',31,none,own,1,skilled,1,yes,yes,bad
+'no checking',24,'existing paid','used car',2679,'<100','<1',4,'female div/dep/mar',none,1,'no known property',29,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',11,'critical/other existing credit','new car',3905,'<100','1<=X<4',2,'male single',none,2,'real estate',36,none,rent,2,skilled,2,none,yes,good
+'<0',12,'existing paid','used car',3386,'<100','>=7',3,'male single',none,4,'no known property',35,none,'for free',1,skilled,1,yes,yes,bad
+'<0',6,'existing paid','domestic appliance',343,'<100','<1',4,'female div/dep/mar',none,1,'real estate',27,none,own,1,skilled,1,none,yes,good
+'no checking',18,'existing paid',radio/tv,4594,'<100','<1',3,'male single',none,2,car,32,none,own,1,skilled,1,yes,yes,good
+'<0',36,'existing paid',furniture/equipment,3620,'<100','1<=X<4',1,'male single',guarantor,2,'life insurance',37,none,own,1,skilled,2,none,yes,good
+'<0',15,'existing paid','new car',1721,'<100','<1',2,'male single',none,3,'real estate',36,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,3017,'<100','<1',3,'female div/dep/mar',none,1,'real estate',34,none,rent,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',12,'existing paid',retraining,754,'no known savings','>=7',4,'male single',none,4,'life insurance',38,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid',business,1950,'<100','4<=X<7',4,'male single',none,1,car,34,stores,own,2,skilled,1,yes,yes,good
+'<0',24,'existing paid','used car',2924,'<100','1<=X<4',3,'male single',guarantor,4,'no known property',63,bank,own,1,skilled,2,yes,yes,good
+'<0',24,'delayed previously',radio/tv,1659,'<100','<1',4,'female div/dep/mar',none,2,car,29,none,rent,1,'unskilled resident',1,yes,yes,bad
+'no checking',48,'delayed previously',radio/tv,7238,'no known savings','>=7',3,'male single',none,3,car,32,bank,own,2,skilled,2,none,yes,good
+'no checking',33,'delayed previously',business,2764,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,26,none,own,2,skilled,1,yes,yes,good
+'no checking',24,'delayed previously','used car',4679,'<100','4<=X<7',3,'male single',none,3,car,35,none,own,2,'unskilled resident',1,yes,yes,good
+'0<=X<200',24,'existing paid',radio/tv,3092,'100<=X<500','<1',3,'male mar/wid',none,2,car,22,none,rent,1,skilled,1,yes,yes,bad
+'<0',6,'existing paid',education,448,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',23,none,own,1,skilled,1,none,yes,bad
+'<0',9,'existing paid','new car',654,'<100','1<=X<4',4,'male single',none,3,car,28,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',6,'existing paid',retraining,1238,'no known savings',unemployed,4,'male single',none,4,'life insurance',36,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',radio/tv,1245,'<100','1<=X<4',4,'male mar/wid',none,2,car,33,none,own,1,skilled,1,none,yes,bad
+'<0',18,'no credits/all paid',furniture/equipment,3114,'<100','<1',1,'female div/dep/mar',none,4,'life insurance',26,none,rent,1,skilled,1,none,yes,bad
+'no checking',39,'existing paid','used car',2569,'500<=X<1000','1<=X<4',4,'male single',none,4,car,24,none,own,1,skilled,1,none,yes,good
+'>=200',24,'existing paid',radio/tv,5152,'<100','4<=X<7',4,'male single',none,2,car,25,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',business,1037,'100<=X<500','4<=X<7',3,'male single',none,4,'real estate',39,none,own,1,'unskilled resident',1,none,yes,good
+'<0',15,'critical/other existing credit',furniture/equipment,1478,'<100','>=7',4,'male single',none,4,car,44,none,own,2,skilled,2,yes,yes,good
+'0<=X<200',12,'critical/other existing credit',radio/tv,3573,'<100','1<=X<4',1,'female div/dep/mar',none,1,'real estate',23,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid','new car',1201,'<100','<1',4,'male single',none,1,'life insurance',26,none,own,1,skilled,1,none,yes,good
+'<0',30,'existing paid',furniture/equipment,3622,'>=1000','>=7',4,'female div/dep/mar',none,4,'life insurance',57,none,rent,2,skilled,1,yes,yes,good
+'no checking',15,'delayed previously',furniture/equipment,960,'>=1000','4<=X<7',3,'female div/dep/mar',none,2,'life insurance',30,none,own,2,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit','new car',1163,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',44,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'delayed previously','new car',1209,'<100',unemployed,4,'male single',none,4,'life insurance',47,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',12,'existing paid',radio/tv,3077,'<100','1<=X<4',2,'male single',none,4,car,52,none,own,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid','new car',3757,'<100','>=7',4,'female div/dep/mar','co applicant',4,'no known property',62,none,'for free',1,skilled,1,yes,yes,good
+'no checking',10,'existing paid','new car',1418,'100<=X<500','1<=X<4',3,'male single',none,2,'real estate',35,none,rent,1,'unskilled resident',1,none,no,good
+'no checking',6,'existing paid','new car',3518,'<100','1<=X<4',2,'male single',guarantor,3,'life insurance',26,none,rent,1,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,1934,'<100','>=7',2,'male single',none,2,'no known property',26,none,own,2,skilled,1,none,yes,good
+'0<=X<200',27,'no credits/all paid',business,8318,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',42,none,'for free',2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',6,'critical/other existing credit',radio/tv,1237,'100<=X<500','1<=X<4',1,'female div/dep/mar',none,1,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',6,'existing paid',radio/tv,368,'no known savings','>=7',4,'male single',none,4,'life insurance',38,none,own,1,skilled,1,none,yes,good
+'<0',12,'critical/other existing credit','new car',2122,'<100','1<=X<4',3,'male single',none,2,'real estate',39,none,rent,2,'unskilled resident',2,none,no,good
+'<0',24,'existing paid',furniture/equipment,2996,'no known savings','1<=X<4',2,'male mar/wid',none,4,car,20,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',36,'existing paid',furniture/equipment,9034,'100<=X<500','<1',4,'male single','co applicant',1,'no known property',29,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit',furniture/equipment,1585,'<100','4<=X<7',4,'male single',none,3,'life insurance',40,none,own,2,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,1301,'<100','>=7',4,'male mar/wid',guarantor,2,'real estate',32,none,own,1,'unskilled resident',1,none,yes,good
+'>=200',6,'critical/other existing credit','new car',1323,'100<=X<500','>=7',2,'male div/sep',none,4,car,28,none,own,2,skilled,2,yes,yes,good
+'<0',24,'existing paid','new car',3123,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',27,none,own,1,skilled,1,none,yes,bad
+'<0',36,'existing paid','used car',5493,'<100','>=7',2,'male single',none,4,'no known property',42,none,'for free',1,skilled,2,none,yes,good
+'>=200',9,'existing paid',radio/tv,1126,'100<=X<500','>=7',2,'male div/sep',none,4,'real estate',49,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit',radio/tv,1216,'100<=X<500','<1',4,'male single',none,4,'no known property',38,bank,own,2,skilled,2,none,yes,bad
+'<0',24,'existing paid','new car',1207,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,skilled,1,none,yes,bad
+'no checking',10,'existing paid','new car',1309,'no known savings','1<=X<4',4,'male single',guarantor,4,'life insurance',27,none,own,1,'unskilled resident',1,none,yes,bad
+'>=200',15,'critical/other existing credit','used car',2360,'500<=X<1000','1<=X<4',2,'male single',none,2,car,36,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',15,'all paid','new car',6850,'100<=X<500',unemployed,1,'male single',none,2,'life insurance',34,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,bad
+'no checking',24,'existing paid',radio/tv,1413,'<100','1<=X<4',4,'male mar/wid',none,2,'life insurance',28,none,own,1,skilled,1,none,yes,good
+'no checking',39,'existing paid','used car',8588,'100<=X<500','>=7',4,'male single',none,2,car,45,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid','new car',759,'<100','4<=X<7',4,'male single',none,2,'real estate',26,none,own,1,skilled,1,none,yes,bad
+'no checking',36,'existing paid','used car',4686,'<100','1<=X<4',2,'male single',none,2,'no known property',32,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',15,'existing paid',business,2687,'<100','4<=X<7',2,'male single',none,4,'life insurance',26,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',12,'delayed previously',radio/tv,585,'<100','1<=X<4',4,'male mar/wid','co applicant',4,'real estate',20,none,rent,2,skilled,1,none,yes,good
+'no checking',24,'existing paid','new car',2255,'no known savings','<1',4,'male single',none,1,'life insurance',54,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit','new car',609,'<100','4<=X<7',4,'female div/dep/mar',none,3,'life insurance',37,none,own,2,skilled,1,none,no,good
+'<0',6,'critical/other existing credit','new car',1361,'<100','<1',2,'male single',none,4,'real estate',40,none,own,1,'unskilled resident',2,none,no,good
+'no checking',36,'critical/other existing credit',furniture/equipment,7127,'<100','<1',2,'female div/dep/mar',none,4,'life insurance',23,none,rent,2,skilled,1,yes,yes,bad
+'<0',6,'existing paid','new car',1203,'100<=X<500','>=7',3,'male single',none,2,'life insurance',43,none,own,1,skilled,1,yes,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,700,'no known savings','>=7',4,'male single',none,4,'no known property',36,none,'for free',2,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',repairs,5507,'<100','>=7',3,'male single',none,4,'no known property',44,none,'for free',2,skilled,1,none,yes,good
+'<0',18,'existing paid',radio/tv,3190,'<100','1<=X<4',2,'female div/dep/mar',none,2,'real estate',24,none,own,1,skilled,1,none,yes,bad
+'<0',48,'no credits/all paid',furniture/equipment,7119,'<100','1<=X<4',3,'male single',none,4,'no known property',53,none,'for free',2,skilled,2,none,yes,bad
+'no checking',24,'existing paid','used car',3488,'100<=X<500','4<=X<7',3,'female div/dep/mar',none,4,car,23,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,1113,'<100','1<=X<4',4,'female div/dep/mar',guarantor,4,'real estate',26,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',26,'existing paid','used car',7966,'<100','<1',2,'male single',none,3,car,30,none,own,2,skilled,1,none,yes,good
+'no checking',15,'critical/other existing credit',education,1532,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,3,car,31,none,own,1,skilled,1,none,yes,good
+'no checking',4,'critical/other existing credit',radio/tv,1503,'<100','4<=X<7',2,'male single',none,1,'real estate',42,none,own,2,'unskilled resident',2,none,yes,good
+'<0',36,'existing paid',radio/tv,2302,'<100','1<=X<4',4,'male div/sep',none,4,car,31,none,rent,1,skilled,1,none,yes,bad
+'<0',6,'existing paid','new car',662,'<100','<1',3,'male single',none,4,'real estate',41,none,own,1,'unskilled resident',2,yes,yes,good
+'0<=X<200',36,'existing paid',education,2273,'<100','4<=X<7',3,'male single',none,1,car,32,none,own,2,skilled,2,none,yes,good
+'0<=X<200',15,'existing paid','new car',2631,'100<=X<500','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,rent,2,skilled,1,yes,yes,bad
+'no checking',12,'delayed previously','used car',1503,'<100','1<=X<4',4,'male mar/wid',none,4,'real estate',41,none,rent,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,1311,'100<=X<500','4<=X<7',4,'male mar/wid',none,3,'life insurance',26,none,own,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid',radio/tv,3105,'no known savings','<1',4,'male single',none,2,car,25,none,own,2,skilled,1,none,yes,good
+'>=200',21,'critical/other existing credit',education,2319,'<100','<1',2,'male div/sep',none,1,car,33,none,rent,1,skilled,1,none,yes,bad
+'<0',6,'existing paid','new car',1374,'no known savings',unemployed,4,'female div/dep/mar',none,3,'life insurance',75,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,3612,'<100','>=7',3,'female div/dep/mar',none,4,'life insurance',37,none,own,1,skilled,1,yes,yes,good
+'<0',48,'existing paid','new car',7763,'<100','>=7',4,'male single',none,4,'no known property',42,bank,'for free',1,'high qualif/self emp/mgmt',1,none,yes,bad
+'>=200',18,'existing paid',furniture/equipment,3049,'<100','<1',1,'female div/dep/mar',none,1,'life insurance',45,stores,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1534,'<100','<1',1,'male mar/wid',none,1,'real estate',23,none,rent,1,skilled,1,none,yes,bad
+'no checking',24,'delayed previously','new car',2032,'<100','>=7',4,'male single',none,4,'no known property',60,none,'for free',2,skilled,1,yes,yes,good
+'<0',30,'existing paid',furniture/equipment,6350,'no known savings','>=7',4,'male single',none,4,'life insurance',31,none,own,1,skilled,1,none,yes,bad
+'>=200',18,'existing paid',furniture/equipment,2864,'<100','1<=X<4',2,'male single',none,1,'real estate',34,none,own,1,'unskilled resident',2,none,yes,bad
+'no checking',12,'critical/other existing credit','new car',1255,'<100','>=7',4,'male single',none,4,'real estate',61,none,own,2,'unskilled resident',1,none,yes,good
+'<0',24,'delayed previously','new car',1333,'<100',unemployed,4,'male single',none,2,'real estate',43,none,'for free',2,skilled,2,none,yes,bad
+'no checking',24,'critical/other existing credit','new car',2022,'<100','1<=X<4',4,'female div/dep/mar',none,4,car,37,none,own,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid',radio/tv,1552,'<100','4<=X<7',3,'male single',none,1,car,32,bank,own,1,skilled,2,none,yes,good
+'<0',12,'all paid',radio/tv,626,'<100','1<=X<4',4,'female div/dep/mar',none,4,'real estate',24,bank,own,1,'unskilled resident',1,none,yes,bad
+'no checking',48,'critical/other existing credit','used car',8858,'no known savings','4<=X<7',2,'male single',none,1,'no known property',35,none,'for free',2,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',repairs,996,'no known savings','4<=X<7',4,'female div/dep/mar',none,4,'real estate',23,none,own,2,skilled,1,none,yes,good
+'no checking',6,'all paid',radio/tv,1750,'500<=X<1000','>=7',2,'male single',none,4,'life insurance',45,bank,own,1,'unskilled resident',2,none,yes,good
+'<0',48,'existing paid',radio/tv,6999,'<100','4<=X<7',1,'male mar/wid',guarantor,1,'real estate',34,none,own,2,skilled,1,yes,yes,bad
+'0<=X<200',12,'critical/other existing credit','new car',1995,'100<=X<500','<1',4,'male single',none,1,car,27,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',education,1199,'<100','4<=X<7',4,'female div/dep/mar',none,4,'life insurance',67,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1331,'<100','<1',2,'male single',none,1,car,22,stores,own,1,skilled,1,none,yes,bad
+'0<=X<200',18,'no credits/all paid','new car',2278,'100<=X<500','<1',3,'female div/dep/mar',none,3,car,28,none,own,2,skilled,1,none,yes,bad
+'no checking',21,'no credits/all paid','new car',5003,'no known savings','1<=X<4',1,'female div/dep/mar',none,4,'life insurance',29,bank,own,2,skilled,1,yes,yes,bad
+'<0',24,'all paid',furniture/equipment,3552,'<100','4<=X<7',3,'male single',none,4,car,27,bank,own,1,skilled,1,none,yes,bad
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,1928,'<100','<1',2,'male single',none,2,'real estate',31,none,own,2,'unskilled resident',1,none,yes,bad
+'<0',24,'existing paid','used car',2964,'no known savings','>=7',4,'male single',none,4,'no known property',49,bank,'for free',1,skilled,2,yes,yes,good
+'<0',24,'all paid',radio/tv,1546,'<100','4<=X<7',4,'male single',guarantor,4,car,24,bank,rent,1,'unskilled resident',1,none,yes,bad
+'>=200',6,'delayed previously',radio/tv,683,'<100','<1',2,'female div/dep/mar',none,1,'life insurance',29,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid','new car',12389,'no known savings','1<=X<4',1,'male single',none,4,'no known property',37,none,'for free',1,skilled,1,yes,yes,bad
+'0<=X<200',24,'delayed previously',business,4712,'no known savings','1<=X<4',4,'male single',none,2,'life insurance',37,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',24,'delayed previously',radio/tv,1553,'100<=X<500','4<=X<7',3,'female div/dep/mar',none,2,'life insurance',23,none,rent,2,skilled,1,yes,yes,good
+'<0',12,'existing paid','new car',1372,'<100','4<=X<7',2,'male div/sep',none,3,car,36,none,own,1,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,2578,'>=1000','>=7',2,'male single',none,2,car,34,none,own,1,skilled,1,none,yes,good
+'0<=X<200',48,'existing paid',radio/tv,3979,'no known savings','4<=X<7',4,'male single',none,1,car,41,none,own,2,skilled,2,yes,yes,good
+'<0',48,'existing paid',radio/tv,6758,'<100','1<=X<4',3,'female div/dep/mar',none,2,car,31,none,own,1,skilled,1,yes,yes,bad
+'<0',24,'existing paid',furniture/equipment,3234,'<100','<1',4,'female div/dep/mar',none,4,'real estate',23,none,rent,1,'unskilled resident',1,yes,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,5954,'<100','4<=X<7',3,'male single','co applicant',2,car,38,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid','used car',5433,'no known savings',unemployed,2,'female div/dep/mar',none,4,'life insurance',26,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',15,'existing paid',business,806,'<100','1<=X<4',4,'female div/dep/mar',none,4,'life insurance',22,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'existing paid',radio/tv,1082,'<100','>=7',4,'male single',none,4,car,27,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',15,'critical/other existing credit',furniture/equipment,2788,'<100','4<=X<7',2,'female div/dep/mar','co applicant',3,car,24,bank,own,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,2930,'<100','4<=X<7',2,'female div/dep/mar',none,1,'real estate',27,none,own,1,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',education,1927,'no known savings','1<=X<4',3,'female div/dep/mar',none,2,car,33,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',36,'critical/other existing credit','new car',2820,'<100','<1',4,'male div/sep',none,4,car,27,none,own,2,skilled,1,none,yes,bad
+'no checking',24,'existing paid',retraining,937,'<100','<1',4,'male mar/wid',none,3,car,27,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',18,'critical/other existing credit','new car',1056,'<100','>=7',3,'male single',guarantor,3,'real estate',30,bank,own,2,skilled,1,none,yes,bad
+'0<=X<200',12,'critical/other existing credit','new car',3124,'<100','<1',1,'male single',none,3,'real estate',49,bank,own,2,'unskilled resident',2,none,yes,good
+'no checking',9,'existing paid',furniture/equipment,1388,'<100','1<=X<4',4,'female div/dep/mar',none,2,'real estate',26,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid',repairs,2384,'<100','<1',4,'male single',none,1,'no known property',33,none,rent,1,'unskilled resident',1,none,yes,bad
+'no checking',12,'existing paid','new car',2133,'no known savings','>=7',4,'female div/dep/mar',none,4,'no known property',52,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',18,'existing paid',furniture/equipment,2039,'<100','1<=X<4',1,'female div/dep/mar',none,4,'real estate',20,bank,rent,1,skilled,1,none,yes,bad
+'<0',9,'critical/other existing credit','new car',2799,'<100','1<=X<4',2,'male single',none,2,'real estate',36,none,rent,2,skilled,2,none,yes,good
+'<0',12,'existing paid',furniture/equipment,1289,'<100','1<=X<4',4,'male single',guarantor,1,'life insurance',21,none,own,1,'unskilled resident',1,none,yes,good
+'<0',18,'existing paid','domestic appliance',1217,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',47,none,own,1,'unskilled resident',1,yes,yes,bad
+'<0',12,'critical/other existing credit',furniture/equipment,2246,'<100','>=7',3,'male single',none,3,'life insurance',60,none,own,2,skilled,1,none,yes,bad
+'<0',12,'critical/other existing credit',radio/tv,385,'<100','4<=X<7',4,'female div/dep/mar',none,3,'real estate',58,none,own,4,'unskilled resident',1,yes,yes,good
+'0<=X<200',24,'delayed previously','new car',1965,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,car,42,none,rent,2,skilled,1,yes,yes,good
+'no checking',21,'existing paid',business,1572,'>=1000','>=7',4,'female div/dep/mar',none,4,'real estate',36,bank,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid','new car',2718,'<100','1<=X<4',3,'female div/dep/mar',none,4,'life insurance',20,none,rent,1,'unskilled resident',1,yes,yes,bad
+'<0',24,'all paid',other,1358,'no known savings','>=7',4,'male single',none,3,car,40,stores,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',6,'all paid','new car',931,'100<=X<500','<1',1,'female div/dep/mar',none,1,'life insurance',32,stores,own,1,'unskilled resident',1,none,yes,bad
+'<0',24,'existing paid','new car',1442,'<100','4<=X<7',4,'female div/dep/mar',none,4,car,23,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',24,'no credits/all paid',business,4241,'<100','1<=X<4',1,'male single',none,4,'real estate',36,none,own,3,'unskilled resident',1,yes,yes,bad
+'no checking',18,'critical/other existing credit','new car',2775,'<100','4<=X<7',2,'male single',none,2,'life insurance',31,bank,own,2,skilled,1,none,yes,bad
+'no checking',24,'delayed previously',business,3863,'<100','1<=X<4',1,'male single',none,2,'no known property',32,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',7,'existing paid',radio/tv,2329,'<100','<1',1,'female div/dep/mar',guarantor,1,'real estate',45,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',furniture/equipment,918,'<100','1<=X<4',4,'female div/dep/mar',none,1,'life insurance',30,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',24,'all paid',education,1837,'<100','4<=X<7',4,'female div/dep/mar',none,4,'no known property',34,bank,'for free',1,'unskilled resident',1,none,yes,bad
+'no checking',36,'existing paid',furniture/equipment,3349,'<100','1<=X<4',4,'female div/dep/mar',none,2,car,28,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'>=200',10,'existing paid',furniture/equipment,1275,'<100','<1',4,'female div/dep/mar',none,2,'life insurance',23,none,own,1,skilled,1,none,yes,good
+'<0',24,'all paid',furniture/equipment,2828,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',22,stores,own,1,skilled,1,yes,yes,good
+'no checking',24,'critical/other existing credit',business,4526,'<100','1<=X<4',3,'male single',none,2,'real estate',74,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',36,'existing paid',radio/tv,2671,'100<=X<500','1<=X<4',4,'female div/dep/mar','co applicant',4,'no known property',50,none,'for free',1,skilled,1,none,yes,bad
+'no checking',18,'existing paid',radio/tv,2051,'<100','<1',4,'male single',none,1,'real estate',33,none,own,1,skilled,1,none,yes,good
+'no checking',15,'existing paid','used car',1300,'no known savings','>=7',4,'male single',none,4,'no known property',45,bank,'for free',1,skilled,2,none,yes,good
+'<0',12,'existing paid','domestic appliance',741,'100<=X<500',unemployed,4,'female div/dep/mar',none,3,'life insurance',22,none,own,1,skilled,1,none,yes,bad
+'>=200',10,'existing paid','new car',1240,'100<=X<500','>=7',1,'female div/dep/mar',none,4,'no known property',48,none,'for free',1,'unskilled resident',2,none,yes,bad
+'<0',21,'existing paid',radio/tv,3357,'>=1000','<1',4,'female div/dep/mar',none,2,car,29,bank,own,1,skilled,1,none,yes,good
+'<0',24,'all paid','used car',3632,'<100','1<=X<4',1,'female div/dep/mar',guarantor,4,car,22,bank,rent,1,skilled,1,none,no,good
+'no checking',18,'delayed previously',furniture/equipment,1808,'<100','4<=X<7',4,'female div/dep/mar',none,1,'real estate',22,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',48,'no credits/all paid',business,12204,'no known savings','1<=X<4',2,'male single',none,2,car,48,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',60,'delayed previously',radio/tv,9157,'no known savings','1<=X<4',2,'male single',none,2,'no known property',27,none,'for free',1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',6,'critical/other existing credit','new car',3676,'<100','1<=X<4',1,'male single',none,3,'real estate',37,none,rent,3,skilled,2,none,yes,good
+'0<=X<200',30,'existing paid',furniture/equipment,3441,'100<=X<500','1<=X<4',2,'female div/dep/mar','co applicant',4,car,21,none,rent,1,skilled,1,none,yes,bad
+'no checking',12,'existing paid','new car',640,'<100','1<=X<4',4,'male div/sep',none,2,'real estate',49,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',21,'critical/other existing credit',business,3652,'<100','4<=X<7',2,'male single',none,3,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit','new car',1530,'<100','1<=X<4',3,'male single',none,2,'life insurance',32,bank,own,2,skilled,1,none,yes,bad
+'no checking',48,'existing paid',business,3914,'no known savings','1<=X<4',4,'male div/sep',none,2,'real estate',38,bank,own,1,skilled,1,none,yes,bad
+'<0',12,'existing paid',furniture/equipment,1858,'<100','<1',4,'female div/dep/mar',none,1,car,22,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid',radio/tv,2600,'<100','1<=X<4',4,'male single',none,4,'no known property',65,none,'for free',2,skilled,1,none,yes,bad
+'no checking',15,'existing paid',radio/tv,1979,'no known savings','>=7',4,'male single',none,2,car,35,none,own,1,skilled,1,none,yes,good
+'>=200',6,'existing paid',furniture/equipment,2116,'<100','1<=X<4',2,'male single',none,2,'real estate',41,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',9,'all paid','new car',1437,'100<=X<500','4<=X<7',2,'male single',none,3,'no known property',29,none,own,1,skilled,1,none,yes,bad
+'no checking',42,'critical/other existing credit',furniture/equipment,4042,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',36,none,own,2,skilled,1,yes,yes,good
+'no checking',9,'existing paid',education,3832,'no known savings','>=7',1,'male single',none,4,'real estate',64,none,own,1,'unskilled resident',1,none,yes,good
+'<0',24,'existing paid',radio/tv,3660,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,own,1,skilled,1,none,yes,good
+'<0',18,'all paid',furniture/equipment,1553,'<100','1<=X<4',4,'male single',none,3,car,44,bank,own,1,skilled,1,none,yes,bad
+'0<=X<200',15,'existing paid',radio/tv,1444,'no known savings','<1',4,'male single',none,1,'life insurance',23,none,own,1,skilled,1,none,yes,good
+'no checking',9,'existing paid',furniture/equipment,1980,'<100','<1',2,'female div/dep/mar','co applicant',2,car,19,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',24,'existing paid','new car',1355,'<100','<1',3,'female div/dep/mar',none,4,car,25,none,own,1,'unskilled resident',1,yes,yes,bad
+'no checking',12,'existing paid',education,1393,'<100','>=7',4,'male single',none,4,'life insurance',47,bank,own,3,skilled,2,yes,yes,good
+'no checking',24,'existing paid',radio/tv,1376,'500<=X<1000','4<=X<7',4,'female div/dep/mar',none,1,car,28,none,own,1,skilled,1,none,yes,good
+'no checking',60,'delayed previously',radio/tv,15653,'<100','4<=X<7',2,'male single',none,4,car,21,none,own,2,skilled,1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,1493,'<100','<1',4,'female div/dep/mar',none,3,car,34,none,own,1,skilled,2,none,yes,good
+'<0',42,'delayed previously',radio/tv,4370,'<100','4<=X<7',3,'male single',none,2,'life insurance',26,bank,own,2,skilled,2,yes,yes,bad
+'<0',18,'existing paid',education,750,'<100',unemployed,4,'female div/dep/mar',none,1,'real estate',27,none,own,1,'unemp/unskilled non res',1,none,yes,bad
+'0<=X<200',15,'existing paid',repairs,1308,'<100','>=7',4,'male single',none,4,car,38,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',15,'existing paid',education,4623,'100<=X<500','1<=X<4',3,'male single',none,2,'life insurance',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,1851,'<100','4<=X<7',4,'male mar/wid',guarantor,2,car,33,none,own,2,skilled,1,yes,yes,good
+'<0',18,'critical/other existing credit',radio/tv,1880,'<100','4<=X<7',4,'male mar/wid',none,1,'life insurance',32,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',36,'delayed previously',business,7980,'no known savings','<1',4,'male single',none,4,car,27,none,rent,2,skilled,1,yes,yes,bad
+'<0',30,'no credits/all paid',furniture/equipment,4583,'<100','1<=X<4',2,'male div/sep',guarantor,2,'real estate',32,none,own,2,skilled,1,none,yes,good
+'no checking',12,'existing paid','new car',1386,'500<=X<1000','1<=X<4',2,'female div/dep/mar',none,2,'life insurance',26,none,own,1,skilled,1,none,yes,bad
+'>=200',24,'existing paid','new car',947,'<100','4<=X<7',4,'male single',none,3,'no known property',38,bank,'for free',1,skilled,2,none,yes,bad
+'<0',12,'existing paid',education,684,'<100','1<=X<4',4,'male single',none,4,car,40,none,rent,1,'unskilled resident',2,none,yes,bad
+'<0',48,'existing paid',education,7476,'<100','4<=X<7',4,'male single',none,1,'no known property',50,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,1922,'<100','1<=X<4',4,'male single',none,2,'life insurance',37,none,own,1,'unskilled resident',1,none,yes,bad
+'<0',24,'existing paid','new car',2303,'<100','>=7',4,'male single','co applicant',1,'real estate',45,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',36,'delayed previously','new car',8086,'100<=X<500','>=7',2,'male single',none,4,car,42,none,own,4,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit','used car',2346,'<100','4<=X<7',4,'male single',none,3,car,35,none,own,2,skilled,1,yes,yes,good
+'<0',14,'existing paid','new car',3973,'<100',unemployed,1,'male single',none,4,'no known property',22,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',888,'<100','>=7',4,'male single',none,4,car,41,bank,own,1,'unskilled resident',2,none,yes,bad
+'no checking',48,'existing paid',radio/tv,10222,'no known savings','4<=X<7',4,'male single',none,3,car,37,stores,own,1,skilled,1,yes,yes,good
+'0<=X<200',30,'no credits/all paid',business,4221,'<100','1<=X<4',2,'female div/dep/mar',none,1,car,28,none,own,2,skilled,1,none,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,6361,'<100','>=7',2,'male single',none,1,'no known property',41,none,own,1,skilled,1,yes,yes,good
+'>=200',12,'existing paid',radio/tv,1297,'<100','1<=X<4',3,'male mar/wid',none,4,'real estate',23,none,rent,1,skilled,1,none,yes,good
+'<0',12,'existing paid','new car',900,'no known savings','1<=X<4',4,'male mar/wid',none,2,car,23,none,own,1,skilled,1,none,yes,bad
+'no checking',21,'existing paid',furniture/equipment,2241,'<100','>=7',4,'male single',none,2,'real estate',50,none,own,2,skilled,1,none,yes,good
+'0<=X<200',6,'delayed previously',furniture/equipment,1050,'<100',unemployed,4,'male single',none,1,'life insurance',35,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',6,'critical/other existing credit',education,1047,'<100','1<=X<4',2,'female div/dep/mar',none,4,'life insurance',50,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',24,'critical/other existing credit',other,6314,'<100',unemployed,4,'male single','co applicant',2,'no known property',27,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',30,'all paid',furniture/equipment,3496,'>=1000','1<=X<4',4,'male single',none,2,car,34,stores,own,1,skilled,2,yes,yes,good
+'no checking',48,'all paid',business,3609,'<100','1<=X<4',1,'female div/dep/mar',none,1,'real estate',27,stores,own,1,skilled,1,none,yes,good
+'<0',12,'critical/other existing credit','new car',4843,'<100','>=7',3,'male single','co applicant',4,'life insurance',43,none,rent,2,skilled,1,yes,yes,bad
+'>=200',30,'critical/other existing credit',radio/tv,3017,'<100','>=7',4,'male single',none,4,'life insurance',47,none,own,1,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',business,4139,'100<=X<500','1<=X<4',3,'male single',none,3,'life insurance',27,none,own,2,'unskilled resident',1,yes,yes,good
+'no checking',36,'existing paid',business,5742,'100<=X<500','4<=X<7',2,'male single',none,2,car,31,none,own,2,skilled,1,yes,yes,good
+'no checking',60,'existing paid','new car',10366,'<100','>=7',2,'male single',none,4,'life insurance',42,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',6,'critical/other existing credit','new car',2080,'500<=X<1000','1<=X<4',1,'male mar/wid',none,2,car,24,none,own,1,skilled,1,none,yes,good
+'no checking',21,'delayed previously',business,2580,'500<=X<1000','<1',4,'male single',none,2,'real estate',41,bank,own,1,'unskilled resident',2,none,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,4530,'<100','4<=X<7',4,'female div/dep/mar',none,4,car,26,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'critical/other existing credit',furniture/equipment,5150,'<100','>=7',4,'male single',none,4,car,33,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',72,'existing paid',radio/tv,5595,'100<=X<500','1<=X<4',2,'male mar/wid',none,2,car,24,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',radio/tv,2384,'<100','>=7',4,'male single',none,4,'real estate',64,bank,rent,1,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',radio/tv,1453,'<100','<1',3,'female div/dep/mar',none,1,'real estate',26,none,own,1,skilled,1,none,yes,good
+'no checking',6,'existing paid',education,1538,'<100','<1',1,'female div/dep/mar',none,2,'no known property',56,none,own,1,skilled,1,none,yes,good
+'no checking',12,'existing paid',radio/tv,2279,'no known savings','1<=X<4',4,'male single',none,4,'no known property',37,none,'for free',1,skilled,1,yes,yes,good
+'no checking',15,'delayed previously',radio/tv,1478,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',33,bank,own,2,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,5103,'<100','<1',3,'male mar/wid',none,3,'no known property',47,none,'for free',3,skilled,1,yes,yes,good
+'0<=X<200',36,'delayed previously',business,9857,'100<=X<500','4<=X<7',1,'male single',none,3,'life insurance',31,none,own,2,'unskilled resident',2,yes,yes,good
+'no checking',60,'existing paid','new car',6527,'no known savings','1<=X<4',4,'male single',none,4,'no known property',34,none,'for free',1,skilled,2,yes,yes,good
+'>=200',10,'critical/other existing credit',radio/tv,1347,'no known savings','4<=X<7',4,'male single',none,2,'life insurance',27,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',36,'delayed previously','new car',2862,'100<=X<500','>=7',4,'male single',none,3,'no known property',30,none,'for free',1,skilled,1,none,yes,good
+'no checking',9,'existing paid',radio/tv,2753,'100<=X<500','>=7',3,'male single','co applicant',4,car,35,none,own,1,skilled,1,yes,yes,good
+'<0',12,'existing paid','new car',3651,'>=1000','1<=X<4',1,'male single',none,3,'life insurance',31,none,own,1,skilled,2,none,yes,good
+'<0',15,'critical/other existing credit',furniture/equipment,975,'<100','1<=X<4',2,'male div/sep',none,3,'life insurance',25,none,own,2,skilled,1,none,yes,good
+'0<=X<200',15,'existing paid',repairs,2631,'100<=X<500','1<=X<4',3,'female div/dep/mar',none,2,'real estate',25,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid',radio/tv,2896,'100<=X<500','<1',2,'male single',none,1,car,29,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit','new car',4716,'no known savings','<1',1,'male single',none,3,'real estate',44,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',24,'existing paid',radio/tv,2284,'<100','4<=X<7',4,'male single',none,2,car,28,none,own,1,skilled,1,yes,yes,good
+'no checking',6,'existing paid','used car',1236,'500<=X<1000','1<=X<4',2,'male single',none,4,'life insurance',50,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1103,'<100','4<=X<7',4,'male single',guarantor,3,'real estate',29,none,own,2,skilled,1,none,no,good
+'no checking',12,'critical/other existing credit','new car',926,'<100',unemployed,1,'female div/dep/mar',none,2,'life insurance',38,none,own,1,'unemp/unskilled non res',1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1800,'<100','1<=X<4',4,'male single',none,2,car,24,none,own,2,skilled,1,none,yes,good
+'>=200',15,'existing paid',education,1905,'<100','>=7',4,'male single',none,4,car,40,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1123,'500<=X<1000','1<=X<4',4,'female div/dep/mar',none,4,car,29,none,rent,1,'unskilled resident',1,none,yes,bad
+'<0',48,'critical/other existing credit','used car',6331,'<100','>=7',4,'male single',none,4,'no known property',46,none,'for free',2,skilled,1,yes,yes,bad
+'>=200',24,'existing paid',radio/tv,1377,'100<=X<500','>=7',4,'female div/dep/mar',none,2,'no known property',47,none,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',30,'delayed previously',business,2503,'100<=X<500','>=7',4,'male single',none,2,'life insurance',41,stores,own,2,skilled,1,none,yes,good
+'0<=X<200',27,'existing paid',business,2528,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',32,none,own,1,skilled,2,yes,yes,good
+'no checking',15,'existing paid','new car',5324,'500<=X<1000','>=7',1,'female div/dep/mar',none,4,'no known property',35,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',48,'existing paid','new car',6560,'100<=X<500','4<=X<7',3,'male single',none,2,'life insurance',24,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',12,'no credits/all paid',furniture/equipment,2969,'<100','<1',4,'female div/dep/mar',none,3,'life insurance',25,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',9,'existing paid',radio/tv,1206,'<100','>=7',4,'female div/dep/mar',none,4,'real estate',25,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',radio/tv,2118,'<100','1<=X<4',2,'male single',none,2,'real estate',37,none,own,1,'unskilled resident',2,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,629,'500<=X<1000','>=7',4,'male single',none,3,'life insurance',32,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',6,'all paid',education,1198,'<100','>=7',4,'female div/dep/mar',none,4,'no known property',35,none,'for free',1,skilled,1,none,yes,bad
+'no checking',21,'existing paid','used car',2476,'no known savings','>=7',4,'male single',none,4,'real estate',46,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',9,'critical/other existing credit',radio/tv,1138,'<100','1<=X<4',4,'male single',none,4,'real estate',25,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',60,'existing paid','new car',14027,'<100','4<=X<7',4,'male single',none,2,'no known property',27,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',30,'critical/other existing credit','used car',7596,'no known savings','>=7',1,'male single',none,4,car,63,none,own,2,skilled,1,none,yes,good
+'no checking',30,'critical/other existing credit',radio/tv,3077,'no known savings','>=7',3,'male single',none,2,car,40,none,own,2,skilled,2,yes,yes,good
+'no checking',18,'existing paid',radio/tv,1505,'<100','1<=X<4',4,'male single',none,2,'no known property',32,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',24,'critical/other existing credit',radio/tv,3148,'no known savings','1<=X<4',3,'male single',none,2,car,31,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',20,'no credits/all paid','used car',6148,'100<=X<500','>=7',3,'male mar/wid',none,4,car,31,bank,own,2,skilled,1,yes,yes,good
+'>=200',9,'no credits/all paid',radio/tv,1337,'<100','<1',4,'male single',none,2,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',6,'all paid',education,433,'>=1000','<1',4,'female div/dep/mar',none,2,'life insurance',24,bank,rent,1,skilled,2,none,yes,bad
+'<0',12,'existing paid','new car',1228,'<100','1<=X<4',4,'female div/dep/mar',none,2,'real estate',24,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',9,'existing paid',radio/tv,790,'500<=X<1000','1<=X<4',4,'female div/dep/mar',none,3,'real estate',66,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',27,'existing paid','new car',2570,'<100','1<=X<4',3,'female div/dep/mar',none,3,'real estate',21,none,rent,1,skilled,1,none,yes,bad
+'no checking',6,'critical/other existing credit','new car',250,'>=1000','1<=X<4',2,'female div/dep/mar',none,2,'real estate',41,bank,own,2,'unskilled resident',1,none,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1316,'500<=X<1000','1<=X<4',2,'male mar/wid',none,2,'life insurance',47,none,own,2,'unskilled resident',1,none,yes,good
+'<0',18,'existing paid',radio/tv,1882,'<100','1<=X<4',4,'female div/dep/mar',none,4,car,25,bank,rent,2,skilled,1,none,yes,bad
+'0<=X<200',48,'all paid',business,6416,'<100','>=7',4,'female div/dep/mar',none,3,'no known property',59,none,rent,1,skilled,1,none,yes,bad
+'>=200',24,'critical/other existing credit',business,1275,'>=1000','1<=X<4',2,'male div/sep',none,4,'real estate',36,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',24,'delayed previously',radio/tv,6403,'<100','<1',1,'male single',none,2,car,33,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',radio/tv,1987,'<100','1<=X<4',2,'male single',none,4,'real estate',21,none,rent,1,'unskilled resident',2,none,yes,bad
+'0<=X<200',8,'existing paid',radio/tv,760,'<100','4<=X<7',4,'female div/dep/mar',guarantor,2,'real estate',44,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',24,'existing paid','used car',2603,'>=1000','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,rent,1,skilled,1,yes,yes,good
+'no checking',4,'critical/other existing credit','new car',3380,'<100','4<=X<7',1,'female div/dep/mar',none,1,'real estate',37,none,own,1,skilled,2,none,yes,good
+'0<=X<200',36,'all paid','domestic appliance',3990,'no known savings','<1',3,'female div/dep/mar',none,2,'no known property',29,bank,own,1,'unemp/unskilled non res',1,none,yes,good
+'0<=X<200',24,'existing paid','used car',11560,'<100','1<=X<4',1,'female div/dep/mar',none,4,car,23,none,rent,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'<0',18,'existing paid','new car',4380,'100<=X<500','1<=X<4',3,'male single',none,4,car,35,none,own,1,'unskilled resident',2,yes,yes,good
+'no checking',6,'critical/other existing credit','new car',6761,'<100','4<=X<7',1,'male single',none,3,'no known property',45,none,own,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'0<=X<200',30,'no credits/all paid',business,4280,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,4,car,26,none,rent,2,'unskilled resident',1,none,yes,bad
+'<0',24,'all paid','new car',2325,'100<=X<500','4<=X<7',2,'male single',none,3,car,32,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',10,'all paid',radio/tv,1048,'<100','1<=X<4',4,'male single',none,4,'real estate',23,stores,own,1,'unskilled resident',1,none,yes,good
+'no checking',21,'existing paid',radio/tv,3160,'no known savings','>=7',4,'male single',none,3,'life insurance',41,none,own,1,skilled,1,yes,yes,good
+'<0',24,'all paid',furniture/equipment,2483,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',22,stores,own,1,skilled,1,yes,yes,good
+'<0',39,'critical/other existing credit',furniture/equipment,14179,'no known savings','4<=X<7',4,'male single',none,4,'life insurance',30,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',13,'critical/other existing credit',business,1797,'<100','<1',3,'male single',none,1,'life insurance',28,bank,own,2,'unskilled resident',1,none,yes,good
+'<0',15,'existing paid','new car',2511,'<100',unemployed,1,'female div/dep/mar',none,4,car,23,none,rent,1,skilled,1,none,yes,good
+'<0',12,'existing paid','new car',1274,'<100','<1',3,'female div/dep/mar',none,1,'real estate',37,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',21,'existing paid','used car',5248,'no known savings','1<=X<4',1,'male single',none,3,car,26,none,own,1,skilled,1,none,yes,good
+'no checking',15,'existing paid','used car',3029,'<100','4<=X<7',2,'male single',none,2,car,33,none,own,1,skilled,1,none,yes,good
+'<0',6,'existing paid',furniture/equipment,428,'<100','>=7',2,'female div/dep/mar',none,1,'life insurance',49,bank,own,1,skilled,1,yes,yes,good
+'<0',18,'existing paid','new car',976,'<100','<1',1,'female div/dep/mar',none,2,car,23,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',12,'existing paid',business,841,'100<=X<500','4<=X<7',2,'female div/dep/mar',none,4,'real estate',23,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',30,'critical/other existing credit',radio/tv,5771,'<100','4<=X<7',4,'female div/dep/mar',none,2,car,25,none,own,2,skilled,1,none,yes,good
+'no checking',12,'delayed previously',repairs,1555,'>=1000','>=7',4,'male single',none,4,'no known property',55,none,'for free',2,skilled,2,none,yes,bad
+'<0',24,'existing paid','new car',1285,'no known savings','4<=X<7',4,'female div/dep/mar',none,4,'no known property',32,none,rent,1,skilled,1,none,yes,bad
+'>=200',6,'critical/other existing credit','new car',1299,'<100','1<=X<4',1,'male single',none,1,'real estate',74,none,own,3,'unemp/unskilled non res',2,none,no,good
+'>=200',15,'critical/other existing credit',radio/tv,1271,'no known savings','1<=X<4',3,'male single',none,4,'no known property',39,none,'for free',2,skilled,1,yes,yes,bad
+'no checking',24,'existing paid','new car',1393,'<100','1<=X<4',2,'male single',guarantor,2,'real estate',31,none,own,1,skilled,1,yes,yes,good
+'<0',12,'critical/other existing credit','new car',691,'<100','>=7',4,'male single',none,3,'life insurance',35,none,own,2,skilled,1,none,yes,bad
+'no checking',15,'critical/other existing credit','new car',5045,'no known savings','>=7',1,'female div/dep/mar',none,4,car,59,none,own,1,skilled,1,yes,yes,good
+'<0',18,'critical/other existing credit',furniture/equipment,2124,'<100','1<=X<4',4,'female div/dep/mar',none,4,'real estate',24,none,rent,2,skilled,1,none,yes,bad
+'<0',12,'existing paid',radio/tv,2214,'<100','1<=X<4',4,'male single',none,3,'life insurance',24,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',21,'critical/other existing credit','new car',12680,'no known savings','>=7',4,'male single',none,4,'no known property',30,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit','new car',2463,'100<=X<500','4<=X<7',4,'male mar/wid',none,3,'life insurance',27,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1155,'<100','>=7',3,'male mar/wid',guarantor,3,'real estate',40,bank,own,2,'unskilled resident',1,none,yes,good
+'<0',30,'existing paid',furniture/equipment,3108,'<100','<1',2,'male div/sep',none,4,'life insurance',31,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',10,'existing paid','used car',2901,'no known savings','<1',1,'female div/dep/mar',none,4,'real estate',31,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',12,'critical/other existing credit',furniture/equipment,3617,'<100','>=7',1,'male single',none,4,car,28,none,rent,3,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,1655,'<100','>=7',2,'male single',none,4,'real estate',63,none,own,2,'unskilled resident',1,yes,yes,good
+'<0',24,'existing paid','used car',2812,'no known savings','>=7',2,'female div/dep/mar',none,4,'real estate',26,none,rent,1,skilled,1,none,yes,good
+'<0',36,'critical/other existing credit',education,8065,'<100','1<=X<4',3,'female div/dep/mar',none,2,'no known property',25,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',21,'critical/other existing credit','used car',3275,'<100','>=7',1,'male single',none,4,car,36,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2223,'100<=X<500','>=7',4,'male single',none,4,'life insurance',52,bank,own,2,skilled,1,none,yes,good
+'>=200',12,'critical/other existing credit','new car',1480,'500<=X<1000',unemployed,2,'male single',none,4,'no known property',66,bank,'for free',3,'unemp/unskilled non res',1,none,yes,good
+'<0',24,'existing paid','new car',1371,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,'real estate',25,none,rent,1,skilled,1,none,yes,bad
+'no checking',36,'critical/other existing credit','new car',3535,'<100','4<=X<7',4,'male single',none,4,car,37,none,own,2,skilled,1,yes,yes,good
+'<0',18,'existing paid',radio/tv,3509,'<100','4<=X<7',4,'female div/dep/mar',guarantor,1,'real estate',25,none,own,1,skilled,1,none,yes,good
+'no checking',36,'critical/other existing credit','used car',5711,'>=1000','>=7',4,'male single',none,2,car,38,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'existing paid',repairs,3872,'<100',unemployed,2,'female div/dep/mar',none,4,car,67,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',39,'critical/other existing credit',radio/tv,4933,'<100','4<=X<7',2,'male single',guarantor,2,'real estate',25,none,own,2,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit','new car',1940,'>=1000','>=7',4,'male single',none,4,'real estate',60,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',12,'no credits/all paid',retraining,1410,'<100','1<=X<4',2,'male single',none,2,'real estate',31,none,own,1,'unskilled resident',1,yes,yes,good
+'0<=X<200',12,'existing paid','new car',836,'100<=X<500','<1',4,'female div/dep/mar',none,2,'life insurance',23,bank,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',20,'existing paid','used car',6468,'no known savings',unemployed,1,'male div/sep',none,4,'real estate',60,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'existing paid',business,1941,'>=1000','1<=X<4',4,'male single',none,2,'life insurance',35,none,own,1,'unskilled resident',1,yes,yes,good
+'no checking',22,'existing paid',radio/tv,2675,'500<=X<1000','>=7',3,'male single',none,4,car,40,none,own,1,skilled,1,none,yes,good
+'no checking',48,'critical/other existing credit','used car',2751,'no known savings','>=7',4,'male single',none,3,car,38,none,own,2,skilled,2,yes,yes,good
+'0<=X<200',48,'delayed previously',education,6224,'<100','>=7',4,'male single',none,4,'no known property',50,none,'for free',1,skilled,1,none,yes,bad
+'<0',40,'critical/other existing credit',education,5998,'<100','1<=X<4',4,'male single',none,3,'no known property',27,bank,own,1,skilled,1,yes,yes,bad
+'0<=X<200',21,'existing paid',business,1188,'<100','>=7',2,'female div/dep/mar',none,4,'life insurance',39,none,own,1,skilled,2,none,yes,bad
+'no checking',24,'existing paid','used car',6313,'no known savings','>=7',3,'male single',none,4,car,41,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',6,'critical/other existing credit',furniture/equipment,1221,'no known savings','1<=X<4',1,'male mar/wid',none,2,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'>=200',24,'existing paid',furniture/equipment,2892,'<100','>=7',3,'male div/sep',none,4,'no known property',51,none,'for free',1,skilled,1,none,yes,good
+'no checking',24,'existing paid',furniture/equipment,3062,'500<=X<1000','>=7',4,'male single',none,3,'no known property',32,none,rent,1,skilled,1,yes,yes,good
+'no checking',9,'existing paid',furniture/equipment,2301,'100<=X<500','<1',2,'female div/dep/mar',none,4,'life insurance',22,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid','used car',7511,'no known savings','>=7',1,'male single',none,4,'life insurance',51,none,'for free',1,skilled,2,yes,yes,bad
+'no checking',12,'critical/other existing credit',furniture/equipment,1258,'<100','<1',2,'female div/dep/mar',none,4,'life insurance',22,none,rent,2,'unskilled resident',1,none,yes,good
+'no checking',24,'delayed previously','new car',717,'no known savings','>=7',4,'male mar/wid',none,4,car,54,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',9,'existing paid','new car',1549,'no known savings','<1',4,'male single',none,2,'real estate',35,none,own,1,'unemp/unskilled non res',1,none,yes,good
+'no checking',24,'critical/other existing credit',education,1597,'<100','>=7',4,'male single',none,4,'no known property',54,none,'for free',2,skilled,2,none,yes,good
+'0<=X<200',18,'critical/other existing credit',radio/tv,1795,'<100','>=7',3,'female div/dep/mar',guarantor,4,'real estate',48,bank,rent,2,'unskilled resident',1,yes,yes,good
+'<0',20,'critical/other existing credit',furniture/equipment,4272,'<100','>=7',1,'female div/dep/mar',none,4,'life insurance',24,none,own,2,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,976,'no known savings','>=7',4,'male single',none,4,car,35,none,own,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',7472,'no known savings',unemployed,1,'female div/dep/mar',none,2,'real estate',24,none,rent,1,'unemp/unskilled non res',1,none,yes,good
+'<0',36,'existing paid','new car',9271,'<100','4<=X<7',2,'male single',none,1,car,24,none,own,1,skilled,1,yes,yes,bad
+'0<=X<200',6,'existing paid',radio/tv,590,'<100','<1',3,'male mar/wid',none,3,'real estate',26,none,own,1,'unskilled resident',1,none,no,good
+'no checking',12,'critical/other existing credit',radio/tv,930,'no known savings','>=7',4,'male single',none,4,'real estate',65,none,own,4,skilled,1,none,yes,good
+'0<=X<200',42,'all paid','used car',9283,'<100',unemployed,1,'male single',none,2,'no known property',55,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',15,'no credits/all paid','new car',1778,'<100','<1',2,'female div/dep/mar',none,1,'real estate',26,none,rent,2,'unemp/unskilled non res',1,none,yes,bad
+'0<=X<200',8,'existing paid',business,907,'<100','<1',3,'male mar/wid',none,2,'real estate',26,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'existing paid',radio/tv,484,'<100','4<=X<7',3,'male mar/wid',guarantor,3,'real estate',28,bank,own,1,'unskilled resident',1,none,yes,good
+'<0',36,'critical/other existing credit','used car',9629,'<100','4<=X<7',4,'male single',none,4,car,24,none,own,2,skilled,1,yes,yes,bad
+'<0',48,'existing paid','domestic appliance',3051,'<100','1<=X<4',3,'male single',none,4,car,54,none,own,1,skilled,1,none,yes,bad
+'<0',48,'existing paid','new car',3931,'<100','4<=X<7',4,'male single',none,4,'no known property',46,none,'for free',1,skilled,2,none,yes,bad
+'0<=X<200',36,'delayed previously','new car',7432,'<100','1<=X<4',2,'female div/dep/mar',none,2,'life insurance',54,none,rent,1,skilled,1,none,yes,good
+'no checking',6,'existing paid','domestic appliance',1338,'500<=X<1000','1<=X<4',1,'male div/sep',none,4,'real estate',62,none,own,1,skilled,1,none,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,1554,'<100','4<=X<7',1,'female div/dep/mar',none,2,car,24,none,rent,2,skilled,1,yes,yes,good
+'<0',36,'existing paid',other,15857,'<100',unemployed,2,'male div/sep','co applicant',3,car,43,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',18,'existing paid',radio/tv,1345,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',26,bank,own,1,skilled,1,none,yes,bad
+'no checking',12,'existing paid','new car',1101,'<100','1<=X<4',3,'male mar/wid',none,2,'real estate',27,none,own,2,skilled,1,yes,yes,good
+'>=200',12,'existing paid',radio/tv,3016,'<100','1<=X<4',3,'male mar/wid',none,1,car,24,none,own,1,skilled,1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,2712,'<100','>=7',2,'male single',none,2,'life insurance',41,bank,own,1,skilled,2,none,yes,bad
+'<0',8,'critical/other existing credit','new car',731,'<100','>=7',4,'male single',none,4,'real estate',47,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'critical/other existing credit',furniture/equipment,3780,'<100','<1',3,'male div/sep',none,2,car,35,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',21,'critical/other existing credit','new car',1602,'<100','>=7',4,'male mar/wid',none,3,car,30,none,own,2,skilled,1,yes,yes,good
+'<0',18,'critical/other existing credit','new car',3966,'<100','>=7',1,'female div/dep/mar',none,4,'real estate',33,bank,rent,3,skilled,1,yes,yes,bad
+'no checking',18,'no credits/all paid',business,4165,'<100','1<=X<4',2,'male single',none,2,car,36,stores,own,2,skilled,2,none,yes,bad
+'<0',36,'existing paid','used car',8335,'no known savings','>=7',3,'male single',none,4,'no known property',47,none,'for free',1,skilled,1,none,yes,bad
+'0<=X<200',48,'delayed previously',business,6681,'no known savings','1<=X<4',4,'male single',none,4,'no known property',38,none,'for free',1,skilled,2,yes,yes,good
+'no checking',24,'delayed previously',business,2375,'500<=X<1000','1<=X<4',4,'male single',none,2,car,44,none,own,2,skilled,2,yes,yes,good
+'<0',18,'existing paid','new car',1216,'<100','<1',4,'female div/dep/mar',none,3,car,23,none,rent,1,skilled,1,yes,yes,bad
+'<0',45,'no credits/all paid',business,11816,'<100','>=7',2,'male single',none,4,car,29,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',24,'existing paid',radio/tv,5084,'no known savings','>=7',2,'female div/dep/mar',none,4,car,42,none,own,1,skilled,1,yes,yes,good
+'>=200',15,'existing paid',radio/tv,2327,'<100','<1',2,'female div/dep/mar',none,3,'real estate',25,none,own,1,'unskilled resident',1,none,yes,bad
+'<0',12,'no credits/all paid','new car',1082,'<100','1<=X<4',4,'male single',none,4,car,48,bank,own,2,skilled,1,none,yes,bad
+'no checking',12,'existing paid',radio/tv,886,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,car,21,none,own,1,skilled,1,none,yes,good
+'no checking',4,'existing paid',furniture/equipment,601,'<100','<1',1,'female div/dep/mar',none,3,'real estate',23,none,rent,1,'unskilled resident',2,none,yes,good
+'<0',24,'critical/other existing credit','used car',2957,'<100','>=7',4,'male single',none,4,'life insurance',63,none,own,2,skilled,1,yes,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2611,'<100','>=7',4,'male mar/wid','co applicant',3,'real estate',46,none,own,2,skilled,1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,5179,'<100','4<=X<7',4,'male single',none,2,'life insurance',29,none,own,1,skilled,1,none,yes,bad
+'no checking',21,'delayed previously','used car',2993,'<100','1<=X<4',3,'male single',none,2,'real estate',28,stores,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',repairs,1943,'<100','<1',4,'female div/dep/mar',none,4,'real estate',23,none,own,1,skilled,1,none,yes,bad
+'no checking',24,'all paid',business,1559,'<100','4<=X<7',4,'male single',none,4,car,50,bank,own,1,skilled,1,yes,yes,good
+'no checking',18,'existing paid',furniture/equipment,3422,'<100','>=7',4,'male single',none,4,'life insurance',47,bank,own,3,skilled,2,yes,yes,good
+'0<=X<200',21,'existing paid',furniture/equipment,3976,'no known savings','4<=X<7',2,'male single',none,3,car,35,none,own,1,skilled,1,yes,yes,good
+'no checking',18,'existing paid','new car',6761,'no known savings','1<=X<4',2,'male single',none,4,car,68,none,rent,2,skilled,1,none,yes,bad
+'no checking',24,'existing paid','new car',1249,'<100','<1',4,'male mar/wid',none,2,'real estate',28,none,own,1,skilled,1,none,yes,good
+'<0',9,'existing paid',radio/tv,1364,'<100','4<=X<7',3,'male single',none,4,'real estate',59,none,own,1,skilled,1,none,yes,good
+'<0',12,'existing paid',radio/tv,709,'<100','>=7',4,'male single',none,4,'real estate',57,stores,own,1,'unskilled resident',1,none,yes,bad
+'<0',20,'critical/other existing credit','new car',2235,'<100','1<=X<4',4,'male mar/wid',guarantor,2,'life insurance',33,bank,rent,2,skilled,1,none,no,bad
+'no checking',24,'critical/other existing credit','used car',4042,'no known savings','4<=X<7',3,'male single',none,4,'life insurance',43,none,own,2,skilled,1,yes,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1471,'<100','1<=X<4',4,'male single',none,4,'no known property',35,none,'for free',2,skilled,1,yes,yes,good
+'<0',18,'all paid','new car',1442,'<100','4<=X<7',4,'male single',none,4,'no known property',32,none,'for free',2,'unskilled resident',2,none,yes,bad
+'no checking',36,'delayed previously','new car',10875,'<100','>=7',2,'male single',none,2,car,45,none,own,2,skilled,2,yes,yes,good
+'no checking',24,'existing paid','new car',1474,'100<=X<500','<1',4,'male mar/wid',none,3,'real estate',33,none,own,1,skilled,1,yes,yes,good
+'no checking',10,'existing paid',retraining,894,'no known savings','4<=X<7',4,'female div/dep/mar',none,3,'life insurance',40,none,own,1,skilled,1,yes,yes,good
+'no checking',15,'critical/other existing credit',furniture/equipment,3343,'<100','1<=X<4',4,'male single',none,2,'no known property',28,none,'for free',1,skilled,1,yes,yes,good
+'<0',15,'existing paid','new car',3959,'<100','1<=X<4',3,'female div/dep/mar',none,2,'life insurance',29,none,own,1,skilled,1,yes,yes,bad
+'no checking',9,'existing paid','new car',3577,'100<=X<500','1<=X<4',1,'male single',guarantor,2,'real estate',26,none,rent,1,skilled,2,none,no,good
+'no checking',24,'critical/other existing credit','used car',5804,'>=1000','1<=X<4',4,'male single',none,2,'real estate',27,none,own,2,skilled,1,none,yes,good
+'no checking',18,'delayed previously',business,2169,'<100','1<=X<4',4,'male mar/wid',none,2,car,28,none,own,1,skilled,1,yes,yes,bad
+'<0',24,'existing paid',radio/tv,2439,'<100','<1',4,'female div/dep/mar',none,4,'real estate',35,none,own,1,skilled,1,yes,yes,bad
+'no checking',27,'critical/other existing credit',furniture/equipment,4526,'>=1000','<1',4,'male single',none,2,'real estate',32,stores,own,2,'unskilled resident',2,yes,yes,good
+'no checking',10,'existing paid',furniture/equipment,2210,'<100','1<=X<4',2,'male single',none,2,'real estate',25,bank,rent,1,'unskilled resident',1,none,yes,bad
+'no checking',15,'existing paid',furniture/equipment,2221,'500<=X<1000','1<=X<4',2,'female div/dep/mar',none,4,car,20,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid',radio/tv,2389,'<100','<1',4,'female div/dep/mar',none,1,car,27,stores,own,1,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',furniture/equipment,3331,'<100','>=7',2,'male single',none,4,'life insurance',42,stores,own,1,skilled,1,none,yes,good
+'no checking',36,'existing paid',business,7409,'no known savings','>=7',3,'male single',none,2,'life insurance',37,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,652,'<100','>=7',4,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,skilled,1,none,yes,good
+'no checking',36,'delayed previously',furniture/equipment,7678,'500<=X<1000','4<=X<7',2,'female div/dep/mar',none,4,car,40,none,own,2,skilled,1,yes,yes,good
+'>=200',6,'critical/other existing credit','new car',1343,'<100','>=7',1,'male single',none,4,'real estate',46,none,own,2,skilled,2,none,no,good
+'<0',24,'critical/other existing credit',business,1382,'100<=X<500','4<=X<7',4,'male single',none,1,'real estate',26,none,own,2,skilled,1,yes,yes,good
+'no checking',15,'existing paid','domestic appliance',874,'no known savings','<1',4,'female div/dep/mar',none,1,'real estate',24,none,own,1,skilled,1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,3590,'<100','1<=X<4',2,'male single','co applicant',2,'life insurance',29,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',11,'critical/other existing credit','new car',1322,'>=1000','1<=X<4',4,'female div/dep/mar',none,4,car,40,none,own,2,skilled,1,none,yes,good
+'<0',18,'all paid',radio/tv,1940,'<100','<1',3,'male single','co applicant',4,'no known property',36,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',36,'existing paid',radio/tv,3595,'<100','>=7',4,'male single',none,2,car,28,none,own,1,skilled,1,none,yes,good
+'<0',9,'existing paid','new car',1422,'<100','<1',3,'male single',none,2,'no known property',27,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,6742,'no known savings','4<=X<7',2,'male single',none,3,'life insurance',36,none,own,2,skilled,1,none,yes,good
+'no checking',24,'existing paid','used car',7814,'<100','4<=X<7',3,'male single',none,3,car,38,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'existing paid','used car',9277,'no known savings','1<=X<4',2,'male div/sep',none,4,'no known property',48,none,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',30,'critical/other existing credit','new car',2181,'no known savings','>=7',4,'male single',none,4,'real estate',36,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1098,'<100',unemployed,4,'female div/dep/mar',none,4,car,65,none,own,2,'unemp/unskilled non res',1,none,yes,good
+'0<=X<200',24,'existing paid',furniture/equipment,4057,'<100','4<=X<7',3,'male div/sep',none,3,car,43,none,own,1,skilled,1,yes,yes,bad
+'<0',12,'existing paid',education,795,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',53,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',24,'critical/other existing credit',business,2825,'no known savings','4<=X<7',4,'male single',none,3,'no known property',34,none,own,2,skilled,2,yes,yes,good
+'0<=X<200',48,'existing paid',business,15672,'<100','1<=X<4',2,'male single',none,2,car,23,none,own,1,skilled,1,yes,yes,bad
+'no checking',36,'critical/other existing credit','new car',6614,'<100','>=7',4,'male single',none,4,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',28,'all paid','used car',7824,'no known savings','<1',3,'male single',guarantor,4,'real estate',40,bank,rent,2,skilled,2,yes,yes,good
+'<0',27,'critical/other existing credit',business,2442,'<100','>=7',4,'male single',none,4,car,43,stores,own,4,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1829,'<100','>=7',4,'male single',none,4,car,46,none,own,2,skilled,1,yes,yes,good
+'<0',12,'critical/other existing credit','new car',2171,'<100','1<=X<4',4,'male single',none,4,'life insurance',38,bank,own,2,'unskilled resident',1,none,no,good
+'0<=X<200',36,'critical/other existing credit','used car',5800,'<100','1<=X<4',3,'male single',none,4,car,34,none,own,2,skilled,1,yes,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1169,'no known savings','1<=X<4',4,'male single',none,3,'life insurance',29,none,own,2,skilled,1,yes,yes,good
+'no checking',36,'delayed previously','used car',8947,'no known savings','4<=X<7',3,'male single',none,2,car,31,stores,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',21,'existing paid',radio/tv,2606,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',28,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'critical/other existing credit',furniture/equipment,1592,'>=1000','4<=X<7',3,'female div/dep/mar',none,2,'life insurance',35,none,own,1,skilled,1,none,no,good
+'no checking',15,'existing paid',furniture/equipment,2186,'no known savings','4<=X<7',1,'female div/dep/mar',none,4,'real estate',33,bank,rent,1,'unskilled resident',1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,4153,'<100','1<=X<4',2,'male single','co applicant',3,car,42,none,own,1,skilled,1,none,yes,bad
+'<0',16,'critical/other existing credit','new car',2625,'<100','>=7',2,'male single',guarantor,4,'life insurance',43,bank,rent,1,skilled,1,yes,yes,bad
+'no checking',20,'critical/other existing credit','new car',3485,'no known savings','<1',2,'male div/sep',none,4,'real estate',44,none,own,2,skilled,1,yes,yes,good
+'no checking',36,'critical/other existing credit','used car',10477,'no known savings','>=7',2,'male single',none,4,'no known property',42,none,'for free',2,skilled,1,none,yes,good
+'no checking',15,'existing paid',radio/tv,1386,'no known savings','1<=X<4',4,'male mar/wid',none,2,'real estate',40,none,rent,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid',radio/tv,1278,'<100','>=7',4,'male single',none,1,'real estate',36,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid',radio/tv,1107,'<100','1<=X<4',2,'male single',none,2,'real estate',20,none,rent,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',21,'existing paid','new car',3763,'no known savings','4<=X<7',2,'male single','co applicant',2,'real estate',24,none,own,1,'unskilled resident',1,none,no,good
+'0<=X<200',36,'existing paid',education,3711,'no known savings','1<=X<4',2,'male mar/wid',none,2,car,27,none,own,1,skilled,1,none,yes,good
+'no checking',15,'delayed previously','used car',3594,'<100','<1',1,'female div/dep/mar',none,2,'life insurance',46,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'existing paid','new car',3195,'no known savings','1<=X<4',1,'female div/dep/mar',none,2,'real estate',33,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',36,'delayed previously',radio/tv,4454,'<100','1<=X<4',4,'female div/dep/mar',none,4,'real estate',34,none,own,2,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit',furniture/equipment,4736,'<100','<1',2,'female div/dep/mar',none,4,car,25,bank,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',30,'existing paid',radio/tv,2991,'no known savings','>=7',2,'female div/dep/mar',none,4,car,25,none,own,1,skilled,1,none,yes,good
+'no checking',11,'existing paid',business,2142,'>=1000','>=7',1,'male div/sep',none,2,'real estate',28,none,own,1,skilled,1,yes,yes,good
+'<0',24,'all paid',business,3161,'<100','1<=X<4',4,'male single',none,2,'life insurance',31,none,rent,1,skilled,1,yes,yes,bad
+'0<=X<200',48,'no credits/all paid',other,18424,'<100','1<=X<4',1,'female div/dep/mar',none,2,'life insurance',32,bank,own,1,'high qualif/self emp/mgmt',1,yes,no,bad
+'no checking',10,'existing paid','used car',2848,'100<=X<500','1<=X<4',1,'male single','co applicant',2,'real estate',32,none,own,1,skilled,2,none,yes,good
+'<0',6,'existing paid','new car',14896,'<100','>=7',1,'male single',none,4,'no known property',68,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',24,'existing paid',furniture/equipment,2359,'100<=X<500',unemployed,1,'male div/sep',none,1,'life insurance',33,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',furniture/equipment,3345,'<100','>=7',4,'male single',none,2,'life insurance',39,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',18,'critical/other existing credit',furniture/equipment,1817,'<100','1<=X<4',4,'female div/dep/mar',none,2,'no known property',28,none,own,2,skilled,1,none,yes,good
+'no checking',48,'delayed previously',radio/tv,12749,'500<=X<1000','4<=X<7',4,'male single',none,1,car,37,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',9,'existing paid',radio/tv,1366,'<100','<1',3,'female div/dep/mar',none,4,'life insurance',22,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',12,'existing paid','new car',2002,'<100','4<=X<7',3,'male single',none,4,'life insurance',30,none,rent,1,skilled,2,yes,yes,good
+'<0',24,'all paid',furniture/equipment,6872,'<100','<1',2,'male div/sep',none,1,'life insurance',55,bank,own,1,skilled,1,yes,yes,bad
+'<0',12,'all paid','new car',697,'<100','<1',4,'male single',none,2,car,46,bank,own,2,skilled,1,yes,yes,bad
+'<0',18,'critical/other existing credit',furniture/equipment,1049,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',21,none,rent,1,skilled,1,none,yes,good
+'<0',48,'existing paid','used car',10297,'<100','4<=X<7',4,'male single',none,4,'no known property',39,stores,'for free',3,skilled,2,yes,yes,bad
+'no checking',30,'existing paid',radio/tv,1867,'no known savings','>=7',4,'male single',none,4,car,58,none,own,1,skilled,1,yes,yes,good
+'<0',12,'delayed previously','new car',1344,'<100','1<=X<4',4,'male single',none,2,'real estate',43,none,own,2,'unskilled resident',2,none,yes,good
+'<0',24,'existing paid',furniture/equipment,1747,'<100','<1',4,'male single','co applicant',1,'life insurance',24,none,own,1,'unskilled resident',1,none,no,good
+'0<=X<200',9,'existing paid',radio/tv,1670,'<100','<1',4,'female div/dep/mar',none,2,car,22,none,own,1,skilled,1,yes,yes,bad
+'no checking',9,'critical/other existing credit','new car',1224,'<100','1<=X<4',3,'male single',none,1,'real estate',30,none,own,2,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,522,'500<=X<1000','>=7',4,'male single',none,4,'life insurance',42,none,own,2,skilled,2,yes,yes,good
+'<0',12,'existing paid',radio/tv,1498,'<100','1<=X<4',4,'female div/dep/mar',none,1,car,23,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',30,'delayed previously',radio/tv,1919,'100<=X<500','<1',4,'male single',none,3,'no known property',30,stores,own,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'>=200',9,'existing paid',radio/tv,745,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',28,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',6,'existing paid',radio/tv,2063,'<100','<1',4,'male mar/wid',none,3,car,30,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',60,'existing paid',education,6288,'<100','1<=X<4',4,'male single',none,4,'no known property',42,none,'for free',1,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit','used car',6842,'no known savings','1<=X<4',2,'male single',none,4,'life insurance',46,none,own,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',12,'existing paid','new car',3527,'no known savings','<1',2,'male single',none,3,'life insurance',45,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',10,'existing paid','new car',1546,'<100','1<=X<4',3,'male single',none,2,'real estate',31,none,own,1,'unskilled resident',2,none,no,good
+'no checking',24,'existing paid',furniture/equipment,929,'no known savings','4<=X<7',4,'male single',none,2,car,31,stores,own,1,skilled,1,yes,yes,good
+'no checking',4,'critical/other existing credit','new car',1455,'<100','4<=X<7',2,'male single',none,1,'real estate',42,none,own,3,'unskilled resident',2,none,yes,good
+'<0',15,'existing paid',furniture/equipment,1845,'<100','<1',4,'female div/dep/mar',guarantor,1,'life insurance',46,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',48,'no credits/all paid','new car',8358,'500<=X<1000','<1',1,'female div/dep/mar',none,1,car,30,none,own,2,skilled,1,none,yes,good
+'<0',24,'all paid',furniture/equipment,3349,'500<=X<1000','<1',4,'male single',none,4,'no known property',30,none,'for free',1,skilled,2,yes,yes,bad
+'no checking',12,'existing paid','new car',2859,'no known savings',unemployed,4,'male single',none,4,'no known property',38,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',18,'existing paid',furniture/equipment,1533,'<100','<1',4,'male mar/wid','co applicant',1,'life insurance',43,none,own,1,'unskilled resident',2,none,yes,bad
+'no checking',24,'existing paid',radio/tv,3621,'100<=X<500','>=7',2,'male single',none,4,car,31,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',18,'critical/other existing credit',business,3590,'<100',unemployed,3,'male mar/wid',none,3,car,40,none,own,3,'unemp/unskilled non res',2,yes,yes,good
+'<0',36,'delayed previously',business,2145,'<100','4<=X<7',2,'male single',none,1,car,24,none,own,2,skilled,1,yes,yes,bad
+'0<=X<200',24,'existing paid','used car',4113,'500<=X<1000','<1',3,'female div/dep/mar',none,4,car,28,none,rent,1,skilled,1,none,yes,bad
+'no checking',36,'existing paid',furniture/equipment,10974,'<100',unemployed,4,'female div/dep/mar',none,2,car,26,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',12,'existing paid','new car',1893,'<100','1<=X<4',4,'female div/dep/mar',guarantor,4,'life insurance',29,none,own,1,skilled,1,yes,yes,good
+'<0',24,'critical/other existing credit',radio/tv,1231,'>=1000','>=7',4,'female div/dep/mar',none,4,'life insurance',57,none,rent,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',30,'critical/other existing credit',radio/tv,3656,'no known savings','>=7',4,'male single',none,4,'life insurance',49,stores,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'critical/other existing credit',radio/tv,1154,'<100','>=7',2,'male single',none,4,'real estate',37,none,own,3,'unskilled resident',1,none,yes,good
+'<0',28,'existing paid','new car',4006,'<100','1<=X<4',3,'male single',none,2,car,45,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',24,'existing paid',furniture/equipment,3069,'100<=X<500','>=7',4,'male single',none,4,'no known property',30,none,'for free',1,skilled,1,none,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,1740,'<100','>=7',2,'male mar/wid',none,2,'real estate',30,none,rent,2,skilled,1,none,yes,good
+'0<=X<200',21,'delayed previously','new car',2353,'<100','1<=X<4',1,'male div/sep',none,4,'life insurance',47,none,own,2,skilled,1,none,yes,good
+'no checking',15,'existing paid','new car',3556,'no known savings','1<=X<4',3,'male single',none,2,'no known property',29,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,2397,'500<=X<1000','>=7',3,'male single',none,2,car,35,bank,own,2,skilled,1,yes,yes,bad
+'0<=X<200',6,'existing paid',repairs,454,'<100','<1',3,'male mar/wid',none,1,'life insurance',22,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'existing paid',radio/tv,1715,'no known savings','1<=X<4',4,'female div/dep/mar',none,1,car,26,none,own,1,skilled,1,none,yes,good
+'0<=X<200',27,'critical/other existing credit',radio/tv,2520,'500<=X<1000','1<=X<4',4,'male single',none,2,'life insurance',23,none,own,2,'unskilled resident',1,none,yes,bad
+'no checking',15,'existing paid',radio/tv,3568,'<100','>=7',4,'female div/dep/mar',none,2,car,54,bank,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',42,'existing paid',radio/tv,7166,'no known savings','4<=X<7',2,'male mar/wid',none,4,'life insurance',29,none,rent,1,skilled,1,yes,yes,good
+'<0',11,'critical/other existing credit','new car',3939,'<100','1<=X<4',1,'male single',none,2,'real estate',40,none,own,2,'unskilled resident',2,none,yes,good
+'0<=X<200',15,'existing paid',repairs,1514,'100<=X<500','1<=X<4',4,'male single',guarantor,2,'real estate',22,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid','new car',7393,'<100','1<=X<4',1,'male single',none,4,'life insurance',43,none,own,1,'unskilled resident',2,none,yes,good
+'<0',24,'all paid','new car',1193,'<100',unemployed,1,'female div/dep/mar','co applicant',4,'no known property',29,none,rent,2,'unemp/unskilled non res',1,none,yes,bad
+'<0',60,'existing paid',business,7297,'<100','>=7',4,'male single','co applicant',4,'no known property',36,none,rent,1,skilled,1,none,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,2831,'<100','1<=X<4',4,'female div/dep/mar',none,2,car,33,none,own,1,skilled,1,yes,yes,good
+'>=200',24,'existing paid',radio/tv,1258,'500<=X<1000','1<=X<4',3,'female div/dep/mar',none,3,car,57,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',6,'existing paid',radio/tv,753,'<100','1<=X<4',2,'female div/dep/mar',guarantor,3,'real estate',64,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'delayed previously',business,2427,'no known savings','>=7',4,'male single',none,2,'life insurance',42,none,own,2,skilled,1,none,yes,good
+'no checking',24,'delayed previously','new car',2538,'<100','>=7',4,'male single',none,4,car,47,none,own,2,'unskilled resident',2,none,yes,bad
+'0<=X<200',15,'all paid','new car',1264,'100<=X<500','1<=X<4',2,'male mar/wid',none,2,'life insurance',25,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',30,'critical/other existing credit',furniture/equipment,8386,'<100','4<=X<7',2,'male single',none,2,'life insurance',49,none,own,1,skilled,1,none,yes,bad
+'no checking',48,'existing paid',business,4844,'<100',unemployed,3,'male single',none,2,car,33,bank,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'>=200',21,'existing paid','new car',2923,'100<=X<500','1<=X<4',1,'female div/dep/mar',none,1,car,28,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',36,'existing paid','used car',8229,'<100','1<=X<4',2,'male single',none,2,'life insurance',26,none,own,1,skilled,2,none,yes,bad
+'no checking',24,'critical/other existing credit',furniture/equipment,2028,'<100','4<=X<7',2,'male single',none,2,'life insurance',30,none,own,2,'unskilled resident',1,none,yes,good
+'<0',15,'critical/other existing credit',furniture/equipment,1433,'<100','1<=X<4',4,'female div/dep/mar',none,3,'life insurance',25,none,rent,2,skilled,1,none,yes,good
+'>=200',42,'no credits/all paid',business,6289,'<100','<1',2,'male div/sep',none,1,'life insurance',33,none,own,2,skilled,1,none,yes,good
+'no checking',13,'existing paid',radio/tv,1409,'100<=X<500',unemployed,2,'female div/dep/mar',none,4,'real estate',64,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid','used car',6579,'<100',unemployed,4,'male single',none,2,'no known property',29,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',24,'critical/other existing credit',radio/tv,1743,'<100','>=7',4,'male single',none,2,'life insurance',48,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',12,'critical/other existing credit',education,3565,'no known savings','<1',2,'male single',none,1,'life insurance',37,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',15,'all paid',radio/tv,1569,'100<=X<500','>=7',4,'male single',none,4,car,34,bank,own,1,'unskilled resident',2,none,yes,good
+'<0',18,'existing paid',radio/tv,1936,'no known savings','4<=X<7',2,'male mar/wid',none,4,car,23,none,rent,2,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,3959,'<100',unemployed,4,'male single',none,3,'life insurance',30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid','new car',2390,'no known savings','>=7',4,'male single',none,3,car,50,none,own,1,skilled,1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1736,'<100','4<=X<7',3,'female div/dep/mar',none,4,'real estate',31,none,own,1,'unskilled resident',1,none,yes,good
+'<0',30,'existing paid','used car',3857,'<100','1<=X<4',4,'male div/sep',none,4,'life insurance',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,804,'<100','>=7',4,'male single',none,4,car,38,none,own,1,skilled,1,none,yes,good
+'<0',45,'existing paid',radio/tv,1845,'<100','1<=X<4',4,'male single',none,4,'no known property',23,none,'for free',1,skilled,1,yes,yes,bad
+'0<=X<200',45,'critical/other existing credit','used car',4576,'100<=X<500',unemployed,3,'male single',none,4,car,27,none,own,1,skilled,1,none,yes,good
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/cvTemplate.kfml b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/cvTemplate.kfml
new file mode 100644
index 00000000..121b9531
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/cvTemplate.kfml
@@ -0,0 +1,244 @@
+
+
+
+
+
+
+
+
+
+]
+>
+
+
+
+
+ 0
+ 113
+ 114
+ ArffLoader
+
+
+ weka/gui/beans/templates/iris.arff
+ false
+
+
+ true
+
+
+
+
+
+ 1
+ 273
+ 114
+ ClassAssigner
+
+ last
+
+
+
+ 2
+ 473
+ 114
+ CrossValidationFoldMaker
+
+ false
+ 1
+ 10
+
+
+
+ 3
+ 393
+ 314
+ ClassifierPerformanceEvaluator
+
+ 2
+
+
+
+ 4
+ 673
+ 314
+ TextViewer
+
+
+
+ true
+
+
+
+
+ TextViewer
+ weka/gui/beans/icons/DefaultText.gif
+ weka/gui/beans/icons/DefaultText_animated.gif
+
+ TextViewer
+
+
+
+ 5
+ 153
+ 314
+ ModelPerformanceChart
+
+
+
+ ModelPerformanceChart
+ weka/gui/beans/icons/ModelPerformanceChart.gif
+ weka/gui/beans/icons/ModelPerformanceChart_animated.gif
+
+
+ Weka Chart Renderer
+ 400
+ ModelPerformanceChart
+
+
+ true
+
+
+ 500
+
+
+
+
+
+ 6
+ 120
+ 187
+
+ Double click to configure me
with an ARFF file
+
+ -1
+
+
+
+ 7
+ 287
+ 197
+
+ Double click to
specify the class
attribute
+
+ -1
+
+
+
+ 8
+ 441
+ 197
+
+ 10-fold CV by default.
Double click to alter
the number of folds.
+
+ -1
+
+
+
+ 9
+ 681
+ 403
+
+ Performance results
reported here. Right-click
and choose "show results"
+
+ -1
+
+
+
+ 10
+ 157
+ 406
+
+ Right-click and select "show chart"
to see scatter plot and misclassified
points.
+
+ -1
+
+
+
+ 11
+ 673
+ 114
+ J48
+
+
+ false
+
+ -C
+ 0.25
+ -M
+ 2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ 2
+
+
+
+ 12
+ 377
+ 30
+
+ <html><b>NOTE: this flow is configured to run out of the box.</b> It loads an ARFF file as a resource from the classpath. If you want
to use your own data, edit the ArffLoader.</html>
+
+ -1
+
+
+
+
+
+ 0
+ 1
+ dataSet
+ false
+
+
+ 1
+ 2
+ dataSet
+ false
+
+
+ 3
+ 4
+ text
+ false
+
+
+ 3
+ 5
+ visualizableError
+ false
+
+
+ 2
+ 11
+ trainingSet
+ false
+
+
+ 2
+ 11
+ testSet
+ false
+
+
+ 11
+ 3
+ batchClassifier
+ false
+
+
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/incrementalLearning.kfml b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/incrementalLearning.kfml
new file mode 100644
index 00000000..f8b9d201
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/incrementalLearning.kfml
@@ -0,0 +1,173 @@
+
+
+
+
+
+
+
+
+
+]
+>
+
+
+
+
+ 0
+ 73
+ 74
+ ArffLoader
+
+
+
+ false
+
+
+ true
+
+
+
+
+
+ 1
+ 273
+ 74
+ ClassAssigner
+
+ last
+
+
+
+ 2
+ 473
+ 74
+ NaiveBayesUpdateable
+
+
+ false
+
+
+
+
+
+
+ false
+ 2
+
+
+
+ 3
+ 713
+ 74
+ IncrementalClassifierEvaluator
+
+ 100
+ false
+
+
+
+ 4
+ 713
+ 274
+ StripChart
+
+ 500
+ 5
+
+
+
+ 5
+ 433
+ 274
+ TextViewer
+
+
+
+ true
+
+
+
+
+ TextViewer
+ weka/gui/beans/icons/DefaultText.gif
+ weka/gui/beans/icons/DefaultText_animated.gif
+
+ TextViewer
+
+
+
+ 6
+ 83
+ 155
+
+ Double click and
configure with an
ARFF file to process
+
+ -1
+
+
+
+ 7
+ 276
+ 146
+
+ Set the class attribute
+
+ -1
+
+
+
+ 8
+ 474
+ 156
+
+ Incremental naive
Bayes
+
+ -1
+
+
+
+ 9
+ 688
+ 353
+
+ Right-click and choose
"Show chart" before
launching this flow.
+
+ -1
+
+
+
+
+
+ 0
+ 1
+ instance
+ false
+
+
+ 1
+ 2
+ instance
+ false
+
+
+ 2
+ 3
+ incrementalClassifier
+ false
+
+
+ 3
+ 5
+ text
+ false
+
+
+ 3
+ 4
+ chart
+ false
+
+
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/iris.arff b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/iris.arff
new file mode 100644
index 00000000..780480c7
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/iris.arff
@@ -0,0 +1,225 @@
+% 1. Title: Iris Plants Database
+%
+% 2. Sources:
+% (a) Creator: R.A. Fisher
+% (b) Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov)
+% (c) Date: July, 1988
+%
+% 3. Past Usage:
+% - Publications: too many to mention!!! Here are a few.
+% 1. Fisher,R.A. "The use of multiple measurements in taxonomic problems"
+% Annual Eugenics, 7, Part II, 179-188 (1936); also in "Contributions
+% to Mathematical Statistics" (John Wiley, NY, 1950).
+% 2. Duda,R.O., & Hart,P.E. (1973) Pattern Classification and Scene Analysis.
+% (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.
+% 3. Dasarathy, B.V. (1980) "Nosing Around the Neighborhood: A New System
+% Structure and Classification Rule for Recognition in Partially Exposed
+% Environments". IEEE Transactions on Pattern Analysis and Machine
+% Intelligence, Vol. PAMI-2, No. 1, 67-71.
+% -- Results:
+% -- very low misclassification rates (0% for the setosa class)
+% 4. Gates, G.W. (1972) "The Reduced Nearest Neighbor Rule". IEEE
+% Transactions on Information Theory, May 1972, 431-433.
+% -- Results:
+% -- very low misclassification rates again
+% 5. See also: 1988 MLC Proceedings, 54-64. Cheeseman et al's AUTOCLASS II
+% conceptual clustering system finds 3 classes in the data.
+%
+% 4. Relevant Information:
+% --- This is perhaps the best known database to be found in the pattern
+% recognition literature. Fisher's paper is a classic in the field
+% and is referenced frequently to this day. (See Duda & Hart, for
+% example.) The data set contains 3 classes of 50 instances each,
+% where each class refers to a type of iris plant. One class is
+% linearly separable from the other 2; the latter are NOT linearly
+% separable from each other.
+% --- Predicted attribute: class of iris plant.
+% --- This is an exceedingly simple domain.
+%
+% 5. Number of Instances: 150 (50 in each of three classes)
+%
+% 6. Number of Attributes: 4 numeric, predictive attributes and the class
+%
+% 7. Attribute Information:
+% 1. sepal length in cm
+% 2. sepal width in cm
+% 3. petal length in cm
+% 4. petal width in cm
+% 5. class:
+% -- Iris Setosa
+% -- Iris Versicolour
+% -- Iris Virginica
+%
+% 8. Missing Attribute Values: None
+%
+% Summary Statistics:
+% Min Max Mean SD Class Correlation
+% sepal length: 4.3 7.9 5.84 0.83 0.7826
+% sepal width: 2.0 4.4 3.05 0.43 -0.4194
+% petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)
+% petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)
+%
+% 9. Class Distribution: 33.3% for each of 3 classes.
+
+@RELATION iris
+
+@ATTRIBUTE sepallength REAL
+@ATTRIBUTE sepalwidth REAL
+@ATTRIBUTE petallength REAL
+@ATTRIBUTE petalwidth REAL
+@ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica}
+
+@DATA
+5.1,3.5,1.4,0.2,Iris-setosa
+4.9,3.0,1.4,0.2,Iris-setosa
+4.7,3.2,1.3,0.2,Iris-setosa
+4.6,3.1,1.5,0.2,Iris-setosa
+5.0,3.6,1.4,0.2,Iris-setosa
+5.4,3.9,1.7,0.4,Iris-setosa
+4.6,3.4,1.4,0.3,Iris-setosa
+5.0,3.4,1.5,0.2,Iris-setosa
+4.4,2.9,1.4,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+5.4,3.7,1.5,0.2,Iris-setosa
+4.8,3.4,1.6,0.2,Iris-setosa
+4.8,3.0,1.4,0.1,Iris-setosa
+4.3,3.0,1.1,0.1,Iris-setosa
+5.8,4.0,1.2,0.2,Iris-setosa
+5.7,4.4,1.5,0.4,Iris-setosa
+5.4,3.9,1.3,0.4,Iris-setosa
+5.1,3.5,1.4,0.3,Iris-setosa
+5.7,3.8,1.7,0.3,Iris-setosa
+5.1,3.8,1.5,0.3,Iris-setosa
+5.4,3.4,1.7,0.2,Iris-setosa
+5.1,3.7,1.5,0.4,Iris-setosa
+4.6,3.6,1.0,0.2,Iris-setosa
+5.1,3.3,1.7,0.5,Iris-setosa
+4.8,3.4,1.9,0.2,Iris-setosa
+5.0,3.0,1.6,0.2,Iris-setosa
+5.0,3.4,1.6,0.4,Iris-setosa
+5.2,3.5,1.5,0.2,Iris-setosa
+5.2,3.4,1.4,0.2,Iris-setosa
+4.7,3.2,1.6,0.2,Iris-setosa
+4.8,3.1,1.6,0.2,Iris-setosa
+5.4,3.4,1.5,0.4,Iris-setosa
+5.2,4.1,1.5,0.1,Iris-setosa
+5.5,4.2,1.4,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+5.0,3.2,1.2,0.2,Iris-setosa
+5.5,3.5,1.3,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+4.4,3.0,1.3,0.2,Iris-setosa
+5.1,3.4,1.5,0.2,Iris-setosa
+5.0,3.5,1.3,0.3,Iris-setosa
+4.5,2.3,1.3,0.3,Iris-setosa
+4.4,3.2,1.3,0.2,Iris-setosa
+5.0,3.5,1.6,0.6,Iris-setosa
+5.1,3.8,1.9,0.4,Iris-setosa
+4.8,3.0,1.4,0.3,Iris-setosa
+5.1,3.8,1.6,0.2,Iris-setosa
+4.6,3.2,1.4,0.2,Iris-setosa
+5.3,3.7,1.5,0.2,Iris-setosa
+5.0,3.3,1.4,0.2,Iris-setosa
+7.0,3.2,4.7,1.4,Iris-versicolor
+6.4,3.2,4.5,1.5,Iris-versicolor
+6.9,3.1,4.9,1.5,Iris-versicolor
+5.5,2.3,4.0,1.3,Iris-versicolor
+6.5,2.8,4.6,1.5,Iris-versicolor
+5.7,2.8,4.5,1.3,Iris-versicolor
+6.3,3.3,4.7,1.6,Iris-versicolor
+4.9,2.4,3.3,1.0,Iris-versicolor
+6.6,2.9,4.6,1.3,Iris-versicolor
+5.2,2.7,3.9,1.4,Iris-versicolor
+5.0,2.0,3.5,1.0,Iris-versicolor
+5.9,3.0,4.2,1.5,Iris-versicolor
+6.0,2.2,4.0,1.0,Iris-versicolor
+6.1,2.9,4.7,1.4,Iris-versicolor
+5.6,2.9,3.6,1.3,Iris-versicolor
+6.7,3.1,4.4,1.4,Iris-versicolor
+5.6,3.0,4.5,1.5,Iris-versicolor
+5.8,2.7,4.1,1.0,Iris-versicolor
+6.2,2.2,4.5,1.5,Iris-versicolor
+5.6,2.5,3.9,1.1,Iris-versicolor
+5.9,3.2,4.8,1.8,Iris-versicolor
+6.1,2.8,4.0,1.3,Iris-versicolor
+6.3,2.5,4.9,1.5,Iris-versicolor
+6.1,2.8,4.7,1.2,Iris-versicolor
+6.4,2.9,4.3,1.3,Iris-versicolor
+6.6,3.0,4.4,1.4,Iris-versicolor
+6.8,2.8,4.8,1.4,Iris-versicolor
+6.7,3.0,5.0,1.7,Iris-versicolor
+6.0,2.9,4.5,1.5,Iris-versicolor
+5.7,2.6,3.5,1.0,Iris-versicolor
+5.5,2.4,3.8,1.1,Iris-versicolor
+5.5,2.4,3.7,1.0,Iris-versicolor
+5.8,2.7,3.9,1.2,Iris-versicolor
+6.0,2.7,5.1,1.6,Iris-versicolor
+5.4,3.0,4.5,1.5,Iris-versicolor
+6.0,3.4,4.5,1.6,Iris-versicolor
+6.7,3.1,4.7,1.5,Iris-versicolor
+6.3,2.3,4.4,1.3,Iris-versicolor
+5.6,3.0,4.1,1.3,Iris-versicolor
+5.5,2.5,4.0,1.3,Iris-versicolor
+5.5,2.6,4.4,1.2,Iris-versicolor
+6.1,3.0,4.6,1.4,Iris-versicolor
+5.8,2.6,4.0,1.2,Iris-versicolor
+5.0,2.3,3.3,1.0,Iris-versicolor
+5.6,2.7,4.2,1.3,Iris-versicolor
+5.7,3.0,4.2,1.2,Iris-versicolor
+5.7,2.9,4.2,1.3,Iris-versicolor
+6.2,2.9,4.3,1.3,Iris-versicolor
+5.1,2.5,3.0,1.1,Iris-versicolor
+5.7,2.8,4.1,1.3,Iris-versicolor
+6.3,3.3,6.0,2.5,Iris-virginica
+5.8,2.7,5.1,1.9,Iris-virginica
+7.1,3.0,5.9,2.1,Iris-virginica
+6.3,2.9,5.6,1.8,Iris-virginica
+6.5,3.0,5.8,2.2,Iris-virginica
+7.6,3.0,6.6,2.1,Iris-virginica
+4.9,2.5,4.5,1.7,Iris-virginica
+7.3,2.9,6.3,1.8,Iris-virginica
+6.7,2.5,5.8,1.8,Iris-virginica
+7.2,3.6,6.1,2.5,Iris-virginica
+6.5,3.2,5.1,2.0,Iris-virginica
+6.4,2.7,5.3,1.9,Iris-virginica
+6.8,3.0,5.5,2.1,Iris-virginica
+5.7,2.5,5.0,2.0,Iris-virginica
+5.8,2.8,5.1,2.4,Iris-virginica
+6.4,3.2,5.3,2.3,Iris-virginica
+6.5,3.0,5.5,1.8,Iris-virginica
+7.7,3.8,6.7,2.2,Iris-virginica
+7.7,2.6,6.9,2.3,Iris-virginica
+6.0,2.2,5.0,1.5,Iris-virginica
+6.9,3.2,5.7,2.3,Iris-virginica
+5.6,2.8,4.9,2.0,Iris-virginica
+7.7,2.8,6.7,2.0,Iris-virginica
+6.3,2.7,4.9,1.8,Iris-virginica
+6.7,3.3,5.7,2.1,Iris-virginica
+7.2,3.2,6.0,1.8,Iris-virginica
+6.2,2.8,4.8,1.8,Iris-virginica
+6.1,3.0,4.9,1.8,Iris-virginica
+6.4,2.8,5.6,2.1,Iris-virginica
+7.2,3.0,5.8,1.6,Iris-virginica
+7.4,2.8,6.1,1.9,Iris-virginica
+7.9,3.8,6.4,2.0,Iris-virginica
+6.4,2.8,5.6,2.2,Iris-virginica
+6.3,2.8,5.1,1.5,Iris-virginica
+6.1,2.6,5.6,1.4,Iris-virginica
+7.7,3.0,6.1,2.3,Iris-virginica
+6.3,3.4,5.6,2.4,Iris-virginica
+6.4,3.1,5.5,1.8,Iris-virginica
+6.0,3.0,4.8,1.8,Iris-virginica
+6.9,3.1,5.4,2.1,Iris-virginica
+6.7,3.1,5.6,2.4,Iris-virginica
+6.9,3.1,5.1,2.3,Iris-virginica
+5.8,2.7,5.1,1.9,Iris-virginica
+6.8,3.2,5.9,2.3,Iris-virginica
+6.7,3.3,5.7,2.5,Iris-virginica
+6.7,3.0,5.2,2.3,Iris-virginica
+6.3,2.5,5.0,1.9,Iris-virginica
+6.5,3.0,5.2,2.0,Iris-virginica
+6.2,3.4,5.4,2.3,Iris-virginica
+5.9,3.0,5.1,1.8,Iris-virginica
+%
+%
+%
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/learnAndSaveModel.kfml b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/learnAndSaveModel.kfml
new file mode 100644
index 00000000..fd069b7c
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/learnAndSaveModel.kfml
@@ -0,0 +1,237 @@
+
+
+
+
+
+
+
+
+
+]
+>
+
+
+
+
+ 0
+ 112
+ 114
+ ArffLoader
+
+
+ weka/gui/beans/templates/credit-g.arff
+ false
+
+
+ true
+
+
+
+
+
+ 1
+ 272
+ 114
+ ClassAssigner
+
+ last
+
+
+
+ 2
+ 112
+ 197
+
+ Double click to configure me
with an ARFF file
+
+ -1
+
+
+
+ 3
+ 283
+ 204
+
+ Double click to
specify the class
attribute
+
+ -1
+
+
+
+ 4
+ 314
+ 329
+ J48
+
+
+ false
+
+ -C
+ 0.25
+ -M
+ 2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+ 2
+
+
+
+ 5
+ 472
+ 114
+ TrainingSetMaker
+
+
+
+
+ TrainingSetMaker
+ weka/gui/beans/icons/TrainingSetMaker.gif
+ weka/gui/beans/icons/TrainingSetMaker_animated.gif
+
+ TrainingSetMaker
+
+
+
+ 6
+ 554
+ 329
+ SerializedModelSaver
+
+ ${user.home}
+
+ false
+
+
+ SerializedModelSaver
+ weka/gui/beans/icons/SerializedModelSaver.gif
+ weka/gui/beans/icons/SerializedModelSaver_animated.gif
+
+ SerializedModelSaver
+ exampleModel
+
+ 0
+
+ Binary serialized model file (*model)
+
+ false
+
+
+
+ 7
+ 74
+ 329
+ TextViewer
+
+
+
+ true
+
+
+
+
+ TextViewer
+ weka/gui/beans/icons/DefaultText.gif
+ weka/gui/beans/icons/DefaultText_animated.gif
+
+ TextViewer
+
+
+
+ 8
+ 579
+ 117
+
+ Make the dataset into
a training set
+
+ -1
+
+
+
+ 9
+ 322
+ 411
+
+ Learn a decision tree
(double click to configure
options)
+
+ -1
+
+
+
+ 10
+ 672
+ 336
+
+ Double click to configure
a filename prefix and
directory to save the
model to
+
+ -1
+
+
+
+ 11
+ 84
+ 407
+
+ Collects the textual
description of the
model.
+
+ -1
+
+
+
+ 12
+ 385
+ 32
+
+ <html><b>NOTE: this flow is configured to run out of the box.</b> It loads an ARFF file as a resource from the classpath. If you want
to use your own data, edit the ArffLoader. The model is saved as "exampleModelJ48_1_1.model" to your home directory
(Java property "user.home").</html>
+
+ -1
+
+
+
+
+
+ 0
+ 1
+ dataSet
+ false
+
+
+ 1
+ 5
+ dataSet
+ false
+
+
+ 5
+ 4
+ trainingSet
+ false
+
+
+ 4
+ 6
+ batchClassifier
+ false
+
+
+ 4
+ 7
+ text
+ false
+
+
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/saveCharts.kfml b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/saveCharts.kfml
new file mode 100644
index 00000000..15762f7c
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/saveCharts.kfml
@@ -0,0 +1,427 @@
+
+
+
+
+
+
+
+
+
+]
+>
+
+
+
+
+ 0
+ 127
+ 131
+ ArffLoader
+
+
+ weka/gui/beans/templates/credit-g.arff
+ false
+
+
+ true
+
+
+
+
+
+ 1
+ 287
+ 131
+ DataVisualizer
+
+
+
+ DataVisualizer
+ weka/gui/beans/icons/DefaultDataVisualizer.gif
+ weka/gui/beans/icons/DefaultDataVisualizer_animated.gif
+
+
+ Weka Chart Renderer
+ 400
+ DataVisualizer
+ credit_amount
+
+ true
+
+
+ 500
+ -color=/last
+ age
+
+
+
+ 2
+ 287
+ 255
+ AttributeSummarizer
+
+
+
+ AttributeSummarizer
+ weka/gui/beans/icons/AttributeSummarizer.gif
+ weka/gui/beans/icons/AttributeSummarizer_animated.gif
+
+
+ Weka Chart Renderer
+ -1
+ 400
+ 100
+ 4
+ AttributeSummarizer
+
+
+ true
+
+
+ 500
+ -color=/last
+ employment
+
+
+
+ 3
+ 447
+ 255
+ ImageSaver
+
+ ${user.home}/chart2.png
+
+
+
+ ImageSaver
+ weka/gui/beans/icons/SerializedModelSaver.gif
+ weka/gui/beans/icons/SerializedModelSaver_animated.gif
+
+ ImageSaver
+
+
+
+ 4
+ 447
+ 131
+ ImageSaver2
+
+ ${user.home}/chart1.png
+
+
+
+ ImageSaver2
+ weka/gui/beans/icons/SerializedModelSaver.gif
+ weka/gui/beans/icons/SerializedModelSaver_animated.gif
+
+ ImageSaver2
+
+
+
+ 5
+ 47
+ 387
+ ClassAssigner
+
+ last
+
+
+
+ 6
+ 207
+ 387
+ ClassValuePicker
+
+ good
+
+
+
+ 7
+ 367
+ 387
+ CrossValidationFoldMaker
+
+ false
+ 1
+ 10
+
+
+
+ 8
+ 567
+ 387
+ NaiveBayes
+
+
+ false
+
+
+
+
+
+
+ false
+ 2
+
+
+
+ 9
+ 727
+ 387
+ ClassifierPerformanceEvaluator
+
+ 2
+
+
+
+ 10
+ 727
+ 253
+ ModelPerformanceChart
+
+
+
+ ModelPerformanceChart
+ weka/gui/beans/icons/ModelPerformanceChart.gif
+ weka/gui/beans/icons/ModelPerformanceChart_animated.gif
+
+
+ Weka Chart Renderer
+ 400
+ ModelPerformanceChart
+
+
+ true
+
+
+ 500
+
+
+
+
+
+ 11
+ 552
+ 255
+ ModelPerformanceChart2
+
+
+
+ ModelPerformanceChart2
+ weka/gui/beans/icons/ModelPerformanceChart.gif
+ weka/gui/beans/icons/ModelPerformanceChart_animated.gif
+
+
+ Weka Chart Renderer
+ 400
+ ModelPerformanceChart2
+ credit_amount
+
+ true
+
+
+ 500
+
+ age
+
+
+
+ 12
+ 47
+ 241
+ ArffLoader
+
+
+ weka/gui/beans/templates/credit-g.arff
+ false
+
+
+ true
+
+
+
+
+
+ 13
+ 727
+ 129
+ ImageSaver3
+
+ ${user.home}/chart3.png
+
+
+
+ ImageSaver3
+ weka/gui/beans/icons/SerializedModelSaver.gif
+ weka/gui/beans/icons/SerializedModelSaver_animated.gif
+
+ ImageSaver3
+
+
+
+ 14
+ 552
+ 131
+ ImageSaver4
+
+ ${user.home}/chart4.png
+
+
+
+ ImageSaver4
+ weka/gui/beans/icons/SerializedModelSaver.gif
+ weka/gui/beans/icons/SerializedModelSaver_animated.gif
+
+ ImageSaver4
+
+
+
+ 15
+ 543
+ 323
+
+ Errors scatter plot
+
+ -1
+
+
+
+ 16
+ 658
+ 237
+
+ ROC curve
+
+ -1
+
+
+
+ 17
+ 129
+ 213
+
+ German credit
data
+
+ -1
+
+
+
+ 18
+ 290
+ 327
+
+ Bar chart for "employment"
+
+ -1
+
+
+
+ 19
+ 327
+ 202
+
+ Scatter plot of
"age" vs "credit_amount"
+
+ -1
+
+
+
+ 20
+ 376
+ 45
+
+ <html><b>NOTE: this flow is configured to run out of the box.</b> It loads an ARFF file as a resource from the classpath. If you want
to use your own data, edit the ArffLoader and configure the chart components and image savers.<p><p>Charts are saved to png files in your home directory using Weka's built-in chart rendering. For pretty charts install the
<b>"jfreechartOffscreenChartRenderer"</b> package using the package manager.</html>
+
+ -1
+
+
+
+
+
+ 0
+ 1
+ dataSet
+ false
+
+
+ 0
+ 2
+ dataSet
+ false
+
+
+ 2
+ 3
+ image
+ false
+
+
+ 1
+ 4
+ image
+ false
+
+
+ 5
+ 6
+ dataSet
+ false
+
+
+ 6
+ 7
+ dataSet
+ false
+
+
+ 7
+ 8
+ trainingSet
+ false
+
+
+ 7
+ 8
+ testSet
+ false
+
+
+ 8
+ 9
+ batchClassifier
+ false
+
+
+ 9
+ 10
+ thresholdData
+ false
+
+
+ 9
+ 11
+ visualizableError
+ false
+
+
+ 12
+ 5
+ dataSet
+ false
+
+
+ 10
+ 13
+ image
+ false
+
+
+ 11
+ 14
+ image
+ false
+
+
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/templates.props b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/templates.props
new file mode 100644
index 00000000..923b0aab
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/templates.props
@@ -0,0 +1,14 @@
+# List of available template flows
+weka.gui.beans.KnowledgeFlow.templates=weka/gui/beans/templates/cvTemplate.kfml,\
+ weka/gui/beans/templates/learnAndSaveModel.kfml,\
+ weka/gui/beans/templates/ROCcurves.kfml,\
+ weka/gui/beans/templates/incrementalLearning.kfml,\
+ weka/gui/beans/templates/twoClusterers.kfml,\
+ weka/gui/beans/templates/saveCharts.kfml,\
+
+weka.gui.beans.KnowledgeFlow.templates.desc=Cross validation,\
+ Learn and save a model,\
+ ROC curves for two classifiers,\
+ Learn and evaluate naive Bayes incrementally,\
+ Compare two clusterers,\
+ Save various charts to files
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/templates/twoClusterers.kfml b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/twoClusterers.kfml
new file mode 100644
index 00000000..369587df
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/beans/templates/twoClusterers.kfml
@@ -0,0 +1,298 @@
+
+
+
+
+
+
+
+
+
+]
+>
+
+
+
+
+ 0
+ 69
+ 314
+ ArffLoader
+
+
+ weka/gui/beans/templates/iris.arff
+ false
+
+
+ true
+
+
+
+
+
+ 1
+ 391
+ 91
+ EM
+
+
+
+ -I
+ 100
+ -N
+ -1
+ -M
+ 1.0E-6
+ -S
+ 100
+
+
+
+
+
+ 2
+ 591
+ 91
+ ClustererPerformanceEvaluator
+
+
+
+
+ ClustererPerformanceEvaluator
+ weka/gui/beans/icons/ClustererPerformanceEvaluator.gif
+ weka/gui/beans/icons/ClustererPerformanceEvaluator_animated.gif
+
+ ClustererPerformanceEvaluator
+
+
+
+ 3
+ 713
+ 194
+ TextViewer
+
+
+
+ true
+
+
+
+
+ TextViewer
+ weka/gui/beans/icons/DefaultText.gif
+ weka/gui/beans/icons/DefaultText_animated.gif
+
+ TextViewer
+
+
+
+ 4
+ 233
+ 194
+ TrainTestSplitMaker
+
+ 1
+ 66.0
+
+
+
+ 5
+ 393
+ 314
+ MakeDensityBasedClusterer
+
+
+
+ -M
+ 1.0E-6
+ -W
+ weka.clusterers.SimpleKMeans
+ --
+ -N
+ 3
+ -A
+ weka.core.EuclideanDistance -R first-last
+ -I
+ 500
+ -S
+ 10
+
+
+
+
+
+ 6
+ 593
+ 314
+ ClustererPerformanceEvaluator
+
+
+
+
+ ClustererPerformanceEvaluator
+ weka/gui/beans/icons/ClustererPerformanceEvaluator.gif
+ weka/gui/beans/icons/ClustererPerformanceEvaluator_animated.gif
+
+ ClustererPerformanceEvaluator
+
+
+
+ 7
+ 64
+ 400
+
+ Double click to
configure with
an ARFF dataset.
+
+ -1
+
+
+
+ 8
+ 219
+ 289
+
+ 2/3 - 1/3 train-test
split. Double click
to change split
percentage.
+
+ -1
+
+
+
+ 9
+ 418
+ 181
+
+ EM clustering with
cross-validation to
choose the best
number of clusters.
+
+ -1
+
+
+
+ 10
+ 385
+ 407
+
+ Fits Gaussian distributions
to the clusters found by
k-means. Double click to
configure.
+
+ -1
+
+
+
+ 11
+ 596
+ 395
+
+ Computes evaluation
results.
+
+ -1
+
+
+
+ 12
+ 714
+ 282
+
+ Right click and
select "Show results"
+
+ -1
+
+
+
+ 13
+ 69
+ 194
+ Remove
+
+
+
+ -R
+ last
+
+
+
+
+
+
+ 14
+ 85
+ 147
+
+ Remove the class column
+
+ -1
+
+
+
+ 15
+ 374
+ 27
+
+ <html><b>NOTE: this flow is configured to run out of the box.</b> It loads an ARFF file as a resource from the classpath. If you want
to use your own data, edit the ArffLoader.</html>
+
+ -1
+
+
+
+
+
+ 1
+ 2
+ batchClusterer
+ false
+
+
+ 2
+ 3
+ text
+ false
+
+
+ 4
+ 1
+ trainingSet
+ false
+
+
+ 4
+ 1
+ testSet
+ false
+
+
+ 4
+ 5
+ trainingSet
+ false
+
+
+ 4
+ 5
+ testSet
+ false
+
+
+ 5
+ 6
+ batchClusterer
+ false
+
+
+ 6
+ 3
+ text
+ false
+
+
+ 0
+ 13
+ dataSet
+ false
+
+
+ 13
+ 4
+ dataSet
+ false
+
+
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/beans/xml/XMLBeans.class b/workflow/apps/java/clustering/bin/weka/gui/beans/xml/XMLBeans.class
new file mode 100644
index 00000000..779c25c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/beans/xml/XMLBeans.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$1.class
new file mode 100644
index 00000000..5f8dba18
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$2.class
new file mode 100644
index 00000000..ea4c7ae5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$3.class
new file mode 100644
index 00000000..81e981ae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$PlotPanel.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$PlotPanel.class
new file mode 100644
index 00000000..be62971f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$PlotPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$PlotThread.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$PlotThread.class
new file mode 100644
index 00000000..09e1a550
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel$PlotThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel.class
new file mode 100644
index 00000000..fcb8a61c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$1.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$1.class
new file mode 100644
index 00000000..641b97df
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$2.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$2.class
new file mode 100644
index 00000000..1a7fb7a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$3.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$3.class
new file mode 100644
index 00000000..a91d37d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed.class
new file mode 100644
index 00000000..f71e58bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryPanelDistributed.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$1.class
new file mode 100644
index 00000000..bbb3c4c6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$10.class
new file mode 100644
index 00000000..17b107f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$11.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$11.class
new file mode 100644
index 00000000..deb9a744
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$12.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$12.class
new file mode 100644
index 00000000..a487a6c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$13.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$13.class
new file mode 100644
index 00000000..455fdfd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$2.class
new file mode 100644
index 00000000..6e62d59e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$3.class
new file mode 100644
index 00000000..0e52e252
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$4.class
new file mode 100644
index 00000000..70a209c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$5.class
new file mode 100644
index 00000000..374fa2c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$6.class
new file mode 100644
index 00000000..b391c21e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$7.class
new file mode 100644
index 00000000..5ae4732d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$8.class
new file mode 100644
index 00000000..3901856d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$9.class
new file mode 100644
index 00000000..5b448e55
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$AxisPanel.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$AxisPanel.class
new file mode 100644
index 00000000..e2bdc99b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer$AxisPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer.class
new file mode 100644
index 00000000..86c23580
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/BoundaryVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/DataGenerator.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/DataGenerator.class
new file mode 100644
index 00000000..1858bd42
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/DataGenerator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/KDDataGenerator.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/KDDataGenerator.class
new file mode 100644
index 00000000..bc423a6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/KDDataGenerator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/RemoteBoundaryVisualizerSubTask.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/RemoteBoundaryVisualizerSubTask.class
new file mode 100644
index 00000000..dde400a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/RemoteBoundaryVisualizerSubTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/RemoteResult.class b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/RemoteResult.class
new file mode 100644
index 00000000..755ae039
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/boundaryvisualizer/RemoteResult.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AbstractSetupPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AbstractSetupPanel.class
new file mode 100644
index 00000000..1e18af6c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AbstractSetupPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$1.class
new file mode 100644
index 00000000..bc95130f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$2.class
new file mode 100644
index 00000000..cd1473fa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$3.class
new file mode 100644
index 00000000..0d7db2e7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$4.class
new file mode 100644
index 00000000..ccc23194
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1.class
new file mode 100644
index 00000000..81742337
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$2.class
new file mode 100644
index 00000000..6d6e8bb1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$3.class
new file mode 100644
index 00000000..239ad15d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$4.class
new file mode 100644
index 00000000..b70a0a5c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$5.class
new file mode 100644
index 00000000..1b732d11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$ObjectCellRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$ObjectCellRenderer.class
new file mode 100644
index 00000000..383bed71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel$ObjectCellRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel.class
new file mode 100644
index 00000000..9f43e2d7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/AlgorithmListPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$1.class
new file mode 100644
index 00000000..24bded09
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$2.class
new file mode 100644
index 00000000..e6dde3a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$3.class
new file mode 100644
index 00000000..d5822ca8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel.class
new file mode 100644
index 00000000..4d3f7f65
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DatasetListPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$1.class
new file mode 100644
index 00000000..a9240567
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$2.class
new file mode 100644
index 00000000..1c594262
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$3.class
new file mode 100644
index 00000000..63429319
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$4.class
new file mode 100644
index 00000000..0e08eba3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$5.class
new file mode 100644
index 00000000..cd28e457
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel.class
new file mode 100644
index 00000000..f7e44fb2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/DistributeExperimentPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$1.class
new file mode 100644
index 00000000..1ba0beae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$2.class
new file mode 100644
index 00000000..b2b51b4f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$3.class
new file mode 100644
index 00000000..6148f90a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter.class
new file mode 100644
index 00000000..0318a576
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter.props b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter.props
new file mode 100644
index 00000000..8b2b5fa4
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/experiment/Experimenter.props
@@ -0,0 +1,95 @@
+# This props file contains default values for the Weka Experimenter.
+# "simple" indicates that this property is only available for simple
+# experiments.
+#
+# $Revision: 11944 $
+
+# the default setup panel (classname)
+SetupPanel=weka.gui.experiment.SimpleSetupPanel
+
+# the default extension in the file-dialog
+# possible values:
+# .exp
+# .xml
+# .koml (if available)
+Extension=.exp
+
+# the default destination ("simple")
+# possible values:
+# ARFF file
+# CSV file
+# JDBC database
+Destination=ARFF file
+
+# the experiment type ("simple")
+# possible values:
+# Cross-validation
+# Train/Test Percentage Split (data randomized)
+# Train/Test Percentage Split (order preserved)
+ExperimentType=Cross-validation
+
+# whether classification is the default ("simple")
+UseClassification=true
+
+# the default number of CV folds ("simple")
+Folds=10
+
+# the default percentage for training ("simple")
+TrainPercentage=66
+
+# the default number of repetitions ("simple")
+Repetitions=10
+
+# whether datasets are first iterated ("simple")
+DatasetsFirst=true
+
+# the initial datasets directory
+# Note for Win32: the path backslashes have to written as "\\"
+InitialDatasetsDirectory=
+
+# whether to use relative paths
+UseRelativePaths=false
+
+# the default tester to use
+# possible values (at least):
+# Paired T-Tester (corrected)
+# Paired T-Tester
+Tester=Paired T-Tester (corrected)
+
+# the row selection
+Row=Key_Dataset
+
+# the column selection
+Column=Key_Scheme,Key_Scheme_options,Key_Scheme_version_ID
+
+# the default comparison field (lower case!)
+# see ComboBox in Experimenter
+ComparisonField=percent_correct
+
+# the default significance
+Significance=0.05
+
+# the default sorting
+Sorting=
+
+# whether stddevs are displayed by default
+ShowStdDev=false
+
+# whether the Average is displayed by default
+ShowAverage=false
+
+# the default precision for the mean
+MeanPrecision=2
+
+# the default precision for the stdev
+StdDevPrecision=2
+
+# the classname and options of the ResultMatrix, reponsible for the default
+# output format.
+# NB: The other defaults listed in this props file override the "advanced"
+# options specified in this property.
+OutputFormat=weka.experiment.ResultMatrixPlainText -col-name-width 0 -row-name-width 25 -mean-width 0 -stddev-width 0 -sig-width 0 -count-width 5 -print-col-names -print-row-names -enum-col-names
+
+# whether filter classnames are removed by default
+RemoveFilterClassnames=false
+
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ExperimenterDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ExperimenterDefaults.class
new file mode 100644
index 00000000..be5d4f67
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ExperimenterDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel$1.class
new file mode 100644
index 00000000..71873b4e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel$2.class
new file mode 100644
index 00000000..8105507f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel.class
new file mode 100644
index 00000000..79aa1bfb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/GeneratorPropertyIteratorPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/HostListPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/HostListPanel$1.class
new file mode 100644
index 00000000..ba9eadd2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/HostListPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/HostListPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/HostListPanel.class
new file mode 100644
index 00000000..8480e4a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/HostListPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$1.class
new file mode 100644
index 00000000..8ad66aea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$2.class
new file mode 100644
index 00000000..12e078f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$3.class
new file mode 100644
index 00000000..859de6b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$4.class
new file mode 100644
index 00000000..44743076
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$5.class
new file mode 100644
index 00000000..562f8d80
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$6.class
new file mode 100644
index 00000000..17d99629
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$7.class
new file mode 100644
index 00000000..614f0307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$8.class
new file mode 100644
index 00000000..1ad4dad5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$9.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$9.class
new file mode 100644
index 00000000..751ccedb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog.class
new file mode 100644
index 00000000..b78aac89
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/OutputFormatDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$1$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$1$1.class
new file mode 100644
index 00000000..3c33ba11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$1$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$1.class
new file mode 100644
index 00000000..df19790d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$10.class
new file mode 100644
index 00000000..3c18c17e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$11.class
new file mode 100644
index 00000000..00401864
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$12.class
new file mode 100644
index 00000000..f518750a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$13.class
new file mode 100644
index 00000000..e6144f47
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$14.class
new file mode 100644
index 00000000..ea41990c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$15.class
new file mode 100644
index 00000000..692b5f5d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$16.class
new file mode 100644
index 00000000..a18bb4ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$2$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$2$1.class
new file mode 100644
index 00000000..139327eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$2$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$2.class
new file mode 100644
index 00000000..e0a4226a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$3$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$3$1.class
new file mode 100644
index 00000000..625d36e6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$3$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$3.class
new file mode 100644
index 00000000..5f4052d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$4.class
new file mode 100644
index 00000000..3890f61c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$5.class
new file mode 100644
index 00000000..0a4aaab8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$6.class
new file mode 100644
index 00000000..82f61f2c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$7.class
new file mode 100644
index 00000000..bf41efb1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$8.class
new file mode 100644
index 00000000..cd192566
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$9.class
new file mode 100644
index 00000000..7bfc6933
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$JFrameWrapper.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$JFrameWrapper.class
new file mode 100644
index 00000000..302c0750
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel$JFrameWrapper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel.class
new file mode 100644
index 00000000..2a3d2885
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/ResultsPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$1.class
new file mode 100644
index 00000000..40036841
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$2.class
new file mode 100644
index 00000000..a8c02a82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$3.class
new file mode 100644
index 00000000..eee532e4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$4.class
new file mode 100644
index 00000000..ad3d08ae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$5.class
new file mode 100644
index 00000000..deec0153
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel.class
new file mode 100644
index 00000000..47678725
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunNumberPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$1.class
new file mode 100644
index 00000000..f4146cc6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$ExperimentRunner$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$ExperimentRunner$1.class
new file mode 100644
index 00000000..cee6cc4d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$ExperimentRunner$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$ExperimentRunner.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$ExperimentRunner.class
new file mode 100644
index 00000000..45e6f0d5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel$ExperimentRunner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel.class
new file mode 100644
index 00000000..49aa76b1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/RunPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupModePanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupModePanel$1.class
new file mode 100644
index 00000000..a922432d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupModePanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupModePanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupModePanel.class
new file mode 100644
index 00000000..6234e2de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupModePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$1.class
new file mode 100644
index 00000000..6dbc0866
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$10.class
new file mode 100644
index 00000000..5cdbc1f9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$11.class
new file mode 100644
index 00000000..49d0ab42
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$12.class
new file mode 100644
index 00000000..ad639973
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$13.class
new file mode 100644
index 00000000..31833043
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$2.class
new file mode 100644
index 00000000..ebe95033
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$3.class
new file mode 100644
index 00000000..ec472e03
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$4.class
new file mode 100644
index 00000000..94604970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$5.class
new file mode 100644
index 00000000..15407387
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$6.class
new file mode 100644
index 00000000..690904cc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$7.class
new file mode 100644
index 00000000..586e431d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$8.class
new file mode 100644
index 00000000..02e80212
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$9.class
new file mode 100644
index 00000000..75570779
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel.class
new file mode 100644
index 00000000..d74d43d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SetupPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$1.class
new file mode 100644
index 00000000..ccbdc7a8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$10.class
new file mode 100644
index 00000000..43b37262
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$11.class
new file mode 100644
index 00000000..1004f803
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$12.class
new file mode 100644
index 00000000..e1d5a443
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$13.class
new file mode 100644
index 00000000..0dc7137b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$14.class
new file mode 100644
index 00000000..09dcd7a6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$15.class
new file mode 100644
index 00000000..db3b45cb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$16.class
new file mode 100644
index 00000000..21d0ca85
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$17.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$17.class
new file mode 100644
index 00000000..cc13ed76
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$2.class
new file mode 100644
index 00000000..d5eb0cd8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$3.class
new file mode 100644
index 00000000..5d797100
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$4.class
new file mode 100644
index 00000000..96545670
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$5.class
new file mode 100644
index 00000000..5396340f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$6.class
new file mode 100644
index 00000000..c6c0654a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$7.class
new file mode 100644
index 00000000..801bf9d1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$8.class
new file mode 100644
index 00000000..f48559e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$9.class
new file mode 100644
index 00000000..c9bc237d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel.class b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel.class
new file mode 100644
index 00000000..f08a06e7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/experiment/SimpleSetupPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AbstractPlotInstances.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AbstractPlotInstances.class
new file mode 100644
index 00000000..3e788685
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AbstractPlotInstances.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$1.class
new file mode 100644
index 00000000..c062ecb6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$10.class
new file mode 100644
index 00000000..46691d82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$11.class
new file mode 100644
index 00000000..40c42b5f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$12.class
new file mode 100644
index 00000000..9a936e10
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$13.class
new file mode 100644
index 00000000..8760f071
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$14.class
new file mode 100644
index 00000000..68b754df
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$2.class
new file mode 100644
index 00000000..efc4d277
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$3.class
new file mode 100644
index 00000000..47de7822
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$4.class
new file mode 100644
index 00000000..440f823c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$5.class
new file mode 100644
index 00000000..d39fbd22
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$6.class
new file mode 100644
index 00000000..bb54f9f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$7.class
new file mode 100644
index 00000000..2361d323
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$8.class
new file mode 100644
index 00000000..6c57e5bd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$9.class
new file mode 100644
index 00000000..8248099d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$AssociationsPanelDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$AssociationsPanelDefaults.class
new file mode 100644
index 00000000..d4ec3c58
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel$AssociationsPanelDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel.class
new file mode 100644
index 00000000..c0803229
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AssociationsPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$1.class
new file mode 100644
index 00000000..0678b0d2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$10.class
new file mode 100644
index 00000000..10340ed3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$11.class
new file mode 100644
index 00000000..4c469bcc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$12.class
new file mode 100644
index 00000000..841f0b8a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$13.class
new file mode 100644
index 00000000..77e0000e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$14.class
new file mode 100644
index 00000000..6e19ce8f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$15.class
new file mode 100644
index 00000000..4d376650
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$16.class
new file mode 100644
index 00000000..f276e06d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$17.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$17.class
new file mode 100644
index 00000000..f1f54f05
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$18.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$18.class
new file mode 100644
index 00000000..19385275
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$19.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$19.class
new file mode 100644
index 00000000..11a4419f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$2.class
new file mode 100644
index 00000000..5c31d1ba
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$3.class
new file mode 100644
index 00000000..a5cb85dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$4.class
new file mode 100644
index 00000000..78da00a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$5.class
new file mode 100644
index 00000000..00320294
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$6.class
new file mode 100644
index 00000000..37848d91
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$7.class
new file mode 100644
index 00000000..9a8ea901
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$8.class
new file mode 100644
index 00000000..9dbea7b0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$9.class
new file mode 100644
index 00000000..3a672fee
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$AttributeSelectionPanelDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$AttributeSelectionPanelDefaults.class
new file mode 100644
index 00000000..fce5bc41
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$AttributeSelectionPanelDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$TestMode.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$TestMode.class
new file mode 100644
index 00000000..23e3bcd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel$TestMode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel.class
new file mode 100644
index 00000000..400ddf32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/AttributeSelectionPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierErrorsPlotInstances.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierErrorsPlotInstances.class
new file mode 100644
index 00000000..553c4ef9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierErrorsPlotInstances.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$1.class
new file mode 100644
index 00000000..ce2c368c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$10.class
new file mode 100644
index 00000000..88d70571
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$11.class
new file mode 100644
index 00000000..cbb3255b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$1.class
new file mode 100644
index 00000000..7fd3fe90
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$2.class
new file mode 100644
index 00000000..eb3a6195
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$3.class
new file mode 100644
index 00000000..8925d1dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12.class
new file mode 100644
index 00000000..278df9ca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$13.class
new file mode 100644
index 00000000..16307d3e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$14.class
new file mode 100644
index 00000000..af147271
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$15.class
new file mode 100644
index 00000000..792bd3e7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$16.class
new file mode 100644
index 00000000..7f42befd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$17.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$17.class
new file mode 100644
index 00000000..2627f104
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$18.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$18.class
new file mode 100644
index 00000000..5490a5de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$19.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$19.class
new file mode 100644
index 00000000..716d97cc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$2.class
new file mode 100644
index 00000000..5c018216
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$20.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$20.class
new file mode 100644
index 00000000..5f0785f4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$21.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$21.class
new file mode 100644
index 00000000..2ae838ff
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$22.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$22.class
new file mode 100644
index 00000000..e78ba38f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$23.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$23.class
new file mode 100644
index 00000000..16f06575
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$24.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$24.class
new file mode 100644
index 00000000..15d1d329
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$25.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$25.class
new file mode 100644
index 00000000..feb05adc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$26.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$26.class
new file mode 100644
index 00000000..86ee0e0a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$27.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$27.class
new file mode 100644
index 00000000..b38c2066
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$28.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$28.class
new file mode 100644
index 00000000..a5198fb0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$29.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$29.class
new file mode 100644
index 00000000..755c5252
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$3.class
new file mode 100644
index 00000000..1a399182
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$30.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$30.class
new file mode 100644
index 00000000..d555a864
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$31.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$31.class
new file mode 100644
index 00000000..01b24804
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$32.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$32.class
new file mode 100644
index 00000000..ba1354e7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$33$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$33$1.class
new file mode 100644
index 00000000..c54d3527
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$33$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$33.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$33.class
new file mode 100644
index 00000000..ad052df4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$33.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$34.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$34.class
new file mode 100644
index 00000000..b2695ec0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$34.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$35.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$35.class
new file mode 100644
index 00000000..bc7f7a49
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$35.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$36.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$36.class
new file mode 100644
index 00000000..5c75c7bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$36.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$37.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$37.class
new file mode 100644
index 00000000..a6ebdd0a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$37.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$38.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$38.class
new file mode 100644
index 00000000..146d25fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$38.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$39.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$39.class
new file mode 100644
index 00000000..b009066a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$39.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$4.class
new file mode 100644
index 00000000..b91c8ab4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$40.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$40.class
new file mode 100644
index 00000000..8df3e2f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$40.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$41.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$41.class
new file mode 100644
index 00000000..b7a008d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$41.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$42.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$42.class
new file mode 100644
index 00000000..a5ed1ef6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$42.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$43.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$43.class
new file mode 100644
index 00000000..951b0e75
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$43.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$44.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$44.class
new file mode 100644
index 00000000..49cf9093
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$44.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$5.class
new file mode 100644
index 00000000..4d046e30
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$6.class
new file mode 100644
index 00000000..b8d7a8cf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$7$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$7$1.class
new file mode 100644
index 00000000..93d1c173
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$7$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$7.class
new file mode 100644
index 00000000..44178798
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$8.class
new file mode 100644
index 00000000..a75c7cfc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$9.class
new file mode 100644
index 00000000..59334ff2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$ClassifierPanelDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$ClassifierPanelDefaults.class
new file mode 100644
index 00000000..a4890154
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$ClassifierPanelDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$TestMode.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$TestMode.class
new file mode 100644
index 00000000..623701e2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel$TestMode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel.class
new file mode 100644
index 00000000..5a25f3df
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanelLaunchHandlerPlugin.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanelLaunchHandlerPlugin.class
new file mode 100644
index 00000000..cf4e3c2b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClassifierPanelLaunchHandlerPlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererAssignmentsPlotInstances.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererAssignmentsPlotInstances.class
new file mode 100644
index 00000000..54348c22
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererAssignmentsPlotInstances.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$1.class
new file mode 100644
index 00000000..10b4fe27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$10.class
new file mode 100644
index 00000000..345defc6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$11.class
new file mode 100644
index 00000000..be7693a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$12.class
new file mode 100644
index 00000000..c5b2bacb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$13.class
new file mode 100644
index 00000000..fafee7a6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$14.class
new file mode 100644
index 00000000..ecb484e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$15.class
new file mode 100644
index 00000000..30940973
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$16.class
new file mode 100644
index 00000000..c1d69b77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$17.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$17.class
new file mode 100644
index 00000000..f1f91875
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$18.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$18.class
new file mode 100644
index 00000000..5737fbc6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$19.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$19.class
new file mode 100644
index 00000000..07498fc5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$2.class
new file mode 100644
index 00000000..31320838
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$20.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$20.class
new file mode 100644
index 00000000..d8934806
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$21.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$21.class
new file mode 100644
index 00000000..e9b242be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$22.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$22.class
new file mode 100644
index 00000000..7835bed2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$23.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$23.class
new file mode 100644
index 00000000..34b4ac2a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$24.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$24.class
new file mode 100644
index 00000000..b007089c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$25.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$25.class
new file mode 100644
index 00000000..38a1ae9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$26.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$26.class
new file mode 100644
index 00000000..4aff1edf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$27.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$27.class
new file mode 100644
index 00000000..2e01cc6b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$28.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$28.class
new file mode 100644
index 00000000..e971b043
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$29.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$29.class
new file mode 100644
index 00000000..5d8207a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$3.class
new file mode 100644
index 00000000..2c2298ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$30.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$30.class
new file mode 100644
index 00000000..254d68c6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$31.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$31.class
new file mode 100644
index 00000000..34a38268
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$32.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$32.class
new file mode 100644
index 00000000..a732f7a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$4.class
new file mode 100644
index 00000000..8a934b5c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$5.class
new file mode 100644
index 00000000..fc21b2e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$6.class
new file mode 100644
index 00000000..c36b7b27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$7.class
new file mode 100644
index 00000000..4e8ca638
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$8.class
new file mode 100644
index 00000000..60573e0c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$9.class
new file mode 100644
index 00000000..787e53ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$ClustererPanelDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$ClustererPanelDefaults.class
new file mode 100644
index 00000000..10e949da
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$ClustererPanelDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$TestMode.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$TestMode.class
new file mode 100644
index 00000000..04fe1f2f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel$TestMode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel.class
new file mode 100644
index 00000000..d82b9e7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanelLaunchHandlerPlugin.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanelLaunchHandlerPlugin.class
new file mode 100644
index 00000000..aca13b7e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ClustererPanelLaunchHandlerPlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/DataGeneratorPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/DataGeneratorPanel$1.class
new file mode 100644
index 00000000..bec96464
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/DataGeneratorPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/DataGeneratorPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/DataGeneratorPanel.class
new file mode 100644
index 00000000..3b969807
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/DataGeneratorPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$1.class
new file mode 100644
index 00000000..91a17d10
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$2.class
new file mode 100644
index 00000000..ac700e43
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$3.class
new file mode 100644
index 00000000..4d75e063
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$CapabilitiesFilterChangeEvent.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$CapabilitiesFilterChangeEvent.class
new file mode 100644
index 00000000..c65cfc4f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$CapabilitiesFilterChangeEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$CapabilitiesFilterChangeListener.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$CapabilitiesFilterChangeListener.class
new file mode 100644
index 00000000..66542166
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$CapabilitiesFilterChangeListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$ExplorerPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$ExplorerPanel.class
new file mode 100644
index 00000000..499778af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$ExplorerPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$LogHandler.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$LogHandler.class
new file mode 100644
index 00000000..2dc7950f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer$LogHandler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer.class
new file mode 100644
index 00000000..feec61b0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer.props b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer.props
new file mode 100644
index 00000000..0168c068
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/explorer/Explorer.props
@@ -0,0 +1,189 @@
+# This props file contains default values for the Weka Explorer.
+#
+# Notes:
+# - backslashes within options, e.g., for the default "Classifier", need
+# to be doubled (the backslashes get interpreted already when a property
+# is read).
+#
+# Author FracPete (fracpete at waikato dot ac dot nz)
+# Version $Revision: 7526 $
+
+# if set to true the Capabilities filters in the GOE will be initialized
+# based on the full dataset that has been loaded into the Explorer
+# otherwise only the header (true|false)
+# Note: The tabs in the Explorer have their own class combobox, which means
+# that the data has to be inspected several times (changing the class
+# combobox only leads to an inspection of the data in the current tab),
+# which can be slow on big datasets.
+InitGenericObjectEditorFilter=True
+
+# The tabs to display apart from the PreprocessPanel.
+#
+# The classes listed here must import the weka.gui.explorer.Explorer.ExplorerPanel
+# interface. Optionally, they can also import the
+# weka.gui.explorer.Explorer.LogHandler interface if they want to use the logging
+# functionality of the Explorer and the
+# weka.gui.exporer.Explorer.CapabilitiesFilterChangeListener interface
+# in case they need to know when the Capabilities have changed, e.g., when a
+# new dataset has been loaded into the Explorer.
+#
+# Additional options follow the classname after a colon.
+# Currently supported options are:
+# standalone - the tab does not depend on the PreprocessPanel to load the data first
+#
+Tabs=weka.gui.explorer.ClassifierPanel,\
+ weka.gui.explorer.ClustererPanel,\
+ weka.gui.explorer.AssociationsPanel,\
+ weka.gui.explorer.AttributeSelectionPanel,\
+ weka.gui.explorer.VisualizePanel
+
+# the initial directory for opening datasets.
+# the following placeholders are recognized
+# %t - the temp directory
+# %h - the user's home directory
+# %c - the current directory
+# %% - gets replaced by a single percentage sign
+InitialDirectory=%
+
+# whether to create undo points
+enableUndo=true
+
+# the directory in which to create undo files
+# %t is a placeholder for the standard system temp directory
+undoDirectory=%t
+
+# the default filter, including options (can be left empty)
+Filter=
+
+# the default classifier in the classify tab, including options
+# (default is ZeroR)
+Classifier=weka.classifiers.rules.ZeroR
+
+# the default test mode in the classify tab
+# (according to "testMode" variable in startClassifier method)
+# 1 - cross-validation
+# 2 - percentage split
+# 3 - use training set
+# 4 - supplied test set
+# (default is 1 - CV)
+ClassifierTestMode=1
+
+# the default number of folds for CV in the classify tab
+# (default is 10)
+ClassifierCrossvalidationFolds=10
+
+# the default percentage split % in the classify tab (integer: 1-99)
+# (default is 66)
+ClassifierPercentageSplit=66
+
+# whether the classifier model is output (true|false)
+# (default is true)
+ClassifierOutputModel=true
+
+# whether additional per-class stats of the classifier model are
+# output (true|false)
+# (default is true)
+ClassifierOutputPerClassStats=true
+
+# whether the entropy based evaluation measures of the classifier model are
+# output (true|false)
+# (default is false)
+ClassifierOutputEntropyEvalMeasures=false
+
+# whether the confusion matrix is output for the classifier (true|false)
+# (default is true)
+ClassifierOutputConfusionMatrix=true
+
+# whether the predictions of the classifier are stored for visulization
+# purposes (true|false)
+# (default is true)
+ClassifierStorePredictionsForVis=true
+
+# whether the predictions of the classifier output as well (true|false)
+# (default is false)
+ClassifierOutputPredictions=false
+
+# lists the attributes indices to output in addition to the predictions
+# (default is "")
+ClassifierOutputAdditionalAttributes=
+
+# whether the evaluation of the classifier is done cost-sensitively (true|false)
+# (default is false)
+# Note: a cost matrix still has to be provided!
+ClassifierCostSensitiveEval=false
+
+# the default random seed in the classify tab
+# (default is 1)
+ClassifierRandomSeed=1
+
+# whether the order is preserved in case of percentage split in the classifier
+# tab
+# (default is false)
+ClassifierPreserveOrder=false
+
+# whether the source code of a Sourcable classifier is output as well in the
+# classifier tab
+# (default is false)
+ClassifierOutputSourceCode=false
+
+# the default classname of a Sourcable classifier in the classifier tab
+# (default is Foobar)
+ClassifierSourceCodeClass=WekaClassifier
+
+# the class (incl. options) for collecting the predictions and turning them
+# into plotable instances for displaying the classifier errors.
+ClassifierErrorsPlotInstances=weka.gui.explorer.ClassifierErrorsPlotInstances
+
+# The minimum plot size for numeric attributes (when visualizing classifier errors)
+ClassifierErrorsMinimumPlotSizeNumeric=1
+
+# The maximum plot size for numeric attributes (when visualizing classifier errors)
+ClassifierErrorsMaximumPlotSizeNumeric=20
+
+# the default clusterer, including options
+# (default is EM)
+Clusterer=weka.clusterers.EM
+
+# the default test mode in the cluster tab
+# (according to "testMode" variable in startClusterer method)
+# 2 - percentage split
+# 3 - use training set
+# 4 - supplied test set
+# 5 - classes to clusters evaluation
+# (default is 3 - training set)
+ClustererTestMode=3
+
+# whether the clusters are stored for visualization purposes (true|false)
+# (default is true)
+ClustererStoreClustersForVis=true
+
+# the class (incl. options) for collecting the predictions and turning them
+# into plotable instances for displaying the cluster assignments.
+ClustererAssignmentsPlotInstances=weka.gui.explorer.ClustererAssignmentsPlotInstances
+
+# the default associator, including options
+# (default is Apriori)
+Associator=weka.associations.Apriori
+
+# the default attribute evaluator, including options
+# (default is CfsSubsetEval)
+ASEvaluation=weka.attributeSelection.CfsSubsetEval
+
+# the default attribute selection search scheme, including options
+# (default is BestFirst)
+ASSearch=weka.attributeSelection.BestFirst
+
+# the default test mode in the attribute selection tab
+# (according to "testMode" variable in startAttributeSelection method)
+# 0 - use full training set
+# 1 - cross-validation
+# (default is 0 - full training set)
+ASTestMode=0
+
+# the default number of folds for CV in the attribute selection tab
+# (default is 10)
+ASCrossvalidationFolds=10
+
+# the default random seed in the attribute selection tab
+# (default is 1)
+ASRandomSeed=1
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/ExplorerDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/ExplorerDefaults.class
new file mode 100644
index 00000000..a6e26864
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/ExplorerDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$1.class
new file mode 100644
index 00000000..b02913bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$10.class
new file mode 100644
index 00000000..44c16417
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$11.class
new file mode 100644
index 00000000..593c3b66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$12.class
new file mode 100644
index 00000000..92b3fe67
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$13.class
new file mode 100644
index 00000000..e2d3a168
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$14.class
new file mode 100644
index 00000000..359cf05d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$15.class
new file mode 100644
index 00000000..85d5c6be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$16.class
new file mode 100644
index 00000000..e18e7c7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$17.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$17.class
new file mode 100644
index 00000000..84dda0fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$18$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$18$1.class
new file mode 100644
index 00000000..064be383
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$18$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$18.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$18.class
new file mode 100644
index 00000000..71a4ee13
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$19.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$19.class
new file mode 100644
index 00000000..2f47b1db
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$2.class
new file mode 100644
index 00000000..3260c048
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$20.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$20.class
new file mode 100644
index 00000000..db2ad55c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$21$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$21$1.class
new file mode 100644
index 00000000..f54ba7ab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$21$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$21.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$21.class
new file mode 100644
index 00000000..7d60a598
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$22.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$22.class
new file mode 100644
index 00000000..1aaf2325
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$23.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$23.class
new file mode 100644
index 00000000..ff507ba5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24$1.class
new file mode 100644
index 00000000..6adfdd18
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24$2.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24$2.class
new file mode 100644
index 00000000..73cfe3fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24.class
new file mode 100644
index 00000000..7fa92e5f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$25.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$25.class
new file mode 100644
index 00000000..56717803
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$26.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$26.class
new file mode 100644
index 00000000..edf6c77e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$27.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$27.class
new file mode 100644
index 00000000..dc3de846
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$28.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$28.class
new file mode 100644
index 00000000..1cb7b30d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$29.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$29.class
new file mode 100644
index 00000000..4fbcd249
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$3.class
new file mode 100644
index 00000000..f7f2fc34
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$30.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$30.class
new file mode 100644
index 00000000..a4c9e8a2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$31$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$31$1.class
new file mode 100644
index 00000000..6fb00821
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$31$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$31.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$31.class
new file mode 100644
index 00000000..4ce1a940
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$32.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$32.class
new file mode 100644
index 00000000..de3b6605
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$33.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$33.class
new file mode 100644
index 00000000..98cd3889
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$33.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$4.class
new file mode 100644
index 00000000..2f35b93d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$5.class
new file mode 100644
index 00000000..15ade0c7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$6.class
new file mode 100644
index 00000000..8eef3302
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$7.class
new file mode 100644
index 00000000..8d1e88bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$8.class
new file mode 100644
index 00000000..fc102005
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$9.class
new file mode 100644
index 00000000..df0302ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$PreprocessDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$PreprocessDefaults.class
new file mode 100644
index 00000000..fe2daab0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel$PreprocessDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel.class
new file mode 100644
index 00000000..7bdaf472
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/PreprocessPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel$1.class
new file mode 100644
index 00000000..1134d34c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel$ScatterDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel$ScatterDefaults.class
new file mode 100644
index 00000000..195ba224
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel$ScatterDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel.class b/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel.class
new file mode 100644
index 00000000..b57de361
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/explorer/VisualizePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$1.class
new file mode 100644
index 00000000..5ddff8e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$10.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$10.class
new file mode 100644
index 00000000..16ebab94
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$2.class
new file mode 100644
index 00000000..3d55a52a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$3.class
new file mode 100644
index 00000000..9d8a4980
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$4.class
new file mode 100644
index 00000000..483d2b33
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$5.class
new file mode 100644
index 00000000..7fb58e29
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$6.class
new file mode 100644
index 00000000..4b49cdf8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$7.class
new file mode 100644
index 00000000..c98ed297
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$8.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$8.class
new file mode 100644
index 00000000..5c1ec092
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$9.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$9.class
new file mode 100644
index 00000000..97ee6796
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer.class b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer.class
new file mode 100644
index 00000000..f03e014f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/filters/AddUserFieldsCustomizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/BIFFormatException.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/BIFFormatException.class
new file mode 100644
index 00000000..504b5819
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/BIFFormatException.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/BIFParser.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/BIFParser.class
new file mode 100644
index 00000000..6439ce1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/BIFParser.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/DotParser.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/DotParser.class
new file mode 100644
index 00000000..12ecdc92
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/DotParser.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphConstants.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphConstants.class
new file mode 100644
index 00000000..2cc06caf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphConstants.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphEdge.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphEdge.class
new file mode 100644
index 00000000..c53e3ba3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphEdge.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphNode.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphNode.class
new file mode 100644
index 00000000..fab7c64b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$1.class
new file mode 100644
index 00000000..eab7c992
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$2.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$2.class
new file mode 100644
index 00000000..ed06e157
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$3.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$3.class
new file mode 100644
index 00000000..2c82e56a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$4.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$4.class
new file mode 100644
index 00000000..7aa24d77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$5.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$5.class
new file mode 100644
index 00000000..be198088
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$6.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$6.class
new file mode 100644
index 00000000..d60e895c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$7.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$7.class
new file mode 100644
index 00000000..c3ee2dee
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphPanel.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphPanel.class
new file mode 100644
index 00000000..add67ed8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerMouseListener.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerMouseListener.class
new file mode 100644
index 00000000..cb5ff186
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerMouseListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerMouseMotionListener.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerMouseMotionListener.class
new file mode 100644
index 00000000..1b37836b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerMouseMotionListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerTableModel.class
new file mode 100644
index 00000000..ece928a2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer$GraphVisualizerTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer.class
new file mode 100644
index 00000000..1ea787a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/GraphVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$1.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$1.class
new file mode 100644
index 00000000..c3af5405
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$2.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$2.class
new file mode 100644
index 00000000..7ce74e78
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$MyList.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$MyList.class
new file mode 100644
index 00000000..83464db0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$MyList.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$MyListNode.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$MyListNode.class
new file mode 100644
index 00000000..029033ba
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine$MyListNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine.class
new file mode 100644
index 00000000..332d8f27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/HierarchicalBCEngine.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutCompleteEvent.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutCompleteEvent.class
new file mode 100644
index 00000000..2e560649
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutCompleteEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutCompleteEventListener.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutCompleteEventListener.class
new file mode 100644
index 00000000..6d908be8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutCompleteEventListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutEngine.class b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutEngine.class
new file mode 100644
index 00000000..62bd6d8a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/LayoutEngine.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/extra.gif b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/extra.gif
new file mode 100644
index 00000000..2e727b2c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/extra.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/preferences.gif b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/preferences.gif
new file mode 100644
index 00000000..4ef0c06d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/preferences.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/save.gif b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/save.gif
new file mode 100644
index 00000000..6acb7305
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/save.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/zoomin.gif b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/zoomin.gif
new file mode 100644
index 00000000..dbd44778
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/zoomin.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/zoomout.gif b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/zoomout.gif
new file mode 100644
index 00000000..259bf9cf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/graphvisualizer/icons/zoomout.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/hierarchyvisualizer/HierarchyVisualizer$Node.class b/workflow/apps/java/clustering/bin/weka/gui/hierarchyvisualizer/HierarchyVisualizer$Node.class
new file mode 100644
index 00000000..6c04a1fa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/hierarchyvisualizer/HierarchyVisualizer$Node.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/hierarchyvisualizer/HierarchyVisualizer.class b/workflow/apps/java/clustering/bin/weka/gui/hierarchyvisualizer/HierarchyVisualizer.class
new file mode 100644
index 00000000..285db063
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/hierarchyvisualizer/HierarchyVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/back.gif b/workflow/apps/java/clustering/bin/weka/gui/images/back.gif
new file mode 100644
index 00000000..2abe8eb4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/back.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/connect.png b/workflow/apps/java/clustering/bin/weka/gui/images/connect.png
new file mode 100644
index 00000000..1fb87cf5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/connect.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/copy.gif b/workflow/apps/java/clustering/bin/weka/gui/images/copy.gif
new file mode 100644
index 00000000..3eedcf23
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/copy.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/cut.gif b/workflow/apps/java/clustering/bin/weka/gui/images/cut.gif
new file mode 100644
index 00000000..5ce4ba70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/cut.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/delete.gif b/workflow/apps/java/clustering/bin/weka/gui/images/delete.gif
new file mode 100644
index 00000000..e34afd40
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/delete.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/empty.gif b/workflow/apps/java/clustering/bin/weka/gui/images/empty.gif
new file mode 100644
index 00000000..bba941ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/empty.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/empty_small.gif b/workflow/apps/java/clustering/bin/weka/gui/images/empty_small.gif
new file mode 100644
index 00000000..bba941ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/empty_small.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/error.gif b/workflow/apps/java/clustering/bin/weka/gui/images/error.gif
new file mode 100644
index 00000000..aa2d65f5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/error.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/error_small.gif b/workflow/apps/java/clustering/bin/weka/gui/images/error_small.gif
new file mode 100644
index 00000000..eaefc8eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/error_small.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/find.gif b/workflow/apps/java/clustering/bin/weka/gui/images/find.gif
new file mode 100644
index 00000000..494a05ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/find.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/forward.gif b/workflow/apps/java/clustering/bin/weka/gui/images/forward.gif
new file mode 100644
index 00000000..3b884936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/forward.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/history.png b/workflow/apps/java/clustering/bin/weka/gui/images/history.png
new file mode 100644
index 00000000..4abc62b0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/history.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/home.gif b/workflow/apps/java/clustering/bin/weka/gui/images/home.gif
new file mode 100644
index 00000000..1bfd824c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/home.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/information.gif b/workflow/apps/java/clustering/bin/weka/gui/images/information.gif
new file mode 100644
index 00000000..140ccc48
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/information.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/information_small.gif b/workflow/apps/java/clustering/bin/weka/gui/images/information_small.gif
new file mode 100644
index 00000000..92e7bd2d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/information_small.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/new.gif b/workflow/apps/java/clustering/bin/weka/gui/images/new.gif
new file mode 100644
index 00000000..dcc20962
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/new.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/objects.gif b/workflow/apps/java/clustering/bin/weka/gui/images/objects.gif
new file mode 100644
index 00000000..b59b3310
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/objects.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/open.gif b/workflow/apps/java/clustering/bin/weka/gui/images/open.gif
new file mode 100644
index 00000000..edecd3fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/open.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/paste.gif b/workflow/apps/java/clustering/bin/weka/gui/images/paste.gif
new file mode 100644
index 00000000..e878c93c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/paste.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/print.gif b/workflow/apps/java/clustering/bin/weka/gui/images/print.gif
new file mode 100644
index 00000000..4949d9f9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/print.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/properties.gif b/workflow/apps/java/clustering/bin/weka/gui/images/properties.gif
new file mode 100644
index 00000000..db8a4793
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/properties.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/question.gif b/workflow/apps/java/clustering/bin/weka/gui/images/question.gif
new file mode 100644
index 00000000..e342a388
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/question.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/question_small.gif b/workflow/apps/java/clustering/bin/weka/gui/images/question_small.gif
new file mode 100644
index 00000000..8b56e729
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/question_small.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/redo.gif b/workflow/apps/java/clustering/bin/weka/gui/images/redo.gif
new file mode 100644
index 00000000..668637bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/redo.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/resize.gif b/workflow/apps/java/clustering/bin/weka/gui/images/resize.gif
new file mode 100644
index 00000000..45e109de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/resize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/run.gif b/workflow/apps/java/clustering/bin/weka/gui/images/run.gif
new file mode 100644
index 00000000..d9240f14
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/run.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/save.gif b/workflow/apps/java/clustering/bin/weka/gui/images/save.gif
new file mode 100644
index 00000000..9bb41860
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/save.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/sort.gif b/workflow/apps/java/clustering/bin/weka/gui/images/sort.gif
new file mode 100644
index 00000000..e492ef45
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/sort.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/stop.gif b/workflow/apps/java/clustering/bin/weka/gui/images/stop.gif
new file mode 100644
index 00000000..aaad3b87
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/stop.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/undo.gif b/workflow/apps/java/clustering/bin/weka/gui/images/undo.gif
new file mode 100644
index 00000000..d103e0d7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/undo.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/user.png b/workflow/apps/java/clustering/bin/weka/gui/images/user.png
new file mode 100644
index 00000000..d4eee7e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/user.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/weka_background.gif b/workflow/apps/java/clustering/bin/weka/gui/images/weka_background.gif
new file mode 100644
index 00000000..127bb7da
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/weka_background.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/weka_background_new.png b/workflow/apps/java/clustering/bin/weka/gui/images/weka_background_new.png
new file mode 100644
index 00000000..b5e7ecf2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/weka_background_new.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/images/weka_splash.gif b/workflow/apps/java/clustering/bin/weka/gui/images/weka_splash.gif
new file mode 100644
index 00000000..b0752223
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/images/weka_splash.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AbstractGraphicalCommand.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AbstractGraphicalCommand.class
new file mode 100644
index 00000000..52e00762
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AbstractGraphicalCommand.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective$1.class
new file mode 100644
index 00000000..525f9041
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective$AttDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective$AttDefaults.class
new file mode 100644
index 00000000..8c92e0dd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective$AttDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective.class
new file mode 100644
index 00000000..07005c93
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/AttributeSummaryPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$1.class
new file mode 100644
index 00000000..82ac5174
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$2.class
new file mode 100644
index 00000000..1351b39d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$3.class
new file mode 100644
index 00000000..65aa5987
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer.class
new file mode 100644
index 00000000..743c6306
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/BaseInteractiveViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/DesignPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/DesignPanel$1.class
new file mode 100644
index 00000000..9c1cd8c1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/DesignPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/DesignPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/DesignPanel.class
new file mode 100644
index 00000000..e501c065
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/DesignPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GOEStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GOEStepEditorDialog.class
new file mode 100644
index 00000000..de3e1bf8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GOEStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GetPerspectiveNamesGraphicalCommand.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GetPerspectiveNamesGraphicalCommand.class
new file mode 100644
index 00000000..9031be26
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GetPerspectiveNamesGraphicalCommand.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GraphicalEnvironmentCommandHandler.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GraphicalEnvironmentCommandHandler.class
new file mode 100644
index 00000000..9187864b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/GraphicalEnvironmentCommandHandler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/InvisibleNode.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/InvisibleNode.class
new file mode 100644
index 00000000..bbe89f34
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/InvisibleNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/InvisibleTreeModel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/InvisibleTreeModel.class
new file mode 100644
index 00000000..5adacf05
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/InvisibleTreeModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KFGUIConsts.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KFGUIConsts.class
new file mode 100644
index 00000000..8de21bb0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KFGUIConsts.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KFGraphicalEnvironmentCommandHandler.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KFGraphicalEnvironmentCommandHandler.class
new file mode 100644
index 00000000..12dcb284
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KFGraphicalEnvironmentCommandHandler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlow.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlow.class
new file mode 100644
index 00000000..0f3f647b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlow.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp$1.class
new file mode 100644
index 00000000..27e989b5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp$KnowledgeFlowGeneralDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp$KnowledgeFlowGeneralDefaults.class
new file mode 100644
index 00000000..ea18ae6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp$KnowledgeFlowGeneralDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp.class
new file mode 100644
index 00000000..d2cf6722
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/KnowledgeFlowApp.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$1.class
new file mode 100644
index 00000000..137e8b79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$10.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$10.class
new file mode 100644
index 00000000..cb8a1c49
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$11.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$11.class
new file mode 100644
index 00000000..7a8e5aba
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$12.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$12.class
new file mode 100644
index 00000000..182198dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$13.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$13.class
new file mode 100644
index 00000000..9ccf751b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$14.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$14.class
new file mode 100644
index 00000000..96b8a4af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$15.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$15.class
new file mode 100644
index 00000000..73148426
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$16.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$16.class
new file mode 100644
index 00000000..891b1214
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$17.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$17.class
new file mode 100644
index 00000000..0ff1d6a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$18.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$18.class
new file mode 100644
index 00000000..b28f2188
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$19.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$19.class
new file mode 100644
index 00000000..e94cd33e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$2.class
new file mode 100644
index 00000000..18abccdc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$20.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$20.class
new file mode 100644
index 00000000..7f1b40fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$3.class
new file mode 100644
index 00000000..444ed391
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$4.class
new file mode 100644
index 00000000..92c9f996
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$5.class
new file mode 100644
index 00000000..f8996ad9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$6.class
new file mode 100644
index 00000000..67b8dd69
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$7.class
new file mode 100644
index 00000000..11291bc7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$8.class
new file mode 100644
index 00000000..5b47bd80
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$9.class
new file mode 100644
index 00000000..77ae4a53
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel.class
new file mode 100644
index 00000000..9fc0a227
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/LayoutPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective$1.class
new file mode 100644
index 00000000..bb4df3a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective$2.class
new file mode 100644
index 00000000..a686fff9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective.class
new file mode 100644
index 00000000..0ec4e1f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$1.class
new file mode 100644
index 00000000..ec484566
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$10.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$10.class
new file mode 100644
index 00000000..673c110c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$11.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$11.class
new file mode 100644
index 00000000..6bb09e4e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$12.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$12.class
new file mode 100644
index 00000000..159c1d9d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$13.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$13.class
new file mode 100644
index 00000000..bb1a4bbd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$13.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$14.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$14.class
new file mode 100644
index 00000000..c623fa16
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$14.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$15.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$15.class
new file mode 100644
index 00000000..90f92c71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$15.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$16.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$16.class
new file mode 100644
index 00000000..967c90d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$16.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$17.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$17.class
new file mode 100644
index 00000000..0a12ace5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$17.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$18.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$18.class
new file mode 100644
index 00000000..a6ac0a58
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$18.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$19.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$19.class
new file mode 100644
index 00000000..e0327e8c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$19.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$2.class
new file mode 100644
index 00000000..857a9561
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$20.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$20.class
new file mode 100644
index 00000000..836aa5b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$20.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$21.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$21.class
new file mode 100644
index 00000000..6ae36cb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$21.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$22.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$22.class
new file mode 100644
index 00000000..e98e49a4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$22.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$23.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$23.class
new file mode 100644
index 00000000..7483c21b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$23.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$24.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$24.class
new file mode 100644
index 00000000..8edef694
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$24.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$25.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$25.class
new file mode 100644
index 00000000..225a8331
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$25.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$26.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$26.class
new file mode 100644
index 00000000..59ec29a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$26.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$27.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$27.class
new file mode 100644
index 00000000..de4e7f0e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$27.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$28.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$28.class
new file mode 100644
index 00000000..b986f763
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$28.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$29.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$29.class
new file mode 100644
index 00000000..26e41ba7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$29.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$3.class
new file mode 100644
index 00000000..3f3ac015
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$30.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$30.class
new file mode 100644
index 00000000..0748dd57
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$30.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$31.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$31.class
new file mode 100644
index 00000000..e5bf156b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$31.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$32.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$32.class
new file mode 100644
index 00000000..2517dfd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$32.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$33.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$33.class
new file mode 100644
index 00000000..138d1a84
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$33.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$34.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$34.class
new file mode 100644
index 00000000..64fffffd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$34.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$35.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$35.class
new file mode 100644
index 00000000..bb97f4c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$35.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$36.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$36.class
new file mode 100644
index 00000000..ba50de86
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$36.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$37.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$37.class
new file mode 100644
index 00000000..ad928619
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$37.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$38.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$38.class
new file mode 100644
index 00000000..1166a4eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$38.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39$1.class
new file mode 100644
index 00000000..9139e879
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39$2.class
new file mode 100644
index 00000000..d9d0684c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39.class
new file mode 100644
index 00000000..8d050b5d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$39.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$4.class
new file mode 100644
index 00000000..8823c1d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$40.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$40.class
new file mode 100644
index 00000000..b0edd2b7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$40.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$41.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$41.class
new file mode 100644
index 00000000..e8f2ed24
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$41.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$42.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$42.class
new file mode 100644
index 00000000..c31c10ab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$42.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$43.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$43.class
new file mode 100644
index 00000000..f40c03e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$43.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$5.class
new file mode 100644
index 00000000..7c7aa8cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$6.class
new file mode 100644
index 00000000..03775830
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$7.class
new file mode 100644
index 00000000..d3c1e1dc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$8.class
new file mode 100644
index 00000000..cdb9973b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$9.class
new file mode 100644
index 00000000..60623f15
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$Widgets.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$Widgets.class
new file mode 100644
index 00000000..939fdba6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar$Widgets.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar.class
new file mode 100644
index 00000000..b2039571
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/MainKFPerspectiveToolBar.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/NoteVisual.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/NoteVisual.class
new file mode 100644
index 00000000..ca366f74
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/NoteVisual.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/README_KnowledgeFlow b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/README_KnowledgeFlow
new file mode 100644
index 00000000..0c9d9dcb
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/README_KnowledgeFlow
@@ -0,0 +1,205 @@
+===============================================================
+KnowledgeFlow GUI Quick Primer
+===============================================================
+
+What's new in the KnowledgeFlow:
+
+The KnowledgeFlow has been completely rewritten in Weka 3.8.0/3.9.0.
+This includes a new underlying engine that is fully multithreaded
+and supports pluggable execution environments.
+
+New features include:
+
+* Automatic execution of individual steps in separate threads
+* Single threaded execution for streaming flows
+* Separate executor service for resource intensive steps and tasks
+* Support for attribute selection and boudary visualization
+* JSON-based flow persistence
+* Support for loading legacy .kfml flows
+* Settings and preferences at the application and perspective level
+* User-configurable logging level
+* New and simplified API
+
+Introduction:
+
+The KnowledgeFlow provides an alternative to the Explorer as a
+graphical front end to Weka's core algorithms. It presents a
+"data-flow" inspired interface to Weka. The user can select Weka
+steps from a pallete, place them on a layout canvas and connect
+them together in order to form a "knowledge flow" for processing and
+analyzing data. At present, all of Weka's classifiers, filters,
+clusterers, loaders and savers are available in the KnowledgeFlow
+along with some extra tools.
+
+The KnowledgeFlow can handle data either incrementally or in batches
+(the Explorer handles batch data only). Of course learning from data
+incrementally requires a classifier that can be updated on an instance
+by instance basis. There are a number of schemes that can handle data
+incrementally: NaiveBayesUpdateable, IB1, IBk, LWR (locally weighted
+regression), SGD, SPegasos, Cobweb and RacedIncrementalLogitBoost.
+
+Features of the KnowledgeFlow:
+
+* intuitive data flow style layout
+* process data in batches or incrementally
+* process multiple batches or streams in parallel! (each separate flow
+ executes in its own thread). Alternatively, multiple streams can be
+ executed sequentially, in a user-specified order
+* chain filters together
+* view models produced by classifiers for each fold in a cross validation
+* visualize performance of incremental classifiers during
+ processing (scrolling plots of classification accuracy, RMS error,
+ predictions etc)
+* access additional non flow-based functionality through plugin
+ "perspectives"
+
+Steps available in the KnowledgeFlow:
+
+DataSources:
+ All of Weka's loaders are available
+
+DataSinks:
+ All of Weka's savers are available
+
+Filters:
+ All of Weka's filters are available
+
+Classifiers:
+ All of Weka's classifiers are available
+
+Clusterers:
+ All of Weka's clusterers are available
+
+Attribute selection:
+ All of Weka's attribute and subset evaluators
+ All of Weka's search strategies
+
+Evaluation:
+ TrainingSetMaker - make a data set into a training set
+ TestSetMaker - make a data set into a test set
+ CrossValidationFoldMaker - split any data set, training set or test set
+ into folds
+ TrainTestSplitMaker - split any data set, training set or test set into
+ a training set and a test set
+ ClassAssigner - assign a column to be the class for any data set, training
+ set or test set
+ ClassValuePicker - choose a class value to be considered as the "positive"
+ class. This is useful when generating data for ROC style curves (see
+ below)
+ ClassifierPerformanceEvaluator - evaluate the performance of batch
+ trained/tested classifiers
+ IncrementalClassifierEvaluator - evaluate the performance of incrementally
+ trained classifiers
+ ClustererPerformanceEvaluator - evaluate the performance of batch
+ trained/tested clusterers
+ PredictionAppender - append classifier predictions to a test set. For
+ discrete class problems, can either append predicted class labels or
+ probability distributions
+ SerializedModelSaver - save a classifier out to a file for later use.
+
+Visualization:
+ DataVisualizer - step that can pop up a panel for visualizing data in
+ a single large 2D scatter plot
+ ScatterPlotMatrix - step that can pop up a panel containing a matrix of
+ small scatter plots (clicking on a small plot pops up a large scatter
+ plot)
+ AttributeSummarizer - step that can pop up a panel containing a matrix
+ of histogram plots - one for each of the attributes in the input data
+ ModelPerformanceChart - step that can pop up a panel for visualizing
+ threshold (i.e. ROC style) curves.
+ TextViewer - step for showing textual data. Can show data sets,
+ classification performance statistics etc.
+ GraphViewer - step that can pop up a panel for visualizing tree based
+ models
+ StripChart - step that can pop up a panel that displays a scrolling
+ plot of data (used for viewing the online performance of incremental
+ classifiers)
+ CostBenefitAnalysis - interactively and graphically explore the effects
+ of changing costs/benefits and adjusting prediction thresholds.
+ ImageViewer - step for visualizing static images.
+
+Plugin steps - various packages, installable via the package manager,
+provide plugin Knowledge Flow steps and perspectives.
+
+---------------
+
+Launching the KnowledgeFlow:
+
+The Weka GUI Chooser window is used to launch Weka's graphical
+environments. Select the button labeled "KnowledgeFlow" to start the
+KnowledgeFlow. Alternatively, you can launch the KnowledgeFlow from a
+terminal window by typing "java weka.gui.beans.KnowledgeFlow".
+
+EXAMPLE:
+-----------------
+Setting up a flow to load an arff file (batch mode) and
+perform a cross validation using J48 (Weka's C4.5 implementation). NOTE,
+this example ("Cross validation") can be accessed from the Templates
+button (third in from the right in the toolbar) in the KnowledgeFlow
+UI.
+
+First start the KnowlegeFlow.
+
+Next expand the DataSources entry in the tree and choose "ArffLoader"
+from the toolbar (the mouse pointer will change to a "cross hairs").
+
+Next place the ArffLoader step on the layout area by clicking
+somewhere on the layout (A copy of the ArffLoader icon will appear on
+the layout area).
+
+Next specify an arff file to load by first right clicking the mouse
+over the ArffLoader icon on the layout. A pop-up menu will
+appear. Select "Configure" under "Edit" in the list from this menu and
+browse to the location of your arff file. Alternatively, you can
+double-click on the icon to bring up the configuration dialog (if
+the step in question has one).
+
+Next expand the "Evaluation" entry in the tree and choose the
+"ClassAssigner" (allows you to choose which column to be the class)
+step from the toolbar. Place this on the layout.
+
+Now connect the ArffLoader to the ClassAssigner: first right click
+over the ArffLoader and select the "dataSet" under "Connections" in
+the menu. A "rubber band" line will appear. Move the mouse over the
+ClassAssigner step and left click - a red line labeled "dataSet"
+will connect the two steps.
+
+Next right click over the ClassAssigner and choose "Configure" from
+the menu. This will pop up a window from which you can specify which
+column is the class in your data (last is the default).
+
+Next grab a "CrossValidationFoldMaker" step from Evaluation
+and place it on the layout. Connect the ClassAssigner to the
+CrossValidationFoldMaker by right clicking over "ClassAssigner" and
+selecting "dataSet" from under "Connections" in the menu.
+
+Next expand the "Classifiers" entry in the tree, then the "trees"
+sub-entry and select the "J48" step. Place it on the layout.
+
+Connect the CrossValidationFoldMaker to J48 TWICE by first choosing
+"trainingSet" and then "testSet" from the pop-up menu for the
+CrossValidationFoldMaker.
+
+Next go back to the "Evaluation" entry and place a
+"ClassifierPerformanceEvaluator" step on the layout. Connect J48
+to this step by selecting the "batchClassifier" entry from the
+pop-up menu for J48.
+
+Next expand the "Visualization" entry and place a "TextViewer"
+step on the layout. Connect the ClassifierPerformanceEvaluator to
+the TextViewer by selecting the "text" entry from the pop-up menu for
+ClassifierPerformanceEvaluator.
+
+Now start the flow executing by pressing the blue "play" icon at the
+top-left of the display. Progress information for the executing
+steps willa appear in the "Status" area and "Log" at the bottom
+of the window.
+
+When finished you can view the results by choosing show results from
+the pop-up menu for the TextViewer step.
+
+Other cool things to add to this flow: connect a TextViewer and/or a
+GraphViewer to J48 in order to view the textual or graphical
+representations of the trees produced for each fold of the cross
+validation.
+-----------------------------
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$1.class
new file mode 100644
index 00000000..1780b34b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$2.class
new file mode 100644
index 00000000..38fe8ec1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$SQLDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$SQLDefaults.class
new file mode 100644
index 00000000..141251a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective$SQLDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective.class
new file mode 100644
index 00000000..4ded0914
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SQLViewerPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/ScatterPlotMatrixPerspective.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/ScatterPlotMatrixPerspective.class
new file mode 100644
index 00000000..9df23549
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/ScatterPlotMatrixPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SendToPerspectiveGraphicalCommand.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SendToPerspectiveGraphicalCommand.class
new file mode 100644
index 00000000..bb9c77da
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/SendToPerspectiveGraphicalCommand.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/ShadowBorder.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/ShadowBorder.class
new file mode 100644
index 00000000..d834a9de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/ShadowBorder.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$1.class
new file mode 100644
index 00000000..6ef5e887
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$2.class
new file mode 100644
index 00000000..051506fa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$3.class
new file mode 100644
index 00000000..75cb3f8f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$4.class
new file mode 100644
index 00000000..32068b02
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$5.class
new file mode 100644
index 00000000..d58328d8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$ClosingListener.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$ClosingListener.class
new file mode 100644
index 00000000..ff76dd67
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog$ClosingListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog.class
new file mode 100644
index 00000000..4070a5b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepInteractiveViewer.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepInteractiveViewer.class
new file mode 100644
index 00000000..5c4034ea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepInteractiveViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree$1.class
new file mode 100644
index 00000000..e05c8a06
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree$StepIconRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree$StepIconRenderer.class
new file mode 100644
index 00000000..e0a7e41d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree$StepIconRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree.class
new file mode 100644
index 00000000..afb3a180
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTree.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTreeIgnore.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTreeIgnore.class
new file mode 100644
index 00000000..cca4b56d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTreeIgnore.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTreeLeafDetails.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTreeLeafDetails.class
new file mode 100644
index 00000000..b71bde8b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepTreeLeafDetails.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepVisual.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepVisual.class
new file mode 100644
index 00000000..1622812a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/StepVisual.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/TemplateManager.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/TemplateManager.class
new file mode 100644
index 00000000..60773b71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/TemplateManager.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$1.class
new file mode 100644
index 00000000..d6959ca9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$2.class
new file mode 100644
index 00000000..9f3b79c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$KFLogPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$KFLogPanel.class
new file mode 100644
index 00000000..5a30a7a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$KFLogPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$LayoutOperation.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$LayoutOperation.class
new file mode 100644
index 00000000..7e71f0de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout$LayoutOperation.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout.class
new file mode 100644
index 00000000..7aec3854
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/VisibleLayout.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ADTree.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ADTree.gif
new file mode 100644
index 00000000..c81a17a0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ADTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AODE.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AODE.gif
new file mode 100644
index 00000000..e41282b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AODE.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AdaBoostM1.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AdaBoostM1.gif
new file mode 100644
index 00000000..ba3960e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AdaBoostM1.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AdditiveRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AdditiveRegression.gif
new file mode 100644
index 00000000..aac15c0c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AdditiveRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Appender.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Appender.png
new file mode 100644
index 00000000..becec227
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Appender.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ArffLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ArffLoader.gif
new file mode 100644
index 00000000..a0f3c970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ArffLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ArffSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ArffSaver.gif
new file mode 100644
index 00000000..2afa81d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ArffSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AttributeSelectedClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AttributeSelectedClassifier.gif
new file mode 100644
index 00000000..3b8c9ef2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AttributeSelectedClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AttributeSummarizer.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AttributeSummarizer.gif
new file mode 100644
index 00000000..2907f5bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/AttributeSummarizer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Bagging.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Bagging.gif
new file mode 100644
index 00000000..1f7cf661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Bagging.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/BayesNet.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/BayesNet.gif
new file mode 100644
index 00000000..afbcecf0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/BayesNet.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/C45Loader.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/C45Loader.gif
new file mode 100644
index 00000000..8b277ae6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/C45Loader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/C45Saver.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/C45Saver.gif
new file mode 100644
index 00000000..72e3a9c1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/C45Saver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CSVLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CSVLoader.gif
new file mode 100644
index 00000000..8a87b634
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CSVLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CSVSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CSVSaver.gif
new file mode 100644
index 00000000..0dfdf214
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CSVSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CVParameterSelection.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CVParameterSelection.gif
new file mode 100644
index 00000000..a92d506d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CVParameterSelection.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassAssigner.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassAssigner.gif
new file mode 100644
index 00000000..d275c4f7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassAssigner.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassBalancedND.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassBalancedND.gif
new file mode 100644
index 00000000..bc018f1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassBalancedND.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassValuePicker.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassValuePicker.gif
new file mode 100644
index 00000000..83c96c6d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassValuePicker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassificationViaRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassificationViaRegression.gif
new file mode 100644
index 00000000..329adfed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassificationViaRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassifierPerformanceEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassifierPerformanceEvaluator.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClassifierPerformanceEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClustererPerformanceEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClustererPerformanceEvaluator.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ClustererPerformanceEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Cobweb.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Cobweb.gif
new file mode 100644
index 00000000..1d476c53
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Cobweb.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ComplementNaiveBayes.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ComplementNaiveBayes.gif
new file mode 100644
index 00000000..1b5cdc6c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ComplementNaiveBayes.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ConjunctiveRule.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ConjunctiveRule.gif
new file mode 100644
index 00000000..c41b6a3c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ConjunctiveRule.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CostSensitiveClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CostSensitiveClassifier.gif
new file mode 100644
index 00000000..0013d282
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CostSensitiveClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CrossValidationFoldMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CrossValidationFoldMaker.gif
new file mode 100644
index 00000000..4864b450
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/CrossValidationFoldMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DBScan.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DBScan.gif
new file mode 100644
index 00000000..3e25285d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DBScan.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Dagging.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Dagging.gif
new file mode 100644
index 00000000..c8f8c09f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Dagging.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DataNearBalancedND.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DataNearBalancedND.gif
new file mode 100644
index 00000000..fabaf9d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DataNearBalancedND.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DatabaseLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DatabaseLoader.gif
new file mode 100644
index 00000000..1cd49816
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DatabaseLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DatabaseSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DatabaseSaver.gif
new file mode 100644
index 00000000..79472f8c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DatabaseSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DecisionStump.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DecisionStump.gif
new file mode 100644
index 00000000..9dfd3e15
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DecisionStump.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DecisionTable.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DecisionTable.gif
new file mode 100644
index 00000000..a57f5db8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DecisionTable.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Decorate.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Decorate.gif
new file mode 100644
index 00000000..d46fbbb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Decorate.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultAssociator.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultAssociator.gif
new file mode 100644
index 00000000..e3bc46cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultAssociator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultClassifier.gif
new file mode 100644
index 00000000..27840e6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultClusterer.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultClusterer.gif
new file mode 100644
index 00000000..7324787c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultClusterer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataSink.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataSink.gif
new file mode 100644
index 00000000..2afa81d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataSink.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataSource.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataSource.gif
new file mode 100644
index 00000000..a0f3c970
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataSource.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataVisualizer.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataVisualizer.gif
new file mode 100644
index 00000000..f33fb36d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultDataVisualizer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultEvaluator.gif
new file mode 100644
index 00000000..3dc4ce7d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultFilter.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultFilter.gif
new file mode 100644
index 00000000..ac312496
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultFilter.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultGraph.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultGraph.gif
new file mode 100644
index 00000000..d69fd766
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultGraph.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultText.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultText.gif
new file mode 100644
index 00000000..b6a19f32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultText.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultTrainTest.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultTrainTest.gif
new file mode 100644
index 00000000..4a4e710a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DefaultTrainTest.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DiamondPlain.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DiamondPlain.gif
new file mode 100644
index 00000000..c30c0b03
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/DiamondPlain.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/EM.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/EM.gif
new file mode 100644
index 00000000..5ac72339
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/EM.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/END.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/END.gif
new file mode 100644
index 00000000..d5485678
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/END.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ExecuteProcess.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ExecuteProcess.gif
new file mode 100644
index 00000000..6fda25d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ExecuteProcess.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FarthestFirst.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FarthestFirst.gif
new file mode 100644
index 00000000..61ef6530
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FarthestFirst.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FilteredClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FilteredClassifier.gif
new file mode 100644
index 00000000..73a4ddd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FilteredClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FlowByExpression.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FlowByExpression.png
new file mode 100644
index 00000000..f7ecf14d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/FlowByExpression.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/GaussianProcesses.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/GaussianProcesses.gif
new file mode 100644
index 00000000..5707bd77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/GaussianProcesses.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/GetDataFromResult.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/GetDataFromResult.gif
new file mode 100644
index 00000000..3c838728
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/GetDataFromResult.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Grading.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Grading.gif
new file mode 100644
index 00000000..7cca6705
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Grading.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/HNB.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/HNB.gif
new file mode 100644
index 00000000..c86dc383
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/HNB.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Help24.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Help24.gif
new file mode 100644
index 00000000..a2848d88
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Help24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IB1.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IB1.gif
new file mode 100644
index 00000000..f5bdb177
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IB1.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IBk.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IBk.gif
new file mode 100644
index 00000000..0c9877ee
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IBk.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ID3.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ID3.gif
new file mode 100644
index 00000000..9f3f6a66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ID3.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IncrementalClassifierEvaluator.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IncrementalClassifierEvaluator.gif
new file mode 100644
index 00000000..71435198
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/IncrementalClassifierEvaluator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/InstanceStreamToBatchMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/InstanceStreamToBatchMaker.gif
new file mode 100644
index 00000000..fce4ffc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/InstanceStreamToBatchMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/J48.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/J48.gif
new file mode 100644
index 00000000..8f8f6324
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/J48.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/JRip.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/JRip.gif
new file mode 100644
index 00000000..d61875ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/JRip.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Job.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Job.gif
new file mode 100644
index 00000000..10531ba6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Job.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Join.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Join.gif
new file mode 100644
index 00000000..d91622e2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Join.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/KStar.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/KStar.gif
new file mode 100644
index 00000000..4f5c8831
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/KStar.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LBR.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LBR.gif
new file mode 100644
index 00000000..05cffce4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LBR.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LMT.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LMT.gif
new file mode 100644
index 00000000..e6af35a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LMT.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LWL.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LWL.gif
new file mode 100644
index 00000000..3c664d4a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LWL.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LeastMedSq.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LeastMedSq.gif
new file mode 100644
index 00000000..80b4cd85
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LeastMedSq.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LibSVM.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LibSVM.gif
new file mode 100644
index 00000000..4b412d3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LibSVM.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LinearRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LinearRegression.gif
new file mode 100644
index 00000000..7fc7877a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LinearRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Logistic.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Logistic.gif
new file mode 100644
index 00000000..6e2e60c0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Logistic.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LogitBoost.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LogitBoost.gif
new file mode 100644
index 00000000..c3300129
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/LogitBoost.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/M5P.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/M5P.gif
new file mode 100644
index 00000000..35073764
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/M5P.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/M5Rules.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/M5Rules.gif
new file mode 100644
index 00000000..8858568f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/M5Rules.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MakeDensityBasedClusterer.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MakeDensityBasedClusterer.gif
new file mode 100644
index 00000000..66751bc7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MakeDensityBasedClusterer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MetaCost.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MetaCost.gif
new file mode 100644
index 00000000..a5cd0c98
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MetaCost.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ModelPerformanceChart.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ModelPerformanceChart.gif
new file mode 100644
index 00000000..dc2d6664
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ModelPerformanceChart.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiBoostAB.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiBoostAB.gif
new file mode 100644
index 00000000..a54cb488
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiBoostAB.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiClassClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiClassClassifier.gif
new file mode 100644
index 00000000..2e08ae81
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiClassClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiScheme.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiScheme.gif
new file mode 100644
index 00000000..f08f8f91
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultiScheme.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultilayerPerceptron.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultilayerPerceptron.gif
new file mode 100644
index 00000000..606acf11
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/MultilayerPerceptron.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NBTree.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NBTree.gif
new file mode 100644
index 00000000..61e1db2f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NBTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NNge.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NNge.gif
new file mode 100644
index 00000000..f9779402
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NNge.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayes.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayes.gif
new file mode 100644
index 00000000..ed03d672
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayes.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesMultinomial.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesMultinomial.gif
new file mode 100644
index 00000000..8b70d1e3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesMultinomial.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesSimple.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesSimple.gif
new file mode 100644
index 00000000..0a8515bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesSimple.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesUpdateable.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesUpdateable.gif
new file mode 100644
index 00000000..061ff527
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/NaiveBayesUpdateable.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/New24.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/New24.gif
new file mode 100644
index 00000000..1cc488d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/New24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OPTICS.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OPTICS.gif
new file mode 100644
index 00000000..70967c27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OPTICS.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OneR.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OneR.gif
new file mode 100644
index 00000000..5330d1d7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OneR.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Open24.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Open24.gif
new file mode 100644
index 00000000..2086bc29
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Open24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OrdinalClassClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OrdinalClassClassifier.gif
new file mode 100644
index 00000000..a3617dce
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/OrdinalClassClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PART.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PART.gif
new file mode 100644
index 00000000..7c47fde4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PART.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PaceRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PaceRegression.gif
new file mode 100644
index 00000000..a27a8d23
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PaceRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Pointer.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Pointer.gif
new file mode 100644
index 00000000..87278b30
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Pointer.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PredictionAppender.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PredictionAppender.gif
new file mode 100644
index 00000000..5c1f32f2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/PredictionAppender.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Prism.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Prism.gif
new file mode 100644
index 00000000..98d435a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Prism.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RBFNetwork.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RBFNetwork.gif
new file mode 100644
index 00000000..a5e028b4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RBFNetwork.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/REPTree.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/REPTree.gif
new file mode 100644
index 00000000..2f2d6878
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/REPTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RacedIncrementalLogitBoost.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RacedIncrementalLogitBoost.gif
new file mode 100644
index 00000000..26a5ff67
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RacedIncrementalLogitBoost.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomCommittee.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomCommittee.gif
new file mode 100644
index 00000000..848503c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomCommittee.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomForest.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomForest.gif
new file mode 100644
index 00000000..b2809054
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomForest.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomTree.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomTree.gif
new file mode 100644
index 00000000..06879b94
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RandomTree.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RegressionByDiscretization.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RegressionByDiscretization.gif
new file mode 100644
index 00000000..378002ac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/RegressionByDiscretization.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SMO.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SMO.gif
new file mode 100644
index 00000000..1a867f66
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SMO.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SMOreg.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SMOreg.gif
new file mode 100644
index 00000000..f2dacdb6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SMOreg.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Save24.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Save24.gif
new file mode 100644
index 00000000..bfa98a8d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Save24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ScatterPlotMatrix.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ScatterPlotMatrix.gif
new file mode 100644
index 00000000..4f02119a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ScatterPlotMatrix.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedInstancesLoader.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedInstancesLoader.gif
new file mode 100644
index 00000000..97a57f8e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedInstancesLoader.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedInstancesSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedInstancesSaver.gif
new file mode 100644
index 00000000..81b855f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedInstancesSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedModelSaver.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedModelSaver.gif
new file mode 100644
index 00000000..81b855f0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SerializedModelSaver.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SetPropertiesFromEnvironment.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SetPropertiesFromEnvironment.gif
new file mode 100644
index 00000000..a0aa130f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SetPropertiesFromEnvironment.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SetVariables.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SetVariables.gif
new file mode 100644
index 00000000..d607cb72
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SetVariables.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleKMeans.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleKMeans.gif
new file mode 100644
index 00000000..331001be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleKMeans.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleLinearRegression.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleLinearRegression.gif
new file mode 100644
index 00000000..3e661105
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleLinearRegression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleLogistic.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleLogistic.gif
new file mode 100644
index 00000000..f6c45db4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/SimpleLogistic.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Sorter.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Sorter.gif
new file mode 100644
index 00000000..e5404236
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Sorter.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Stacking.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Stacking.gif
new file mode 100644
index 00000000..8ee4d74e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Stacking.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StackingC.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StackingC.gif
new file mode 100644
index 00000000..79d19bfe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StackingC.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Stop24.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Stop24.gif
new file mode 100644
index 00000000..62b7743d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Stop24.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StorePropertiesInEnvironment.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StorePropertiesInEnvironment.gif
new file mode 100644
index 00000000..e6efb752
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StorePropertiesInEnvironment.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StripChart.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StripChart.gif
new file mode 100644
index 00000000..5ed83a82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/StripChart.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TestSetMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TestSetMaker.gif
new file mode 100644
index 00000000..16c9261f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TestSetMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ThresholdSelector.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ThresholdSelector.gif
new file mode 100644
index 00000000..1d712c95
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ThresholdSelector.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TrainTestSplitMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TrainTestSplitMaker.gif
new file mode 100644
index 00000000..4a4e710a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TrainTestSplitMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TrainingSetMaker.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TrainingSetMaker.gif
new file mode 100644
index 00000000..fce4ffc1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/TrainingSetMaker.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/UserClassifier.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/UserClassifier.gif
new file mode 100644
index 00000000..514e3b71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/UserClassifier.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Vote.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Vote.gif
new file mode 100644
index 00000000..b4aac53c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Vote.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/VotedPerceptron.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/VotedPerceptron.gif
new file mode 100644
index 00000000..6c805307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/VotedPerceptron.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Winnow.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Winnow.gif
new file mode 100644
index 00000000..6de9f9be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/Winnow.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/WriteDataToResult.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/WriteDataToResult.gif
new file mode 100644
index 00000000..3c838728
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/WriteDataToResult.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/WriteWekaLog.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/WriteWekaLog.gif
new file mode 100644
index 00000000..3c838728
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/WriteWekaLog.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/XMeans.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/XMeans.gif
new file mode 100644
index 00000000..d1110fed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/XMeans.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ZeroR.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ZeroR.gif
new file mode 100644
index 00000000..ac605740
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/ZeroR.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/application_view_tile.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/application_view_tile.png
new file mode 100644
index 00000000..3bc0bd32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/application_view_tile.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/arrow_undo.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/arrow_undo.png
new file mode 100644
index 00000000..6972c5e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/arrow_undo.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/bricks.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/bricks.png
new file mode 100644
index 00000000..0905f933
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/bricks.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/chart_bar.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/chart_bar.png
new file mode 100644
index 00000000..9051fbc6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/chart_bar.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cog.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cog.png
new file mode 100644
index 00000000..67de2c6c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cog.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cog_go.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cog_go.png
new file mode 100644
index 00000000..3262767c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cog_go.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cursor.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cursor.png
new file mode 100644
index 00000000..532f532d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cursor.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cut.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cut.png
new file mode 100644
index 00000000..f215d6f6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/cut.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/database.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/database.png
new file mode 100644
index 00000000..3d09261a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/database.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/delete.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/delete.png
new file mode 100644
index 00000000..08f24936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/delete.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/disk.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/disk.png
new file mode 100644
index 00000000..99d532e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/disk.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/disk_multiple.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/disk_multiple.png
new file mode 100644
index 00000000..fc5a52f5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/disk_multiple.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.AttributeSelection.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.AttributeSelection.gif
new file mode 100644
index 00000000..45330da8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.AttributeSelection.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.ClassOrder.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.ClassOrder.gif
new file mode 100644
index 00000000..d6a05ada
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.ClassOrder.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.Discretize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.Discretize.gif
new file mode 100644
index 00000000..02a51cd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.Discretize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.NominalToBinary.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.NominalToBinary.gif
new file mode 100644
index 00000000..4502a87e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.attribute.NominalToBinary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.Resample.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.Resample.gif
new file mode 100644
index 00000000..c911010f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.Resample.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.SpreadSubsample.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.SpreadSubsample.gif
new file mode 100644
index 00000000..8a6f7d79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.SpreadSubsample.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.StratifiedRemoveFolds.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.StratifiedRemoveFolds.gif
new file mode 100644
index 00000000..ca450c60
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.supervised.instance.StratifiedRemoveFolds.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Add.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Add.gif
new file mode 100644
index 00000000..a65aa1bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Add.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddCluster.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddCluster.gif
new file mode 100644
index 00000000..80e0c44e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddCluster.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddExpression.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddExpression.gif
new file mode 100644
index 00000000..72676f79
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddExpression.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddNoise.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddNoise.gif
new file mode 100644
index 00000000..a2e73d6f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.AddNoise.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.ClusterMembership.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.ClusterMembership.gif
new file mode 100644
index 00000000..5b0a2661
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.ClusterMembership.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Copy.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Copy.gif
new file mode 100644
index 00000000..abaab0bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Copy.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Discretize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Discretize.gif
new file mode 100644
index 00000000..4b211ec9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Discretize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.FirstOrder.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.FirstOrder.gif
new file mode 100644
index 00000000..eae91800
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.FirstOrder.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.MakeIndicator.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.MakeIndicator.gif
new file mode 100644
index 00000000..aca5bd1f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.MakeIndicator.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.MergeTwoValues.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.MergeTwoValues.gif
new file mode 100644
index 00000000..ee133a59
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.MergeTwoValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NominalToBinary.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NominalToBinary.gif
new file mode 100644
index 00000000..467deb3d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NominalToBinary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Normalize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Normalize.gif
new file mode 100644
index 00000000..649577c6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Normalize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NumericToBinary.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NumericToBinary.gif
new file mode 100644
index 00000000..40cb097c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NumericToBinary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NumericTransform.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NumericTransform.gif
new file mode 100644
index 00000000..8c4ed035
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.NumericTransform.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Obfuscate.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Obfuscate.gif
new file mode 100644
index 00000000..3a3d51c7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Obfuscate.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.PKIDiscretize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.PKIDiscretize.gif
new file mode 100644
index 00000000..6da93254
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.PKIDiscretize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RandomProjection.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RandomProjection.gif
new file mode 100644
index 00000000..34998a1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RandomProjection.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Remove.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Remove.gif
new file mode 100644
index 00000000..534550d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Remove.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RemoveType.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RemoveType.gif
new file mode 100644
index 00000000..7b66beb5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RemoveType.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RemoveUseless.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RemoveUseless.gif
new file mode 100644
index 00000000..b49fc20a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.RemoveUseless.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.ReplaceMissingValues.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.ReplaceMissingValues.gif
new file mode 100644
index 00000000..99a6afde
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.ReplaceMissingValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Standardize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Standardize.gif
new file mode 100644
index 00000000..c71790f8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.Standardize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.StringToNominal.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.StringToNominal.gif
new file mode 100644
index 00000000..2ffa81a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.StringToNominal.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.StringToWordVector.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.StringToWordVector.gif
new file mode 100644
index 00000000..eeb11f22
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.StringToWordVector.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.SwapValues.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.SwapValues.gif
new file mode 100644
index 00000000..cde34f9a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.SwapValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.TimeSeriesDelta.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.TimeSeriesDelta.gif
new file mode 100644
index 00000000..e4e058d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.TimeSeriesDelta.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.TimeSeriesTranslate.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.TimeSeriesTranslate.gif
new file mode 100644
index 00000000..e4e058d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.attribute.TimeSeriesTranslate.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.NonSparseToSparse.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.NonSparseToSparse.gif
new file mode 100644
index 00000000..01e8e704
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.NonSparseToSparse.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Normalize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Normalize.gif
new file mode 100644
index 00000000..b92d7936
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Normalize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Randomize.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Randomize.gif
new file mode 100644
index 00000000..f6c6c580
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Randomize.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveFolds.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveFolds.gif
new file mode 100644
index 00000000..a7e14b4c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveFolds.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveMisclassified.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveMisclassified.gif
new file mode 100644
index 00000000..d046914d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveMisclassified.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemovePercentage.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemovePercentage.gif
new file mode 100644
index 00000000..dd97328a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemovePercentage.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveRange.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveRange.gif
new file mode 100644
index 00000000..e33d835e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveRange.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveWithValues.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveWithValues.gif
new file mode 100644
index 00000000..599b7717
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.RemoveWithValues.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Resample.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Resample.gif
new file mode 100644
index 00000000..f07fd6b8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.Resample.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.SparseToNonSparse.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.SparseToNonSparse.gif
new file mode 100644
index 00000000..156b56a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/filters.unsupervised.instance.SparseToNonSparse.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/folder_add.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/folder_add.png
new file mode 100644
index 00000000..529fe8fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/folder_add.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/help.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/help.png
new file mode 100644
index 00000000..5c870176
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/help.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/note_add.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/note_add.png
new file mode 100644
index 00000000..abdad91e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/note_add.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/page_add.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/page_add.png
new file mode 100644
index 00000000..d5bfa071
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/page_add.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/page_copy.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/page_copy.png
new file mode 100644
index 00000000..195dc6d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/page_copy.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/paste_plain.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/paste_plain.png
new file mode 100644
index 00000000..c0490eb7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/paste_plain.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/resultset_last.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/resultset_last.png
new file mode 100644
index 00000000..8ec89478
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/resultset_last.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/resultset_next.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/resultset_next.png
new file mode 100644
index 00000000..e252606d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/resultset_next.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_group.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_group.png
new file mode 100644
index 00000000..bb2ff516
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_group.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_handles.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_handles.png
new file mode 100644
index 00000000..ce27fe3a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_handles.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_square.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_square.png
new file mode 100644
index 00000000..33af0460
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/shape_square.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/splash.jpg b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/splash.jpg
new file mode 100644
index 00000000..7fd53930
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/splash.jpg differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.associations.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.associations.gif
new file mode 100644
index 00000000..e3bc46cd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.associations.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.bayes.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.bayes.gif
new file mode 100644
index 00000000..555548af
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.bayes.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.functions.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.functions.gif
new file mode 100644
index 00000000..9e121c77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.functions.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.gif
new file mode 100644
index 00000000..27840e6e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.lazy.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.lazy.gif
new file mode 100644
index 00000000..94085a3e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.lazy.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.meta.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.meta.gif
new file mode 100644
index 00000000..e17d0e70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.meta.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.meta.nestedDichotomies.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.meta.nestedDichotomies.gif
new file mode 100644
index 00000000..e17d0e70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.meta.nestedDichotomies.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.misc.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.misc.gif
new file mode 100644
index 00000000..0b6d1efa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.misc.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.rules.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.rules.gif
new file mode 100644
index 00000000..f53cac93
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.rules.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.trees.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.trees.gif
new file mode 100644
index 00000000..7bd36ed5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.classifiers.trees.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.clusterers.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.clusterers.gif
new file mode 100644
index 00000000..7324787c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.clusterers.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.filters.gif b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.filters.gif
new file mode 100644
index 00000000..ac312496
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/weka.filters.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/zoom_in.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/zoom_in.png
new file mode 100644
index 00000000..cdf0a52f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/zoom_in.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/zoom_out.png b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/zoom_out.png
new file mode 100644
index 00000000..07bf98a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/icons/zoom_out.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ASEvaluatorStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ASEvaluatorStepEditorDialog.class
new file mode 100644
index 00000000..e346a87b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ASEvaluatorStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$1.class
new file mode 100644
index 00000000..9ce75a60
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$2.class
new file mode 100644
index 00000000..76427017
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$3.class
new file mode 100644
index 00000000..61c9a1d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$4.class
new file mode 100644
index 00000000..1fc10727
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView.class
new file mode 100644
index 00000000..2e5a67f6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerStepEditorDialog.class
new file mode 100644
index 00000000..65ca93ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/AttributeSummarizerStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BlockStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BlockStepEditorDialog.class
new file mode 100644
index 00000000..bfa68c77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BlockStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$1.class
new file mode 100644
index 00000000..d1d0faca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$2.class
new file mode 100644
index 00000000..9d5544be
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$3.class
new file mode 100644
index 00000000..6493a56e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView.class
new file mode 100644
index 00000000..082cd530
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterStepEditorDialog.class
new file mode 100644
index 00000000..b12f7a76
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/BoundaryPlotterStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassAssignerStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassAssignerStepEditorDialog.class
new file mode 100644
index 00000000..3fd23147
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassAssignerStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassValuePickerStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassValuePickerStepEditorDialog.class
new file mode 100644
index 00000000..a4214d55
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassValuePickerStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$1.class
new file mode 100644
index 00000000..2489502b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$2.class
new file mode 100644
index 00000000..aeeaf13c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$3$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$3$1.class
new file mode 100644
index 00000000..c6cdb1e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$3$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$3.class
new file mode 100644
index 00000000..31d0048c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog.class
new file mode 100644
index 00000000..9a5e3424
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ClassifierPerformanceEvaluatorStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$1.class
new file mode 100644
index 00000000..3a027013
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$2.class
new file mode 100644
index 00000000..54e78ba2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$3.class
new file mode 100644
index 00000000..fed37998
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$4.class
new file mode 100644
index 00000000..61d2a58c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView.class
new file mode 100644
index 00000000..c56e8e41
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/CostBenefitAnalysisInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$1.class
new file mode 100644
index 00000000..7e1c4b3d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$2.class
new file mode 100644
index 00000000..6fc71050
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$3.class
new file mode 100644
index 00000000..6c9dd08d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$4.class
new file mode 100644
index 00000000..02148479
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$5.class
new file mode 100644
index 00000000..7010144d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$6.class
new file mode 100644
index 00000000..aeea8fae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$7.class
new file mode 100644
index 00000000..0310189f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$8.class
new file mode 100644
index 00000000..89cf7b41
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$9.class
new file mode 100644
index 00000000..f7022964
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel$1.class
new file mode 100644
index 00000000..2f3d94d5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel$2.class
new file mode 100644
index 00000000..068081c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel.class
new file mode 100644
index 00000000..7353868c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$ArffViewerPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$AttDef.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$AttDef.class
new file mode 100644
index 00000000..46772e3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog$AttDef.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog.class
new file mode 100644
index 00000000..29a35b32
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataGridStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$1.class
new file mode 100644
index 00000000..24418c56
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$2.class
new file mode 100644
index 00000000..926ee974
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$3.class
new file mode 100644
index 00000000..09e1a087
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$4.class
new file mode 100644
index 00000000..88330b8f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView.class
new file mode 100644
index 00000000..72d8355e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerStepEditorDialog.class
new file mode 100644
index 00000000..bffa9688
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/DataVisualizerStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog$DynamicProcessPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog$DynamicProcessPanel.class
new file mode 100644
index 00000000..91cf19a6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog$DynamicProcessPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog$StaticProcessPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog$StaticProcessPanel.class
new file mode 100644
index 00000000..c70f68b4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog$StaticProcessPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog.class
new file mode 100644
index 00000000..097a40b7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ExecuteProcessStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$1.class
new file mode 100644
index 00000000..49a1070e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$10.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$10.class
new file mode 100644
index 00000000..3ebf9946
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$11.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$11.class
new file mode 100644
index 00000000..b0a25ffe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$12.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$12.class
new file mode 100644
index 00000000..1b56eec2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$12.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$2.class
new file mode 100644
index 00000000..1788b519
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$3.class
new file mode 100644
index 00000000..7ed2caea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$4.class
new file mode 100644
index 00000000..b10a7966
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$5.class
new file mode 100644
index 00000000..32ed0f4b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$6.class
new file mode 100644
index 00000000..2cfca169
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$7.class
new file mode 100644
index 00000000..4707a7a5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$8.class
new file mode 100644
index 00000000..953015d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$9.class
new file mode 100644
index 00000000..e910a254
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog.class
new file mode 100644
index 00000000..1ebe2b2c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/FlowByExpressionStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$1.class
new file mode 100644
index 00000000..0fe95ce9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$2.class
new file mode 100644
index 00000000..9d83b410
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$3.class
new file mode 100644
index 00000000..b96db76c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$4.class
new file mode 100644
index 00000000..cdb4013c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView.class
new file mode 100644
index 00000000..94944b48
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/GraphViewerInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$1.class
new file mode 100644
index 00000000..9fbdf9b2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$2.class
new file mode 100644
index 00000000..1853c361
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$3.class
new file mode 100644
index 00000000..4c146e9e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$4.class
new file mode 100644
index 00000000..fc94590f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$ImageDisplayer.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$ImageDisplayer.class
new file mode 100644
index 00000000..6cdb9b4c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$ImageDisplayer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel$1.class
new file mode 100644
index 00000000..14a94cfe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel$2.class
new file mode 100644
index 00000000..90473b0b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel.class
new file mode 100644
index 00000000..945a2bc4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView$MainPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView.class
new file mode 100644
index 00000000..4cd59b7e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ImageViewerInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JobStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JobStepEditorDialog$1.class
new file mode 100644
index 00000000..c98761c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JobStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JobStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JobStepEditorDialog.class
new file mode 100644
index 00000000..40ad61fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JobStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$1.class
new file mode 100644
index 00000000..75201de7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$10.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$10.class
new file mode 100644
index 00000000..5b0ab4ea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$2.class
new file mode 100644
index 00000000..7b8bb371
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$3.class
new file mode 100644
index 00000000..7cf8e6e4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$4.class
new file mode 100644
index 00000000..c20c3e77
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$5.class
new file mode 100644
index 00000000..ea5a3f80
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$6.class
new file mode 100644
index 00000000..51ec0aaf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$7.class
new file mode 100644
index 00000000..55b4de61
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$8.class
new file mode 100644
index 00000000..c5df1afd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$9.class
new file mode 100644
index 00000000..ab19e13f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog.class
new file mode 100644
index 00000000..b1b102bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/JoinStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/LoaderStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/LoaderStepEditorDialog.class
new file mode 100644
index 00000000..7c149c4e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/LoaderStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartInteractiveView$1.class
new file mode 100644
index 00000000..bbe214cb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartInteractiveView.class
new file mode 100644
index 00000000..68427344
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartStepEditorDialog$1.class
new file mode 100644
index 00000000..a1b8384b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartStepEditorDialog.class
new file mode 100644
index 00000000..7e1ae657
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ModelPerformanceChartStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/NoteEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/NoteEditorDialog.class
new file mode 100644
index 00000000..867614bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/NoteEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SaverStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SaverStepEditorDialog$1.class
new file mode 100644
index 00000000..1e46b0a2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SaverStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SaverStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SaverStepEditorDialog.class
new file mode 100644
index 00000000..80e55673
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SaverStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$1.class
new file mode 100644
index 00000000..deeebbc2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$2.class
new file mode 100644
index 00000000..15adc09a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$3.class
new file mode 100644
index 00000000..214afbd6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$4.class
new file mode 100644
index 00000000..8cd3947d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView.class
new file mode 100644
index 00000000..febc039c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/ScatterPlotMatrixInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SendToPerspectiveStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SendToPerspectiveStepEditorDialog.class
new file mode 100644
index 00000000..3a66e166
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SendToPerspectiveStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog$DynamicVariablesPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog$DynamicVariablesPanel.class
new file mode 100644
index 00000000..d9ff5531
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog$DynamicVariablesPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog$VariablesPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog$VariablesPanel.class
new file mode 100644
index 00000000..48d0eaf9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog$VariablesPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog.class
new file mode 100644
index 00000000..28d2b5f9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SetVariablesStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$1.class
new file mode 100644
index 00000000..c9340992
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$2.class
new file mode 100644
index 00000000..c13aaab2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$3.class
new file mode 100644
index 00000000..5bae9ebe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$4.class
new file mode 100644
index 00000000..9ef01ec8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$5.class
new file mode 100644
index 00000000..42374127
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$6.class
new file mode 100644
index 00000000..b9679021
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$7.class
new file mode 100644
index 00000000..bf71153c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$8.class
new file mode 100644
index 00000000..cbab9b63
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog.class
new file mode 100644
index 00000000..c22fa1fb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SorterStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StorePropertiesInEnvironmentStepEditorDialog$DynamicPropertiesPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StorePropertiesInEnvironmentStepEditorDialog$DynamicPropertiesPanel.class
new file mode 100644
index 00000000..e7b3e7fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StorePropertiesInEnvironmentStepEditorDialog$DynamicPropertiesPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StorePropertiesInEnvironmentStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StorePropertiesInEnvironmentStepEditorDialog.class
new file mode 100644
index 00000000..4a1db440
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StorePropertiesInEnvironmentStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$1.class
new file mode 100644
index 00000000..94621d10
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$LegendPanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$LegendPanel.class
new file mode 100644
index 00000000..9498dee5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$LegendPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$ScalePanel.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$ScalePanel.class
new file mode 100644
index 00000000..827128a4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$ScalePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$StripChartInteractiveViewDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$StripChartInteractiveViewDefaults.class
new file mode 100644
index 00000000..6fbc7e2c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$StripChartInteractiveViewDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$StripPlotter.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$StripPlotter.class
new file mode 100644
index 00000000..b2c4c02f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView$StripPlotter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView.class
new file mode 100644
index 00000000..0d558082
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/StripChartInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$1.class
new file mode 100644
index 00000000..c6141320
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$10.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$10.class
new file mode 100644
index 00000000..65769d84
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$2.class
new file mode 100644
index 00000000..f6a79f3a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$3.class
new file mode 100644
index 00000000..f718729e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$4.class
new file mode 100644
index 00000000..4193e05c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$5.class
new file mode 100644
index 00000000..ddd8dba8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$6.class
new file mode 100644
index 00000000..49757eca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$7.class
new file mode 100644
index 00000000..d9ecd8d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$8.class
new file mode 100644
index 00000000..46d690e2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$9.class
new file mode 100644
index 00000000..8da28543
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog.class
new file mode 100644
index 00000000..f19de2d2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringLabelerStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$1.class
new file mode 100644
index 00000000..bdcdf816
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$10.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$10.class
new file mode 100644
index 00000000..99fe7602
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$2.class
new file mode 100644
index 00000000..d5c3d6f7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$3.class
new file mode 100644
index 00000000..192b74b4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$4.class
new file mode 100644
index 00000000..11708a3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$5.class
new file mode 100644
index 00000000..b6cb99b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$6.class
new file mode 100644
index 00000000..d75eb118
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$7.class
new file mode 100644
index 00000000..223be868
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$8.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$8.class
new file mode 100644
index 00000000..f0d8d00a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$9.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$9.class
new file mode 100644
index 00000000..6d4c0e69
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog.class
new file mode 100644
index 00000000..42ba5ca2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/SubstringReplacerStepEditorDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$1.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$1.class
new file mode 100644
index 00000000..1b261dcb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$2.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$2.class
new file mode 100644
index 00000000..52dfddaf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$3.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$3.class
new file mode 100644
index 00000000..8cab8d2a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$4.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$4.class
new file mode 100644
index 00000000..82a947d9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$5.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$5.class
new file mode 100644
index 00000000..e2ecc5ca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$6.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$6.class
new file mode 100644
index 00000000..10be6dc5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$7.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$7.class
new file mode 100644
index 00000000..9817c59b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$TextViewerInteractiveViewDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$TextViewerInteractiveViewDefaults.class
new file mode 100644
index 00000000..b0941fbf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView$TextViewerInteractiveViewDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView.class b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView.class
new file mode 100644
index 00000000..d18d9de5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/steps/TextViewerInteractiveView.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/ROCcurves.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/ROCcurves.kf
new file mode 100644
index 00000000..e673e5ab
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/ROCcurves.kf
@@ -0,0 +1,227 @@
+{
+ "flow_name" : "ROC curves for two classifiers",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/beans/templates/credit-g.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "43,335"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassValuePicker"
+ ]
+ },
+ "coordinates" : "43,206"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.CrossValidationFoldMaker",
+ "properties" : {
+ "name" : "CrossValidationFoldMaker",
+ "numFolds" : "10",
+ "preserveOrder" : false,
+ "seed" : "1"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "Logistic",
+ "RandomForest"
+ ],
+ "testSet" : [
+ "Logistic",
+ "RandomForest"
+ ]
+ },
+ "coordinates" : "363,46"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassifierPerformanceEvaluator",
+ "properties" : {
+ "errorPlotPointSizeProportionalToMargin" : false,
+ "evaluationMetricsToOutput" : "Correct,Incorrect,Kappa,Total cost,Average cost,KB relative,KB information,Correlation,Complexity 0,Complexity scheme,Complexity improvement,MAE,RMSE,RAE,RRSE,Coverage,Region size,TP rate,FP rate,Precision,Recall,F-measure,MCC,ROC area,PRC area",
+ "name" : "ClassifierPerformanceEvaluator"
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ],
+ "thresholdData" : [
+ "ModelPerformanceChart"
+ ]
+ },
+ "coordinates" : "683,206"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "483,206"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ModelPerformanceChart",
+ "properties" : {
+ "name" : "ModelPerformanceChart",
+ "offscreenAdditionalOpts" : "",
+ "offscreenHeight" : "400",
+ "offscreenRendererName" : "Weka Chart Renderer",
+ "offscreenWidth" : "500",
+ "offscreenXAxis" : "",
+ "offscreenYAxis" : ""
+ },
+ "connections" : {
+ },
+ "coordinates" : "683,375"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click to configure me\nwith your own ARFF file"
+ },
+ "connections" : {
+ },
+ "coordinates" : "22,419"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "Double click to\nspecify the class\nattribute"
+ },
+ "connections" : {
+ },
+ "coordinates" : "123,219"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "Performance results\nreported here. Right-click\nand choose \"show results\""
+ },
+ "connections" : {
+ },
+ "coordinates" : "461,149"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note4",
+ "noteText" : "Right-click and select \n\"show chart\" to see\nROC curves for both\nclassifiers"
+ },
+ "connections" : {
+ },
+ "coordinates" : "564,304"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.functions.Logistic",
+ "options" : "-R 1.0E-8 -M -1"
+ },
+ "loadClassifierFileName" : "",
+ "name" : "Logistic",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "batchClassifier" : [
+ "ClassifierPerformanceEvaluator2"
+ ]
+ },
+ "coordinates" : "363,246"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassifierPerformanceEvaluator",
+ "properties" : {
+ "errorPlotPointSizeProportionalToMargin" : false,
+ "evaluationMetricsToOutput" : "Correct,Incorrect,Kappa,Total cost,Average cost,KB relative,KB information,Correlation,Complexity 0,Complexity scheme,Complexity improvement,MAE,RMSE,RAE,RRSE,Coverage,Region size,TP rate,FP rate,Precision,Recall,F-measure,MCC,ROC area,PRC area",
+ "name" : "ClassifierPerformanceEvaluator2"
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ],
+ "thresholdData" : [
+ "ModelPerformanceChart"
+ ]
+ },
+ "coordinates" : "483,375"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassValuePicker",
+ "properties" : {
+ "classValue" : "good",
+ "name" : "ClassValuePicker"
+ },
+ "connections" : {
+ "dataSet" : [
+ "CrossValidationFoldMaker"
+ ]
+ },
+ "coordinates" : "43,46"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note5",
+ "noteText" : "Double click to\nchoose the class\nvalue to be considered\nas the \"positive\" class"
+ },
+ "connections" : {
+ },
+ "coordinates" : "115,98"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.trees.RandomForest",
+ "options" : "-I 100 -S 1 -num-slots 1 -K 0"
+ },
+ "loadClassifierFileName" : "",
+ "name" : "RandomForest",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "batchClassifier" : [
+ "ClassifierPerformanceEvaluator"
+ ]
+ },
+ "coordinates" : "683,46"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader."
+ },
+ "connections" : {
+ },
+ "coordinates" : "10,5"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/credit-g.arff b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/credit-g.arff
new file mode 100644
index 00000000..a0e349a4
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/credit-g.arff
@@ -0,0 +1,1301 @@
+% Description of the German credit dataset.
+%
+% 1. Title: German Credit data
+%
+% 2. Source Information
+%
+% Professor Dr. Hans Hofmann
+% Institut f"ur Statistik und "Okonometrie
+% Universit"at Hamburg
+% FB Wirtschaftswissenschaften
+% Von-Melle-Park 5
+% 2000 Hamburg 13
+%
+% 3. Number of Instances: 1000
+%
+% Two datasets are provided. the original dataset, in the form provided
+% by Prof. Hofmann, contains categorical/symbolic attributes and
+% is in the file "german.data".
+%
+% For algorithms that need numerical attributes, Strathclyde University
+% produced the file "german.data-numeric". This file has been edited
+% and several indicator variables added to make it suitable for
+% algorithms which cannot cope with categorical variables. Several
+% attributes that are ordered categorical (such as attribute 17) have
+% been coded as integer. This was the form used by StatLog.
+%
+%
+% 6. Number of Attributes german: 20 (7 numerical, 13 categorical)
+% Number of Attributes german.numer: 24 (24 numerical)
+%
+%
+% 7. Attribute description for german
+%
+% Attribute 1: (qualitative)
+% Status of existing checking account
+% A11 : ... < 0 DM
+% A12 : 0 <= ... < 200 DM
+% A13 : ... >= 200 DM /
+% salary assignments for at least 1 year
+% A14 : no checking account
+%
+% Attribute 2: (numerical)
+% Duration in month
+%
+% Attribute 3: (qualitative)
+% Credit history
+% A30 : no credits taken/
+% all credits paid back duly
+% A31 : all credits at this bank paid back duly
+% A32 : existing credits paid back duly till now
+% A33 : delay in paying off in the past
+% A34 : critical account/
+% other credits existing (not at this bank)
+%
+% Attribute 4: (qualitative)
+% Purpose
+% A40 : car (new)
+% A41 : car (used)
+% A42 : furniture/equipment
+% A43 : radio/television
+% A44 : domestic appliances
+% A45 : repairs
+% A46 : education
+% A47 : (vacation - does not exist?)
+% A48 : retraining
+% A49 : business
+% A410 : others
+%
+% Attribute 5: (numerical)
+% Credit amount
+%
+% Attibute 6: (qualitative)
+% Savings account/bonds
+% A61 : ... < 100 DM
+% A62 : 100 <= ... < 500 DM
+% A63 : 500 <= ... < 1000 DM
+% A64 : .. >= 1000 DM
+% A65 : unknown/ no savings account
+%
+% Attribute 7: (qualitative)
+% Present employment since
+% A71 : unemployed
+% A72 : ... < 1 year
+% A73 : 1 <= ... < 4 years
+% A74 : 4 <= ... < 7 years
+% A75 : .. >= 7 years
+%
+% Attribute 8: (numerical)
+% Installment rate in percentage of disposable income
+%
+% Attribute 9: (qualitative)
+% Personal status and sex
+% A91 : male : divorced/separated
+% A92 : female : divorced/separated/married
+% A93 : male : single
+% A94 : male : married/widowed
+% A95 : female : single
+%
+% Attribute 10: (qualitative)
+% Other debtors / guarantors
+% A101 : none
+% A102 : co-applicant
+% A103 : guarantor
+%
+% Attribute 11: (numerical)
+% Present residence since
+%
+% Attribute 12: (qualitative)
+% Property
+% A121 : real estate
+% A122 : if not A121 : building society savings agreement/
+% life insurance
+% A123 : if not A121/A122 : car or other, not in attribute 6
+% A124 : unknown / no property
+%
+% Attribute 13: (numerical)
+% Age in years
+%
+% Attribute 14: (qualitative)
+% Other installment plans
+% A141 : bank
+% A142 : stores
+% A143 : none
+%
+% Attribute 15: (qualitative)
+% Housing
+% A151 : rent
+% A152 : own
+% A153 : for free
+%
+% Attribute 16: (numerical)
+% Number of existing credits at this bank
+%
+% Attribute 17: (qualitative)
+% Job
+% A171 : unemployed/ unskilled - non-resident
+% A172 : unskilled - resident
+% A173 : skilled employee / official
+% A174 : management/ self-employed/
+% highly qualified employee/ officer
+%
+% Attribute 18: (numerical)
+% Number of people being liable to provide maintenance for
+%
+% Attribute 19: (qualitative)
+% Telephone
+% A191 : none
+% A192 : yes, registered under the customers name
+%
+% Attribute 20: (qualitative)
+% foreign worker
+% A201 : yes
+% A202 : no
+%
+%
+%
+% 8. Cost Matrix
+%
+% This dataset requires use of a cost matrix (see below)
+%
+%
+% 1 2
+% ----------------------------
+% 1 0 1
+% -----------------------
+% 2 5 0
+%
+% (1 = Good, 2 = Bad)
+%
+% the rows represent the actual classification and the columns
+% the predicted classification.
+%
+% It is worse to class a customer as good when they are bad (5),
+% than it is to class a customer as bad when they are good (1).
+%
+%
+%
+%
+%
+% Relabeled values in attribute checking_status
+% From: A11 To: '<0'
+% From: A12 To: '0<=X<200'
+% From: A13 To: '>=200'
+% From: A14 To: 'no checking'
+%
+%
+% Relabeled values in attribute credit_history
+% From: A30 To: 'no credits/all paid'
+% From: A31 To: 'all paid'
+% From: A32 To: 'existing paid'
+% From: A33 To: 'delayed previously'
+% From: A34 To: 'critical/other existing credit'
+%
+%
+% Relabeled values in attribute purpose
+% From: A40 To: 'new car'
+% From: A41 To: 'used car'
+% From: A42 To: furniture/equipment
+% From: A43 To: radio/tv
+% From: A44 To: 'domestic appliance'
+% From: A45 To: repairs
+% From: A46 To: education
+% From: A47 To: vacation
+% From: A48 To: retraining
+% From: A49 To: business
+% From: A410 To: other
+%
+%
+% Relabeled values in attribute savings_status
+% From: A61 To: '<100'
+% From: A62 To: '100<=X<500'
+% From: A63 To: '500<=X<1000'
+% From: A64 To: '>=1000'
+% From: A65 To: 'no known savings'
+%
+%
+% Relabeled values in attribute employment
+% From: A71 To: unemployed
+% From: A72 To: '<1'
+% From: A73 To: '1<=X<4'
+% From: A74 To: '4<=X<7'
+% From: A75 To: '>=7'
+%
+%
+% Relabeled values in attribute personal_status
+% From: A91 To: 'male div/sep'
+% From: A92 To: 'female div/dep/mar'
+% From: A93 To: 'male single'
+% From: A94 To: 'male mar/wid'
+% From: A95 To: 'female single'
+%
+%
+% Relabeled values in attribute other_parties
+% From: A101 To: none
+% From: A102 To: 'co applicant'
+% From: A103 To: guarantor
+%
+%
+% Relabeled values in attribute property_magnitude
+% From: A121 To: 'real estate'
+% From: A122 To: 'life insurance'
+% From: A123 To: car
+% From: A124 To: 'no known property'
+%
+%
+% Relabeled values in attribute other_payment_plans
+% From: A141 To: bank
+% From: A142 To: stores
+% From: A143 To: none
+%
+%
+% Relabeled values in attribute housing
+% From: A151 To: rent
+% From: A152 To: own
+% From: A153 To: 'for free'
+%
+%
+% Relabeled values in attribute job
+% From: A171 To: 'unemp/unskilled non res'
+% From: A172 To: 'unskilled resident'
+% From: A173 To: skilled
+% From: A174 To: 'high qualif/self emp/mgmt'
+%
+%
+% Relabeled values in attribute own_telephone
+% From: A191 To: none
+% From: A192 To: yes
+%
+%
+% Relabeled values in attribute foreign_worker
+% From: A201 To: yes
+% From: A202 To: no
+%
+%
+% Relabeled values in attribute class
+% From: 1 To: good
+% From: 2 To: bad
+%
+@relation german_credit
+@attribute checking_status { '<0', '0<=X<200', '>=200', 'no checking'}
+@attribute duration real
+@attribute credit_history { 'no credits/all paid', 'all paid', 'existing paid', 'delayed previously', 'critical/other existing credit'}
+@attribute purpose { 'new car', 'used car', furniture/equipment, radio/tv, 'domestic appliance', repairs, education, vacation, retraining, business, other}
+@attribute credit_amount real
+@attribute savings_status { '<100', '100<=X<500', '500<=X<1000', '>=1000', 'no known savings'}
+@attribute employment { unemployed, '<1', '1<=X<4', '4<=X<7', '>=7'}
+@attribute installment_commitment real
+@attribute personal_status { 'male div/sep', 'female div/dep/mar', 'male single', 'male mar/wid', 'female single'}
+@attribute other_parties { none, 'co applicant', guarantor}
+@attribute residence_since real
+@attribute property_magnitude { 'real estate', 'life insurance', car, 'no known property'}
+@attribute age real
+@attribute other_payment_plans { bank, stores, none}
+@attribute housing { rent, own, 'for free'}
+@attribute existing_credits real
+@attribute job { 'unemp/unskilled non res', 'unskilled resident', skilled, 'high qualif/self emp/mgmt'}
+@attribute num_dependents real
+@attribute own_telephone { none, yes}
+@attribute foreign_worker { yes, no}
+@attribute class { good, bad}
+@data
+'<0',6,'critical/other existing credit',radio/tv,1169,'no known savings','>=7',4,'male single',none,4,'real estate',67,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',48,'existing paid',radio/tv,5951,'<100','1<=X<4',2,'female div/dep/mar',none,2,'real estate',22,none,own,1,skilled,1,none,yes,bad
+'no checking',12,'critical/other existing credit',education,2096,'<100','4<=X<7',2,'male single',none,3,'real estate',49,none,own,1,'unskilled resident',2,none,yes,good
+'<0',42,'existing paid',furniture/equipment,7882,'<100','4<=X<7',2,'male single',guarantor,4,'life insurance',45,none,'for free',1,skilled,2,none,yes,good
+'<0',24,'delayed previously','new car',4870,'<100','1<=X<4',3,'male single',none,4,'no known property',53,none,'for free',2,skilled,2,none,yes,bad
+'no checking',36,'existing paid',education,9055,'no known savings','1<=X<4',2,'male single',none,4,'no known property',35,none,'for free',1,'unskilled resident',2,yes,yes,good
+'no checking',24,'existing paid',furniture/equipment,2835,'500<=X<1000','>=7',3,'male single',none,4,'life insurance',53,none,own,1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid','used car',6948,'<100','1<=X<4',2,'male single',none,2,car,35,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,3059,'>=1000','4<=X<7',2,'male div/sep',none,4,'real estate',61,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'critical/other existing credit','new car',5234,'<100',unemployed,4,'male mar/wid',none,2,car,28,none,own,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'0<=X<200',12,'existing paid','new car',1295,'<100','<1',3,'female div/dep/mar',none,1,car,25,none,rent,1,skilled,1,none,yes,bad
+'<0',48,'existing paid',business,4308,'<100','<1',3,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',12,'existing paid',radio/tv,1567,'<100','1<=X<4',1,'female div/dep/mar',none,1,car,22,none,own,1,skilled,1,yes,yes,good
+'<0',24,'critical/other existing credit','new car',1199,'<100','>=7',4,'male single',none,4,car,60,none,own,2,'unskilled resident',1,none,yes,bad
+'<0',15,'existing paid','new car',1403,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,rent,1,skilled,1,none,yes,good
+'<0',24,'existing paid',radio/tv,1282,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,2,car,32,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,2424,'no known savings','>=7',4,'male single',none,4,'life insurance',53,none,own,2,skilled,1,none,yes,good
+'<0',30,'no credits/all paid',business,8072,'no known savings','<1',2,'male single',none,3,car,25,bank,own,3,skilled,1,none,yes,good
+'0<=X<200',24,'existing paid','used car',12579,'<100','>=7',4,'female div/dep/mar',none,2,'no known property',44,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'existing paid',radio/tv,3430,'500<=X<1000','>=7',3,'male single',none,2,car,31,none,own,1,skilled,2,yes,yes,good
+'no checking',9,'critical/other existing credit','new car',2134,'<100','1<=X<4',4,'male single',none,4,car,48,none,own,3,skilled,1,yes,yes,good
+'<0',6,'existing paid',radio/tv,2647,'500<=X<1000','1<=X<4',2,'male single',none,3,'real estate',44,none,rent,1,skilled,2,none,yes,good
+'<0',10,'critical/other existing credit','new car',2241,'<100','<1',1,'male single',none,3,'real estate',48,none,rent,2,'unskilled resident',2,none,no,good
+'0<=X<200',12,'critical/other existing credit','used car',1804,'100<=X<500','<1',3,'male single',none,4,'life insurance',44,none,own,1,skilled,1,none,yes,good
+'no checking',10,'critical/other existing credit',furniture/equipment,2069,'no known savings','1<=X<4',2,'male mar/wid',none,1,car,26,none,own,2,skilled,1,none,no,good
+'<0',6,'existing paid',furniture/equipment,1374,'<100','1<=X<4',1,'male single',none,2,'real estate',36,bank,own,1,'unskilled resident',1,yes,yes,good
+'no checking',6,'no credits/all paid',radio/tv,426,'<100','>=7',4,'male mar/wid',none,4,car,39,none,own,1,'unskilled resident',1,none,yes,good
+'>=200',12,'all paid',radio/tv,409,'>=1000','1<=X<4',3,'female div/dep/mar',none,3,'real estate',42,none,rent,2,skilled,1,none,yes,good
+'0<=X<200',7,'existing paid',radio/tv,2415,'<100','1<=X<4',3,'male single',guarantor,2,'real estate',34,none,own,1,skilled,1,none,yes,good
+'<0',60,'delayed previously',business,6836,'<100','>=7',3,'male single',none,4,'no known property',63,none,own,2,skilled,1,yes,yes,bad
+'0<=X<200',18,'existing paid',business,1913,'>=1000','<1',3,'male mar/wid',none,3,'real estate',36,bank,own,1,skilled,1,yes,yes,good
+'<0',24,'existing paid',furniture/equipment,4020,'<100','1<=X<4',2,'male single',none,2,car,27,stores,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid','new car',5866,'100<=X<500','1<=X<4',2,'male single',none,2,car,30,none,own,2,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',business,1264,'no known savings','>=7',4,'male single',none,4,'no known property',57,none,rent,1,'unskilled resident',1,none,yes,good
+'>=200',12,'existing paid',furniture/equipment,1474,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',33,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',45,'critical/other existing credit',radio/tv,4746,'<100','<1',4,'male single',none,2,'life insurance',25,none,own,2,'unskilled resident',1,none,yes,bad
+'no checking',48,'critical/other existing credit',education,6110,'<100','1<=X<4',1,'male single',none,3,'no known property',31,bank,'for free',1,skilled,1,yes,yes,good
+'>=200',18,'existing paid',radio/tv,2100,'<100','1<=X<4',4,'male single','co applicant',2,'real estate',37,stores,own,1,skilled,1,none,yes,bad
+'>=200',10,'existing paid','domestic appliance',1225,'<100','1<=X<4',2,'male single',none,2,car,37,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',9,'existing paid',radio/tv,458,'<100','1<=X<4',4,'male single',none,3,'real estate',24,none,own,1,skilled,1,none,yes,good
+'no checking',30,'existing paid',radio/tv,2333,'500<=X<1000','>=7',4,'male single',none,2,car,30,bank,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1158,'500<=X<1000','1<=X<4',3,'male div/sep',none,1,car,26,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'delayed previously',repairs,6204,'<100','1<=X<4',2,'male single',none,4,'real estate',44,none,own,1,'unskilled resident',2,yes,yes,good
+'<0',30,'critical/other existing credit','used car',6187,'100<=X<500','4<=X<7',1,'male mar/wid',none,4,car,24,none,rent,2,skilled,1,none,yes,good
+'<0',48,'critical/other existing credit','used car',6143,'<100','>=7',4,'female div/dep/mar',none,4,'no known property',58,stores,'for free',2,'unskilled resident',1,none,yes,bad
+'no checking',11,'critical/other existing credit','new car',1393,'<100','<1',4,'female div/dep/mar',none,4,car,35,none,own,2,'high qualif/self emp/mgmt',1,none,yes,good
+'no checking',36,'existing paid',radio/tv,2299,'500<=X<1000','>=7',4,'male single',none,4,car,39,none,own,1,skilled,1,none,yes,good
+'<0',6,'existing paid','used car',1352,'500<=X<1000',unemployed,1,'female div/dep/mar',none,2,'life insurance',23,none,rent,1,'unemp/unskilled non res',1,yes,yes,good
+'no checking',11,'critical/other existing credit','new car',7228,'<100','1<=X<4',1,'male single',none,4,'life insurance',39,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',12,'existing paid',radio/tv,2073,'100<=X<500','1<=X<4',4,'female div/dep/mar','co applicant',2,'real estate',28,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'delayed previously',furniture/equipment,2333,'no known savings','<1',4,'male single',none,2,'life insurance',29,bank,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',27,'delayed previously','used car',5965,'<100','>=7',1,'male single',none,2,car,30,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,1262,'<100','1<=X<4',3,'male single',none,2,car,25,none,own,1,skilled,1,none,yes,good
+'no checking',18,'existing paid','used car',3378,'no known savings','1<=X<4',2,'male single',none,1,'life insurance',31,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',36,'delayed previously','new car',2225,'<100','>=7',4,'male single',none,4,'no known property',57,bank,'for free',2,skilled,1,yes,yes,bad
+'no checking',6,'all paid','new car',783,'no known savings','1<=X<4',1,'male single',guarantor,2,'real estate',26,stores,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,6468,'no known savings',unemployed,2,'male single',none,1,'no known property',52,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',36,'critical/other existing credit',radio/tv,9566,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,31,stores,own,2,skilled,1,none,yes,good
+'>=200',18,'existing paid','new car',1961,'<100','>=7',3,'female div/dep/mar',none,2,car,23,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',36,'critical/other existing credit',furniture/equipment,6229,'<100','<1',4,'female div/dep/mar','co applicant',4,'no known property',23,none,rent,2,'unskilled resident',1,yes,yes,bad
+'0<=X<200',9,'existing paid',business,1391,'<100','1<=X<4',2,'male mar/wid',none,1,'real estate',27,bank,own,1,skilled,1,yes,yes,good
+'0<=X<200',15,'critical/other existing credit',radio/tv,1537,'no known savings','>=7',4,'male single',guarantor,4,'real estate',50,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',36,'no credits/all paid',business,1953,'<100','>=7',4,'male single',none,4,'no known property',61,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',48,'no credits/all paid',business,14421,'<100','1<=X<4',2,'male single',none,2,car,25,none,own,1,skilled,1,yes,yes,bad
+'no checking',24,'existing paid',radio/tv,3181,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',26,none,own,1,skilled,1,yes,yes,good
+'no checking',27,'existing paid',repairs,5190,'no known savings','>=7',4,'male single',none,4,'life insurance',48,none,own,4,skilled,2,yes,yes,good
+'no checking',12,'existing paid',radio/tv,2171,'<100','<1',2,'female div/dep/mar',none,2,car,29,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',1007,'>=1000','1<=X<4',4,'male mar/wid',none,1,'real estate',22,none,own,1,skilled,1,none,yes,good
+'no checking',36,'existing paid',education,1819,'<100','1<=X<4',4,'male single',none,4,'no known property',37,stores,'for free',1,skilled,1,yes,yes,bad
+'no checking',36,'existing paid',radio/tv,2394,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,car,25,none,own,1,skilled,1,none,yes,good
+'no checking',36,'existing paid','used car',8133,'<100','1<=X<4',1,'female div/dep/mar',none,2,'life insurance',30,bank,own,1,skilled,1,none,yes,good
+'no checking',7,'critical/other existing credit',radio/tv,730,'no known savings','>=7',4,'male single',none,2,'life insurance',46,none,rent,2,'unskilled resident',1,yes,yes,good
+'<0',8,'critical/other existing credit',other,1164,'<100','>=7',3,'male single',none,4,'no known property',51,bank,'for free',2,'high qualif/self emp/mgmt',2,yes,yes,good
+'0<=X<200',42,'critical/other existing credit',business,5954,'<100','4<=X<7',2,'female div/dep/mar',none,1,'real estate',41,bank,own,2,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid',education,1977,'no known savings','>=7',4,'male single',none,4,'no known property',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',12,'critical/other existing credit','used car',1526,'<100','>=7',4,'male single',none,4,'no known property',66,none,'for free',2,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',42,'existing paid',radio/tv,3965,'<100','<1',4,'male single',none,3,car,34,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',11,'delayed previously',radio/tv,4771,'<100','4<=X<7',2,'male single',none,4,'life insurance',51,none,own,1,skilled,1,none,yes,good
+'no checking',54,'no credits/all paid','used car',9436,'no known savings','1<=X<4',2,'male single',none,2,'life insurance',39,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',30,'existing paid',furniture/equipment,3832,'<100','<1',2,'male mar/wid',none,1,'life insurance',22,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,5943,'no known savings','<1',1,'female div/dep/mar',none,1,car,44,none,own,2,skilled,1,yes,yes,bad
+'no checking',15,'existing paid',radio/tv,1213,'500<=X<1000','>=7',4,'male single',none,3,'life insurance',47,stores,own,1,skilled,1,yes,yes,good
+'no checking',18,'existing paid',business,1568,'100<=X<500','1<=X<4',3,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,'unskilled resident',1,none,yes,good
+'<0',24,'existing paid',other,1755,'<100','>=7',4,'female div/dep/mar',guarantor,4,'real estate',58,none,own,1,'unskilled resident',1,yes,yes,good
+'<0',10,'existing paid',radio/tv,2315,'<100','>=7',3,'male single',none,4,'real estate',52,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',12,'critical/other existing credit',business,1412,'<100','1<=X<4',4,'female div/dep/mar',guarantor,2,'real estate',29,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,1295,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid',education,12612,'100<=X<500','1<=X<4',1,'male single',none,4,'no known property',47,none,'for free',1,skilled,2,yes,yes,bad
+'<0',18,'existing paid','new car',2249,'100<=X<500','4<=X<7',4,'male single',none,3,car,30,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',12,'no credits/all paid',repairs,1108,'<100','4<=X<7',4,'male single',none,3,'real estate',28,none,own,2,skilled,1,none,yes,bad
+'no checking',12,'critical/other existing credit',radio/tv,618,'<100','>=7',4,'male single',none,4,'real estate',56,none,own,1,skilled,1,none,yes,good
+'<0',12,'critical/other existing credit','used car',1409,'<100','>=7',4,'male single',none,3,'real estate',54,none,own,1,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,797,'no known savings','>=7',4,'female div/dep/mar',none,3,'life insurance',33,bank,own,1,'unskilled resident',2,none,yes,bad
+'>=200',24,'critical/other existing credit',furniture/equipment,3617,'no known savings','>=7',4,'male single','co applicant',4,'no known property',20,none,rent,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',1318,'>=1000','>=7',4,'male single',none,4,'real estate',54,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',54,'no credits/all paid',business,15945,'<100','<1',3,'male single',none,4,'no known property',58,none,rent,1,skilled,1,yes,yes,bad
+'no checking',12,'critical/other existing credit',education,2012,'no known savings','4<=X<7',4,'female div/dep/mar',none,2,car,61,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',business,2622,'100<=X<500','1<=X<4',4,'male single',none,4,car,34,none,own,1,skilled,1,none,yes,good
+'0<=X<200',36,'critical/other existing credit',radio/tv,2337,'<100','>=7',4,'male single',none,4,'real estate',36,none,own,1,skilled,1,none,yes,good
+'0<=X<200',20,'delayed previously','used car',7057,'no known savings','4<=X<7',3,'male single',none,4,'life insurance',36,bank,rent,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',24,'existing paid','new car',1469,'100<=X<500','>=7',4,'male mar/wid',none,4,'real estate',41,none,rent,1,'unskilled resident',1,none,yes,good
+'0<=X<200',36,'existing paid',radio/tv,2323,'<100','4<=X<7',4,'male single',none,4,car,24,none,rent,1,skilled,1,none,yes,good
+'no checking',6,'delayed previously',radio/tv,932,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',24,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'critical/other existing credit',furniture/equipment,1919,'<100','4<=X<7',4,'male single',none,3,car,35,none,rent,1,skilled,1,yes,yes,good
+'no checking',12,'existing paid','used car',2445,'no known savings','<1',2,'male mar/wid',none,4,car,26,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',24,'critical/other existing credit',other,11938,'<100','1<=X<4',2,'male single','co applicant',3,car,39,none,own,2,'high qualif/self emp/mgmt',2,yes,yes,bad
+'no checking',18,'all paid','new car',6458,'<100','>=7',2,'male single',none,4,'no known property',39,bank,own,2,'high qualif/self emp/mgmt',2,yes,yes,bad
+'0<=X<200',12,'existing paid','new car',6078,'<100','4<=X<7',2,'male single',none,2,car,32,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',furniture/equipment,7721,'no known savings','<1',1,'female div/dep/mar',none,2,'life insurance',30,none,own,1,skilled,1,yes,no,good
+'0<=X<200',14,'existing paid',business,1410,'500<=X<1000','>=7',1,'male mar/wid',none,2,'real estate',35,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'delayed previously',business,1449,'100<=X<500','>=7',1,'male div/sep',none,2,car,31,bank,own,2,skilled,2,none,yes,good
+'>=200',15,'existing paid',education,392,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',23,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',18,'existing paid','new car',6260,'<100','4<=X<7',3,'male single',none,3,'real estate',28,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',36,'critical/other existing credit','new car',7855,'<100','1<=X<4',4,'female div/dep/mar',none,2,'real estate',25,stores,own,2,skilled,1,yes,yes,bad
+'<0',12,'existing paid',radio/tv,1680,'500<=X<1000','>=7',3,'male mar/wid',none,1,'real estate',35,none,own,1,skilled,1,none,yes,good
+'no checking',48,'critical/other existing credit',radio/tv,3578,'no known savings','>=7',4,'male single',none,1,'real estate',47,none,own,1,skilled,1,yes,yes,good
+'<0',42,'existing paid',radio/tv,7174,'no known savings','4<=X<7',4,'female div/dep/mar',none,3,car,30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',10,'critical/other existing credit',furniture/equipment,2132,'no known savings','<1',2,'female div/dep/mar','co applicant',3,'real estate',27,none,rent,2,skilled,1,none,no,good
+'<0',33,'critical/other existing credit',furniture/equipment,4281,'500<=X<1000','1<=X<4',1,'female div/dep/mar',none,4,car,23,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',12,'critical/other existing credit','new car',2366,'500<=X<1000','4<=X<7',3,'male div/sep',none,3,car,36,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',21,'existing paid',radio/tv,1835,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',25,none,own,2,skilled,1,yes,yes,bad
+'no checking',24,'critical/other existing credit','used car',3868,'<100','>=7',4,'female div/dep/mar',none,2,car,41,none,rent,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1768,'<100','1<=X<4',3,'male single',none,2,'real estate',24,none,rent,1,'unskilled resident',1,none,yes,good
+'>=200',10,'critical/other existing credit','new car',781,'<100','>=7',4,'male single',none,4,'no known property',63,none,'for free',2,skilled,1,yes,yes,good
+'0<=X<200',18,'existing paid',furniture/equipment,1924,'no known savings','<1',4,'female div/dep/mar',none,3,'real estate',27,none,rent,1,skilled,1,none,yes,bad
+'<0',12,'critical/other existing credit','new car',2121,'<100','1<=X<4',4,'male single',none,2,'life insurance',30,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',radio/tv,701,'<100','1<=X<4',4,'male mar/wid',none,2,'real estate',40,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',12,'existing paid',repairs,639,'<100','1<=X<4',4,'male single',none,2,car,30,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',12,'critical/other existing credit','used car',1860,'<100',unemployed,4,'male single',none,2,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'critical/other existing credit','new car',3499,'<100','1<=X<4',3,'female div/dep/mar','co applicant',2,'real estate',29,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',48,'existing paid','new car',8487,'no known savings','4<=X<7',1,'female div/dep/mar',none,2,car,24,none,own,1,skilled,1,none,yes,good
+'<0',36,'delayed previously',education,6887,'<100','1<=X<4',4,'male single',none,3,'life insurance',29,stores,own,1,skilled,1,yes,yes,bad
+'no checking',15,'existing paid',furniture/equipment,2708,'<100','<1',2,'male single',none,3,'life insurance',27,bank,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',furniture/equipment,1984,'<100','1<=X<4',4,'male single',none,4,'no known property',47,bank,'for free',2,skilled,1,none,yes,good
+'no checking',60,'existing paid',radio/tv,10144,'100<=X<500','4<=X<7',2,'female div/dep/mar',none,4,'real estate',21,none,own,1,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,1240,'no known savings','>=7',4,'female div/dep/mar',none,2,'real estate',38,none,own,2,skilled,1,yes,yes,good
+'no checking',27,'delayed previously','used car',8613,'>=1000','1<=X<4',2,'male single',none,2,car,27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,766,'500<=X<1000','1<=X<4',4,'male single',none,3,'real estate',66,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',15,'critical/other existing credit',radio/tv,2728,'no known savings','4<=X<7',4,'male single',guarantor,2,'real estate',35,bank,own,3,skilled,1,yes,yes,good
+'>=200',12,'existing paid',radio/tv,1881,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,44,none,rent,1,'unskilled resident',1,yes,yes,good
+'>=200',6,'existing paid','new car',709,'>=1000','<1',2,'male mar/wid',none,2,'real estate',27,none,own,1,'unemp/unskilled non res',1,none,no,good
+'0<=X<200',36,'existing paid',radio/tv,4795,'<100','<1',4,'female div/dep/mar',none,1,'no known property',30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',27,'existing paid',radio/tv,3416,'<100','1<=X<4',3,'male single',none,2,car,27,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,2462,'<100','1<=X<4',2,'male single',none,2,car,22,none,own,1,skilled,1,none,yes,bad
+'no checking',21,'critical/other existing credit',furniture/equipment,2288,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',23,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',48,'all paid',business,3566,'100<=X<500','4<=X<7',4,'male single',none,2,car,30,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit','new car',860,'<100','>=7',1,'female div/dep/mar',none,4,'no known property',39,none,own,2,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit','new car',682,'100<=X<500','4<=X<7',4,'female div/dep/mar',none,3,car,51,none,own,2,skilled,1,yes,yes,good
+'<0',36,'critical/other existing credit',furniture/equipment,5371,'<100','1<=X<4',3,'male single',guarantor,2,'life insurance',28,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1582,'>=1000','>=7',4,'male single',none,4,car,46,none,own,2,skilled,1,none,yes,good
+'no checking',6,'existing paid',radio/tv,1346,'100<=X<500','>=7',2,'male single',none,4,'no known property',42,bank,'for free',1,skilled,2,yes,yes,good
+'no checking',10,'existing paid',radio/tv,1924,'<100','1<=X<4',1,'male single',none,4,'life insurance',38,none,own,1,skilled,1,yes,no,good
+'>=200',36,'existing paid',radio/tv,5848,'<100','1<=X<4',4,'male single',none,1,car,24,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit','used car',7758,'>=1000','>=7',2,'female div/dep/mar',none,4,'no known property',29,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',24,'delayed previously',business,6967,'100<=X<500','4<=X<7',4,'male single',none,4,car,36,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid',furniture/equipment,1282,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,20,none,rent,1,skilled,1,none,yes,bad
+'<0',9,'critical/other existing credit',repairs,1288,'100<=X<500','>=7',3,'male single',guarantor,4,'real estate',48,none,own,2,skilled,2,none,no,good
+'<0',12,'all paid',retraining,339,'<100','>=7',4,'male mar/wid',none,1,car,45,bank,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid','new car',3512,'100<=X<500','4<=X<7',2,'male single',none,3,car,38,bank,own,2,skilled,1,yes,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,1898,'no known savings','1<=X<4',1,'male single',none,2,'real estate',34,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2872,'100<=X<500','>=7',3,'male single',none,4,'real estate',36,none,own,1,skilled,2,yes,yes,good
+'no checking',18,'critical/other existing credit','new car',1055,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',30,none,own,2,skilled,1,none,yes,good
+'no checking',15,'existing paid','domestic appliance',1262,'500<=X<1000','4<=X<7',4,'male single',none,3,'life insurance',36,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',10,'existing paid','new car',7308,'<100',unemployed,2,'male single',none,4,'no known property',70,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',36,'existing paid','new car',909,'500<=X<1000','>=7',4,'male single',none,4,'life insurance',36,none,own,1,skilled,1,none,yes,good
+'no checking',6,'existing paid',furniture/equipment,2978,'500<=X<1000','1<=X<4',1,'male single',none,2,car,32,none,own,1,skilled,1,yes,yes,good
+'<0',18,'existing paid',furniture/equipment,1131,'<100',unemployed,4,'female div/dep/mar',none,2,car,33,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',11,'existing paid',furniture/equipment,1577,'>=1000','<1',4,'female div/dep/mar',none,1,'real estate',20,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',furniture/equipment,3972,'<100','4<=X<7',2,'female div/dep/mar',none,4,'life insurance',25,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',24,'critical/other existing credit',business,1935,'<100','>=7',4,'male div/sep',none,4,'real estate',31,none,own,2,skilled,1,yes,yes,bad
+'<0',15,'no credits/all paid','new car',950,'<100','>=7',4,'male single',none,3,car,33,none,rent,2,skilled,2,none,yes,bad
+'no checking',12,'existing paid',furniture/equipment,763,'<100','1<=X<4',4,'female div/dep/mar',none,1,'real estate',26,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',24,'delayed previously',furniture/equipment,2064,'<100',unemployed,3,'female div/dep/mar',none,2,'life insurance',34,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',8,'existing paid',radio/tv,1414,'<100','1<=X<4',4,'male single',guarantor,2,'real estate',33,none,own,1,skilled,1,none,no,good
+'<0',21,'delayed previously',education,3414,'<100','<1',2,'male single',none,1,'life insurance',26,none,own,2,skilled,1,none,yes,bad
+'no checking',30,'all paid','used car',7485,'no known savings',unemployed,4,'female div/dep/mar',none,1,'real estate',53,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',12,'existing paid',furniture/equipment,2577,'<100','1<=X<4',2,'male div/sep',none,1,car,42,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit',radio/tv,338,'500<=X<1000','>=7',4,'male single',none,4,car,52,none,own,2,skilled,1,none,yes,good
+'no checking',12,'existing paid',radio/tv,1963,'<100','4<=X<7',4,'male single',none,2,car,31,none,rent,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',21,'critical/other existing credit','new car',571,'<100','>=7',4,'male single',none,4,'real estate',65,none,own,2,skilled,1,none,yes,good
+'no checking',36,'delayed previously',business,9572,'<100','<1',1,'male div/sep',none,1,car,28,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',36,'delayed previously',business,4455,'<100','1<=X<4',2,'male div/sep',none,2,'real estate',30,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',21,'all paid','new car',1647,'no known savings','1<=X<4',4,'male single',none,2,'life insurance',40,none,own,2,'unskilled resident',2,none,yes,bad
+'no checking',24,'critical/other existing credit',furniture/equipment,3777,'>=1000','1<=X<4',4,'male single',none,4,'real estate',50,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit','new car',884,'<100','>=7',4,'male single',none,4,car,36,bank,own,1,skilled,2,yes,yes,bad
+'no checking',15,'critical/other existing credit',radio/tv,1360,'<100','1<=X<4',4,'male single',none,2,'life insurance',31,none,own,2,skilled,1,none,yes,good
+'0<=X<200',9,'all paid','used car',5129,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',74,bank,'for free',1,'high qualif/self emp/mgmt',2,yes,yes,bad
+'0<=X<200',16,'critical/other existing credit','new car',1175,'<100',unemployed,2,'male single',none,3,car,68,none,'for free',3,'unemp/unskilled non res',1,yes,yes,good
+'<0',12,'existing paid',radio/tv,674,'100<=X<500','4<=X<7',4,'male mar/wid',none,1,'life insurance',20,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',18,'no credits/all paid',furniture/equipment,3244,'<100','1<=X<4',1,'female div/dep/mar',none,4,car,33,bank,own,2,skilled,1,yes,yes,good
+'no checking',24,'existing paid',business,4591,'>=1000','1<=X<4',2,'male single',none,3,'life insurance',54,none,own,3,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',48,'no credits/all paid',business,3844,'100<=X<500','4<=X<7',4,'male single',none,4,'no known property',34,none,'for free',1,'unskilled resident',2,none,yes,bad
+'0<=X<200',27,'existing paid',business,3915,'<100','1<=X<4',4,'male single',none,2,car,36,none,own,1,skilled,2,yes,yes,bad
+'no checking',6,'existing paid',radio/tv,2108,'<100','4<=X<7',2,'male mar/wid',none,2,'real estate',29,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',45,'existing paid',radio/tv,3031,'100<=X<500','1<=X<4',4,'male single',guarantor,4,'life insurance',21,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',9,'critical/other existing credit',education,1501,'<100','>=7',2,'female div/dep/mar',none,3,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',6,'critical/other existing credit',radio/tv,1382,'<100','1<=X<4',1,'female div/dep/mar',none,1,car,28,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,951,'100<=X<500','<1',4,'female div/dep/mar',none,4,car,27,bank,rent,4,skilled,1,none,yes,bad
+'0<=X<200',24,'existing paid','used car',2760,'no known savings','>=7',4,'male single',none,4,'no known property',36,bank,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',18,'delayed previously',furniture/equipment,4297,'<100','>=7',4,'male div/sep',none,3,'no known property',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',9,'critical/other existing credit',education,936,'500<=X<1000','>=7',4,'male single',none,2,car,52,none,own,2,skilled,1,yes,yes,good
+'<0',12,'existing paid','new car',1168,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',27,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',27,'delayed previously',business,5117,'<100','4<=X<7',3,'male single',none,4,car,26,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',retraining,902,'<100','4<=X<7',4,'male mar/wid',none,4,'life insurance',21,none,rent,1,skilled,1,none,yes,bad
+'no checking',12,'critical/other existing credit','new car',1495,'<100','>=7',4,'male single',none,1,'real estate',38,none,own,2,'unskilled resident',2,none,yes,good
+'<0',30,'critical/other existing credit','used car',10623,'<100','>=7',3,'male single',none,4,'no known property',38,none,'for free',3,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',12,'critical/other existing credit',furniture/equipment,1935,'<100','>=7',4,'male single',none,4,'real estate',43,none,own,3,skilled,1,yes,yes,good
+'0<=X<200',12,'critical/other existing credit','domestic appliance',1424,'<100','4<=X<7',4,'male single',none,3,'life insurance',26,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',business,6568,'<100','1<=X<4',2,'male mar/wid',none,2,car,21,stores,own,1,'unskilled resident',1,none,yes,good
+'no checking',12,'existing paid','used car',1413,'>=1000','4<=X<7',3,'male single',none,2,'life insurance',55,none,own,1,skilled,1,none,no,good
+'no checking',9,'critical/other existing credit',radio/tv,3074,'no known savings','1<=X<4',1,'male single',none,2,'real estate',33,none,own,2,skilled,2,none,yes,good
+'no checking',36,'existing paid',radio/tv,3835,'no known savings','>=7',2,'female div/dep/mar',none,4,'real estate',45,none,own,1,'unskilled resident',1,yes,yes,good
+'<0',27,'no credits/all paid',business,5293,'<100',unemployed,2,'male single',none,4,'life insurance',50,stores,own,2,skilled,1,yes,yes,bad
+'>=200',30,'delayed previously',business,1908,'<100','>=7',4,'male single',none,4,'real estate',66,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',36,'critical/other existing credit',radio/tv,3342,'no known savings','>=7',4,'male single',none,2,car,51,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'critical/other existing credit',retraining,932,'no known savings','4<=X<7',1,'female div/dep/mar',none,3,'life insurance',39,none,own,2,'unskilled resident',1,none,yes,good
+'<0',18,'no credits/all paid',business,3104,'<100','4<=X<7',3,'male single',none,1,'life insurance',31,bank,own,1,skilled,1,yes,yes,good
+'>=200',36,'existing paid',radio/tv,3913,'<100','1<=X<4',2,'male single',none,2,'real estate',23,none,own,1,skilled,1,yes,yes,good
+'<0',24,'existing paid',furniture/equipment,3021,'<100','1<=X<4',2,'male div/sep',none,2,'real estate',24,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',10,'existing paid','new car',1364,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,64,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,625,'<100','<1',4,'male mar/wid',guarantor,1,'real estate',26,bank,own,1,'unskilled resident',1,none,yes,good
+'<0',12,'existing paid',education,1200,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,'life insurance',23,bank,rent,1,skilled,1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,707,'<100','1<=X<4',4,'male single',none,2,'real estate',30,bank,own,2,skilled,1,none,yes,good
+'no checking',24,'delayed previously',business,2978,'no known savings','1<=X<4',4,'male single',none,4,'real estate',32,none,own,2,skilled,2,yes,yes,good
+'no checking',15,'existing paid','used car',4657,'<100','1<=X<4',3,'male single',none,2,car,30,none,own,1,skilled,1,yes,yes,good
+'no checking',36,'no credits/all paid',repairs,2613,'<100','1<=X<4',4,'male single',none,2,car,27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',48,'existing paid',radio/tv,10961,'>=1000','4<=X<7',1,'male single','co applicant',2,'no known property',27,bank,own,2,skilled,1,yes,yes,bad
+'<0',12,'existing paid',furniture/equipment,7865,'<100','>=7',4,'male single',none,4,'no known property',53,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',9,'existing paid',radio/tv,1478,'<100','4<=X<7',4,'male single',none,2,car,22,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',furniture/equipment,3149,'<100','<1',4,'male single',none,1,'no known property',22,bank,'for free',1,skilled,1,none,yes,good
+'>=200',36,'existing paid',radio/tv,4210,'<100','1<=X<4',4,'male single',none,2,car,26,none,own,1,skilled,1,none,yes,bad
+'no checking',9,'existing paid','new car',2507,'500<=X<1000','>=7',2,'male single',none,4,'no known property',51,none,'for free',1,'unskilled resident',1,none,yes,good
+'no checking',12,'existing paid',radio/tv,2141,'100<=X<500','4<=X<7',3,'male single',none,1,'no known property',35,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,866,'<100','1<=X<4',4,'male mar/wid',guarantor,2,'real estate',25,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',4,'critical/other existing credit',radio/tv,1544,'<100','4<=X<7',2,'male single',none,1,'real estate',42,none,own,3,'unskilled resident',2,none,yes,good
+'<0',24,'existing paid',radio/tv,1823,'<100',unemployed,4,'male single',none,2,car,30,stores,own,1,'high qualif/self emp/mgmt',2,none,yes,bad
+'0<=X<200',6,'existing paid','new car',14555,'no known savings',unemployed,1,'male single',none,2,'life insurance',23,none,own,1,'unemp/unskilled non res',1,yes,yes,bad
+'0<=X<200',21,'existing paid',business,2767,'100<=X<500','>=7',4,'male div/sep',none,2,car,61,bank,rent,2,'unskilled resident',1,none,yes,bad
+'no checking',12,'critical/other existing credit',radio/tv,1291,'<100','1<=X<4',4,'female div/dep/mar',none,2,'life insurance',35,none,own,2,skilled,1,none,yes,good
+'<0',30,'existing paid',radio/tv,2522,'<100','>=7',1,'male single',guarantor,3,'life insurance',39,none,own,1,skilled,2,none,yes,good
+'<0',24,'existing paid','new car',915,'no known savings','>=7',4,'female div/dep/mar',none,2,car,29,bank,own,1,skilled,1,none,yes,bad
+'no checking',6,'existing paid',radio/tv,1595,'<100','4<=X<7',3,'male single',none,2,'life insurance',51,none,own,1,skilled,2,none,yes,good
+'<0',48,'no credits/all paid','used car',4605,'<100','>=7',3,'male single',none,4,'no known property',24,none,'for free',2,skilled,2,none,yes,bad
+'no checking',12,'critical/other existing credit',business,1185,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',27,none,own,2,skilled,1,none,yes,good
+'no checking',12,'all paid',retraining,3447,'500<=X<1000','1<=X<4',4,'female div/dep/mar',none,3,'real estate',35,none,own,1,'unskilled resident',2,none,yes,good
+'no checking',24,'existing paid',business,1258,'<100','4<=X<7',4,'male single',none,1,'real estate',25,none,own,1,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,717,'<100','>=7',4,'male single',none,4,'real estate',52,none,own,3,skilled,1,none,yes,good
+'no checking',6,'no credits/all paid','new car',1204,'100<=X<500','1<=X<4',4,'male single',none,1,'no known property',35,bank,rent,1,skilled,1,none,no,good
+'>=200',24,'existing paid',furniture/equipment,1925,'<100','1<=X<4',2,'male single',none,2,'real estate',26,none,own,1,skilled,1,none,yes,good
+'no checking',18,'existing paid',radio/tv,433,'<100',unemployed,3,'female div/dep/mar','co applicant',4,'real estate',22,none,rent,1,skilled,1,none,yes,bad
+'<0',6,'critical/other existing credit','new car',666,'>=1000','4<=X<7',3,'female div/dep/mar',none,4,'real estate',39,none,own,2,'unskilled resident',1,yes,yes,good
+'>=200',12,'existing paid',furniture/equipment,2251,'<100','1<=X<4',1,'female div/dep/mar',none,2,car,46,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'existing paid','new car',2150,'<100','1<=X<4',4,'female div/dep/mar',guarantor,2,'no known property',24,bank,own,1,skilled,1,none,yes,bad
+'no checking',24,'delayed previously',furniture/equipment,4151,'100<=X<500','1<=X<4',2,'male single',none,3,'life insurance',35,none,own,2,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',furniture/equipment,2030,'no known savings','4<=X<7',2,'male single',none,1,car,24,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',60,'delayed previously',radio/tv,7418,'no known savings','1<=X<4',1,'male single',none,1,'real estate',27,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2684,'<100','1<=X<4',4,'male single',none,2,'real estate',35,none,own,2,'unskilled resident',1,none,yes,good
+'<0',12,'all paid',radio/tv,2149,'<100','1<=X<4',4,'male div/sep',none,1,'no known property',29,none,'for free',1,skilled,1,none,yes,bad
+'no checking',15,'existing paid','used car',3812,'100<=X<500','<1',1,'female div/dep/mar',none,4,car,23,none,own,1,skilled,1,yes,yes,good
+'no checking',11,'critical/other existing credit',radio/tv,1154,'100<=X<500',unemployed,4,'female div/dep/mar',none,4,'real estate',57,none,own,3,'unskilled resident',1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,1657,'<100','1<=X<4',2,'male single',none,2,'real estate',27,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',radio/tv,1603,'<100','>=7',4,'female div/dep/mar',none,4,car,55,none,own,1,skilled,1,none,yes,good
+'<0',18,'critical/other existing credit','new car',5302,'<100','>=7',2,'male single',none,4,'no known property',36,none,'for free',3,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'critical/other existing credit',education,2748,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',57,bank,'for free',3,'unskilled resident',1,none,yes,good
+'no checking',10,'critical/other existing credit','new car',1231,'<100','>=7',3,'male single',none,4,'real estate',32,none,own,2,'unskilled resident',2,none,no,good
+'0<=X<200',15,'existing paid',radio/tv,802,'<100','>=7',4,'male single',none,3,car,37,none,own,1,skilled,2,none,yes,bad
+'no checking',36,'critical/other existing credit',business,6304,'no known savings','>=7',4,'male single',none,4,'real estate',36,none,own,2,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,1533,'<100','<1',4,'female div/dep/mar',none,3,car,38,stores,own,1,skilled,1,yes,yes,good
+'<0',14,'existing paid','new car',8978,'<100','>=7',1,'male div/sep',none,4,'life insurance',45,none,own,1,'high qualif/self emp/mgmt',1,yes,no,bad
+'no checking',24,'existing paid',radio/tv,999,'no known savings','>=7',4,'male single',none,2,car,25,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid','new car',2662,'no known savings','4<=X<7',4,'male single',none,3,'life insurance',32,none,own,1,skilled,1,none,no,good
+'no checking',12,'critical/other existing credit',furniture/equipment,1402,'500<=X<1000','4<=X<7',3,'female div/dep/mar',none,4,car,37,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',48,'all paid','new car',12169,'no known savings',unemployed,4,'male single','co applicant',4,'no known property',36,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',48,'existing paid',radio/tv,3060,'<100','4<=X<7',4,'male single',none,4,'real estate',28,none,own,2,skilled,1,none,yes,bad
+'<0',30,'existing paid',repairs,11998,'<100','<1',1,'male div/sep',none,1,'no known property',34,none,own,1,'unskilled resident',1,yes,yes,bad
+'no checking',9,'existing paid',radio/tv,2697,'<100','1<=X<4',1,'male single',none,2,'real estate',32,none,own,1,skilled,2,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,2404,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,26,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,1262,'no known savings','>=7',2,'male div/sep',none,4,'life insurance',49,none,own,1,'unskilled resident',1,yes,yes,good
+'no checking',6,'existing paid',furniture/equipment,4611,'<100','<1',1,'female div/dep/mar',none,4,'life insurance',32,none,own,1,skilled,1,none,yes,bad
+'no checking',24,'existing paid',radio/tv,1901,'100<=X<500','1<=X<4',4,'male single',none,4,car,29,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',15,'critical/other existing credit','used car',3368,'>=1000','>=7',3,'male single',none,4,'no known property',23,none,rent,2,skilled,1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1574,'<100','1<=X<4',4,'male single',none,2,'real estate',50,none,own,1,skilled,1,none,yes,good
+'>=200',18,'all paid',radio/tv,1445,'no known savings','4<=X<7',4,'male single',none,4,car,49,bank,own,1,'unskilled resident',1,none,yes,good
+'no checking',15,'critical/other existing credit',furniture/equipment,1520,'no known savings','>=7',4,'male single',none,4,'life insurance',63,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit','new car',3878,'100<=X<500','<1',4,'male div/sep',none,2,car,37,none,own,1,skilled,1,yes,yes,good
+'<0',47,'existing paid','new car',10722,'<100','<1',1,'female div/dep/mar',none,1,'real estate',35,none,own,1,'unskilled resident',1,yes,yes,good
+'<0',48,'existing paid','used car',4788,'<100','4<=X<7',4,'male single',none,3,'life insurance',26,none,own,1,skilled,2,none,yes,good
+'0<=X<200',48,'delayed previously',other,7582,'100<=X<500',unemployed,2,'male single',none,4,'no known property',31,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1092,'<100','1<=X<4',4,'female div/dep/mar',guarantor,4,'real estate',49,none,own,2,skilled,1,yes,yes,good
+'<0',24,'delayed previously',radio/tv,1024,'<100','<1',4,'male mar/wid',none,4,'real estate',48,stores,own,1,skilled,1,none,yes,bad
+'no checking',12,'existing paid',business,1076,'<100','1<=X<4',2,'male mar/wid',none,2,'real estate',26,none,own,1,skilled,1,yes,no,good
+'0<=X<200',36,'existing paid','used car',9398,'<100','<1',1,'male mar/wid',none,4,car,28,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',24,'critical/other existing credit','used car',6419,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',44,none,'for free',2,'high qualif/self emp/mgmt',2,yes,yes,good
+'>=200',42,'critical/other existing credit','used car',4796,'<100','>=7',4,'male single',none,4,'no known property',56,none,'for free',1,skilled,1,none,yes,good
+'no checking',48,'critical/other existing credit',business,7629,'no known savings','>=7',4,'male div/sep',none,2,car,46,bank,own,2,'high qualif/self emp/mgmt',2,none,yes,good
+'0<=X<200',48,'existing paid',furniture/equipment,9960,'<100','<1',1,'female div/dep/mar',none,2,car,26,none,own,1,skilled,1,yes,yes,bad
+'no checking',12,'existing paid','used car',4675,'no known savings','<1',1,'female div/dep/mar',none,4,car,20,none,rent,1,skilled,1,none,yes,good
+'no checking',10,'existing paid','new car',1287,'no known savings','>=7',4,'male single','co applicant',2,'life insurance',45,none,own,1,'unskilled resident',1,none,no,good
+'no checking',18,'existing paid',furniture/equipment,2515,'<100','1<=X<4',3,'male single',none,4,'real estate',43,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',21,'critical/other existing credit',furniture/equipment,2745,'>=1000','4<=X<7',3,'male single',none,2,car,32,none,own,2,skilled,1,yes,yes,good
+'no checking',6,'existing paid','new car',672,'<100',unemployed,1,'female div/dep/mar',none,4,'real estate',54,none,own,1,'unemp/unskilled non res',1,yes,yes,good
+'0<=X<200',36,'no credits/all paid',radio/tv,3804,'<100','1<=X<4',4,'female div/dep/mar',none,1,car,42,none,own,1,skilled,1,yes,yes,bad
+'>=200',24,'critical/other existing credit','new car',1344,'no known savings','4<=X<7',4,'male single',none,2,'real estate',37,bank,own,2,'unskilled resident',2,none,yes,bad
+'<0',10,'critical/other existing credit','new car',1038,'<100','4<=X<7',4,'male single','co applicant',3,'life insurance',49,none,own,2,skilled,1,yes,yes,good
+'no checking',48,'critical/other existing credit','new car',10127,'500<=X<1000','1<=X<4',2,'male single',none,2,'no known property',44,bank,'for free',1,skilled,1,none,yes,bad
+'no checking',6,'existing paid',furniture/equipment,1543,'>=1000','1<=X<4',4,'male div/sep',none,2,'real estate',33,none,own,1,skilled,1,none,yes,good
+'no checking',30,'existing paid','used car',4811,'no known savings','4<=X<7',2,'female div/dep/mar',none,4,'life insurance',24,stores,rent,1,'unskilled resident',1,none,yes,good
+'<0',12,'existing paid',radio/tv,727,'100<=X<500','<1',4,'male mar/wid',none,3,'no known property',33,none,own,1,'unskilled resident',1,yes,yes,bad
+'0<=X<200',8,'existing paid',furniture/equipment,1237,'<100','1<=X<4',3,'female div/dep/mar',none,4,'real estate',24,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',9,'existing paid','new car',276,'<100','1<=X<4',4,'male mar/wid',none,4,'real estate',22,none,rent,1,'unskilled resident',1,none,yes,good
+'0<=X<200',48,'existing paid',other,5381,'no known savings',unemployed,3,'male single',none,4,'no known property',40,bank,'for free',1,'unemp/unskilled non res',1,yes,yes,good
+'no checking',24,'existing paid',furniture/equipment,5511,'100<=X<500','1<=X<4',4,'male single',none,1,car,25,stores,own,1,skilled,1,none,yes,good
+'>=200',24,'existing paid',furniture/equipment,3749,'<100','<1',2,'female div/dep/mar',none,4,car,26,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',685,'<100','4<=X<7',2,'male mar/wid',none,3,car,25,bank,own,1,'unskilled resident',1,none,yes,bad
+'>=200',4,'existing paid','new car',1494,'no known savings','<1',1,'male single',none,2,'real estate',29,none,own,1,'unskilled resident',2,none,no,good
+'<0',36,'all paid',furniture/equipment,2746,'<100','>=7',4,'male single',none,4,car,31,bank,own,1,skilled,1,none,yes,bad
+'<0',12,'existing paid',furniture/equipment,708,'<100','1<=X<4',2,'male single',guarantor,3,'life insurance',38,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',24,'existing paid',furniture/equipment,4351,'no known savings','1<=X<4',1,'female div/dep/mar',none,4,'life insurance',48,none,own,1,'unskilled resident',1,yes,yes,good
+'no checking',12,'critical/other existing credit',education,701,'<100','1<=X<4',4,'male single',none,2,car,32,none,own,2,skilled,1,none,yes,good
+'<0',15,'delayed previously',furniture/equipment,3643,'<100','>=7',1,'female div/dep/mar',none,4,'life insurance',27,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'critical/other existing credit','new car',4249,'<100',unemployed,4,'male mar/wid',none,2,car,28,none,own,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'<0',24,'existing paid',radio/tv,1938,'<100','<1',4,'male div/sep',none,3,'life insurance',32,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid','used car',2910,'<100','4<=X<7',2,'male single',none,1,'no known property',34,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',18,'existing paid',furniture/equipment,2659,'>=1000','1<=X<4',4,'male single',none,2,car,28,none,own,1,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit','new car',1028,'<100','1<=X<4',4,'female div/dep/mar',none,3,'real estate',36,none,own,2,skilled,1,none,yes,good
+'<0',8,'critical/other existing credit','new car',3398,'<100','4<=X<7',1,'male single',none,4,'real estate',39,none,own,2,'unskilled resident',1,none,no,good
+'no checking',12,'critical/other existing credit',furniture/equipment,5801,'no known savings','>=7',2,'male single',none,4,'life insurance',49,none,rent,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid','new car',1525,'>=1000','4<=X<7',4,'female div/dep/mar',none,3,car,34,none,own,1,skilled,2,yes,yes,good
+'>=200',36,'existing paid',radio/tv,4473,'<100','>=7',4,'male single',none,2,car,31,none,own,1,skilled,1,none,yes,good
+'0<=X<200',6,'existing paid',radio/tv,1068,'<100','>=7',4,'male single',none,4,car,28,none,own,1,skilled,2,none,yes,good
+'<0',24,'critical/other existing credit','used car',6615,'<100',unemployed,2,'male single',none,4,'no known property',75,none,'for free',2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',18,'critical/other existing credit',education,1864,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,2,'real estate',30,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',60,'existing paid','new car',7408,'100<=X<500','<1',4,'female div/dep/mar',none,2,'life insurance',24,none,own,1,'high qualif/self emp/mgmt',1,none,yes,bad
+'no checking',48,'critical/other existing credit','used car',11590,'100<=X<500','1<=X<4',2,'female div/dep/mar',none,4,car,24,bank,rent,2,'unskilled resident',1,none,yes,bad
+'<0',24,'no credits/all paid',furniture/equipment,4110,'<100','>=7',3,'male single',none,4,'no known property',23,bank,rent,2,skilled,2,none,yes,bad
+'<0',6,'critical/other existing credit',furniture/equipment,3384,'<100','1<=X<4',1,'male div/sep',none,4,'real estate',44,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',13,'existing paid',radio/tv,2101,'<100','<1',2,'female div/dep/mar',guarantor,4,'life insurance',23,none,own,1,'unskilled resident',1,none,yes,good
+'<0',15,'existing paid','domestic appliance',1275,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,car,24,none,rent,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',furniture/equipment,4169,'<100','1<=X<4',4,'male single',none,4,'life insurance',28,none,own,1,skilled,1,none,yes,good
+'0<=X<200',10,'existing paid',furniture/equipment,1521,'<100','1<=X<4',4,'male div/sep',none,2,car,31,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'critical/other existing credit',education,5743,'<100','<1',2,'female div/dep/mar',none,4,'no known property',24,none,'for free',2,skilled,1,yes,yes,good
+'<0',21,'existing paid',furniture/equipment,3599,'<100','4<=X<7',1,'female div/dep/mar',none,4,car,26,none,rent,1,'unskilled resident',1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,3213,'500<=X<1000','<1',1,'male mar/wid',none,3,'real estate',25,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',business,4439,'<100','>=7',1,'male single','co applicant',1,'real estate',33,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',10,'existing paid','new car',3949,'<100','<1',1,'male single',guarantor,1,'life insurance',37,none,own,1,'unskilled resident',2,none,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1459,'<100','1<=X<4',4,'female div/dep/mar',none,2,car,43,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',13,'critical/other existing credit',radio/tv,882,'<100','<1',4,'male single',guarantor,4,'real estate',23,none,own,2,skilled,1,none,yes,good
+'0<=X<200',24,'existing paid',radio/tv,3758,'500<=X<1000',unemployed,1,'female div/dep/mar',none,4,'no known property',23,none,rent,1,'unemp/unskilled non res',1,none,yes,good
+'no checking',6,'delayed previously',business,1743,'100<=X<500','1<=X<4',1,'male single',none,2,'real estate',34,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'critical/other existing credit',education,1136,'>=1000','>=7',4,'male single',none,3,'no known property',32,none,'for free',2,skilled,2,none,yes,bad
+'no checking',9,'existing paid','domestic appliance',1236,'<100','<1',1,'female div/dep/mar',none,4,'real estate',23,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',9,'existing paid',furniture/equipment,959,'<100','1<=X<4',1,'female div/dep/mar',none,2,car,29,none,own,1,skilled,1,none,no,bad
+'no checking',18,'critical/other existing credit','used car',3229,'no known savings',unemployed,2,'male single',none,4,'no known property',38,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'no credits/all paid',radio/tv,6199,'<100','1<=X<4',4,'male single',none,2,'life insurance',28,none,rent,2,skilled,1,yes,yes,bad
+'no checking',10,'existing paid',education,727,'500<=X<1000','>=7',4,'male single',none,4,'no known property',46,none,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',24,'existing paid','new car',1246,'<100','<1',4,'male single',none,2,'real estate',23,stores,own,1,'unskilled resident',1,none,yes,bad
+'no checking',12,'critical/other existing credit',radio/tv,2331,'no known savings','>=7',1,'male single','co applicant',4,'real estate',49,none,own,1,skilled,1,yes,yes,good
+'no checking',36,'delayed previously',radio/tv,4463,'<100','1<=X<4',4,'male single',none,2,car,26,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',12,'existing paid',radio/tv,776,'<100','1<=X<4',4,'male mar/wid',none,2,'real estate',28,none,own,1,skilled,1,none,yes,good
+'<0',30,'existing paid',furniture/equipment,2406,'<100','4<=X<7',4,'female div/dep/mar',none,4,'real estate',23,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',18,'existing paid',education,1239,'no known savings','1<=X<4',4,'male single',none,4,'no known property',61,none,'for free',1,skilled,1,none,yes,good
+'>=200',12,'existing paid',radio/tv,3399,'no known savings','>=7',2,'male single',none,3,car,37,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'>=200',12,'delayed previously','new car',2247,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,36,stores,own,2,skilled,1,yes,yes,good
+'no checking',6,'existing paid',furniture/equipment,1766,'<100','1<=X<4',1,'male mar/wid',none,2,'life insurance',21,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,2473,'<100',unemployed,4,'male single',none,1,car,25,none,own,1,'unemp/unskilled non res',1,none,yes,bad
+'no checking',12,'existing paid',business,1542,'<100','4<=X<7',2,'male single',none,4,car,36,none,own,1,skilled,1,yes,yes,good
+'no checking',18,'critical/other existing credit','used car',3850,'<100','4<=X<7',3,'male single',none,1,car,27,none,own,2,skilled,1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,3650,'<100','<1',1,'female div/dep/mar',none,4,car,22,none,rent,1,skilled,1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,3446,'<100','>=7',4,'male single',none,2,car,42,none,own,1,skilled,2,none,yes,bad
+'0<=X<200',18,'existing paid',furniture/equipment,3001,'<100','4<=X<7',2,'female div/dep/mar',none,4,'real estate',40,none,rent,1,skilled,1,none,yes,good
+'no checking',36,'existing paid','new car',3079,'no known savings','1<=X<4',4,'male single',none,4,'real estate',36,none,own,1,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,6070,'<100','>=7',3,'male single',none,4,car,33,none,own,2,skilled,1,yes,yes,good
+'no checking',10,'critical/other existing credit',furniture/equipment,2146,'<100','<1',1,'female div/dep/mar',none,3,'real estate',23,none,rent,2,skilled,1,none,yes,good
+'no checking',60,'critical/other existing credit','new car',13756,'no known savings','>=7',2,'male single',none,4,'no known property',63,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',60,'all paid',other,14782,'100<=X<500','>=7',3,'female div/dep/mar',none,4,'no known property',60,bank,'for free',2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',48,'all paid',business,7685,'<100','4<=X<7',2,'female div/dep/mar',guarantor,4,car,37,none,rent,1,skilled,1,none,yes,bad
+'no checking',18,'delayed previously',radio/tv,2320,'<100',unemployed,2,'male mar/wid',none,3,'real estate',34,none,own,2,skilled,1,none,yes,good
+'no checking',7,'delayed previously',radio/tv,846,'no known savings','>=7',3,'male single',none,4,'no known property',36,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid','new car',14318,'<100','>=7',4,'male single',none,2,'no known property',57,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',6,'critical/other existing credit','new car',362,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,4,car,52,none,own,2,'unskilled resident',1,none,yes,good
+'<0',20,'existing paid',furniture/equipment,2212,'no known savings','4<=X<7',4,'male single',none,4,car,39,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'existing paid','used car',12976,'<100',unemployed,3,'female div/dep/mar',none,4,'no known property',38,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',22,'existing paid','new car',1283,'no known savings','4<=X<7',4,'female div/dep/mar',none,4,'life insurance',25,none,rent,1,skilled,1,none,yes,good
+'>=200',12,'existing paid','new car',1330,'<100','<1',4,'male single',none,1,'real estate',26,none,own,1,skilled,1,none,yes,good
+'no checking',30,'delayed previously',business,4272,'100<=X<500','1<=X<4',2,'male single',none,2,'life insurance',26,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,2238,'<100','1<=X<4',2,'female div/dep/mar',none,1,car,25,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid',radio/tv,1126,'no known savings','<1',4,'female div/dep/mar',none,2,'real estate',21,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,7374,'<100',unemployed,4,'male single',none,4,'life insurance',40,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',15,'critical/other existing credit',business,2326,'500<=X<1000','1<=X<4',2,'male single',none,4,car,27,bank,own,1,skilled,1,none,yes,good
+'no checking',9,'existing paid',business,1449,'<100','4<=X<7',3,'female div/dep/mar',none,2,car,27,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid','new car',1820,'<100','1<=X<4',2,'male mar/wid',none,2,'life insurance',30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,983,'>=1000','<1',1,'female div/dep/mar',none,4,'real estate',19,none,rent,1,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid','new car',3249,'<100','4<=X<7',2,'male single',none,4,'no known property',39,bank,'for free',1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',6,'critical/other existing credit',radio/tv,1957,'<100','4<=X<7',1,'female div/dep/mar',none,4,car,31,none,own,1,skilled,1,none,yes,good
+'no checking',9,'critical/other existing credit',furniture/equipment,2406,'<100',unemployed,2,'male single',none,3,car,31,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',39,'delayed previously',education,11760,'100<=X<500','4<=X<7',2,'male single',none,3,'no known property',32,none,rent,1,skilled,1,yes,yes,good
+'<0',12,'existing paid',furniture/equipment,2578,'<100',unemployed,3,'female div/dep/mar',none,4,'no known property',55,none,'for free',1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',36,'critical/other existing credit',furniture/equipment,2348,'<100','1<=X<4',3,'male mar/wid',none,2,'life insurance',46,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid','new car',1223,'<100','>=7',1,'male div/sep',none,1,'real estate',46,none,rent,2,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,1516,'>=1000','1<=X<4',4,'female div/dep/mar',none,1,'real estate',43,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',radio/tv,1473,'<100','<1',3,'male mar/wid',none,4,'real estate',39,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',business,1887,'no known savings','1<=X<4',4,'male mar/wid',none,4,'real estate',28,bank,own,2,skilled,1,none,yes,good
+'no checking',24,'delayed previously',business,8648,'<100','<1',2,'male single',none,2,car,27,bank,own,2,skilled,1,yes,yes,bad
+'no checking',14,'delayed previously','new car',802,'<100','1<=X<4',4,'male single',none,2,car,27,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',18,'delayed previously','new car',2899,'no known savings','>=7',4,'male single',none,4,car,43,none,own,1,skilled,2,none,yes,good
+'0<=X<200',24,'existing paid',radio/tv,2039,'<100','<1',1,'male mar/wid',none,1,'life insurance',22,none,own,1,skilled,1,yes,yes,bad
+'no checking',24,'critical/other existing credit','used car',2197,'no known savings','4<=X<7',4,'male single',none,4,car,43,none,own,2,skilled,2,yes,yes,good
+'<0',15,'existing paid',radio/tv,1053,'<100','<1',4,'male mar/wid',none,2,'real estate',27,none,own,1,skilled,1,none,no,good
+'no checking',24,'existing paid',radio/tv,3235,'500<=X<1000','>=7',3,'male div/sep',none,2,car,26,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',12,'critical/other existing credit','new car',939,'500<=X<1000','4<=X<7',4,'male mar/wid',none,2,'real estate',28,none,own,3,skilled,1,yes,yes,bad
+'0<=X<200',24,'existing paid',radio/tv,1967,'<100','>=7',4,'female div/dep/mar',none,4,car,20,none,own,1,skilled,1,yes,yes,good
+'no checking',33,'critical/other existing credit','used car',7253,'<100','4<=X<7',3,'male single',none,2,car,35,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'critical/other existing credit',business,2292,'<100',unemployed,4,'male single',none,2,car,42,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',10,'existing paid','new car',1597,'500<=X<1000','1<=X<4',3,'male single',none,2,'no known property',40,none,rent,1,'unskilled resident',2,none,no,good
+'<0',24,'existing paid','new car',1381,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,'life insurance',35,none,own,1,skilled,1,none,yes,bad
+'no checking',36,'critical/other existing credit','used car',5842,'<100','>=7',2,'male single',none,2,'life insurance',35,none,own,2,skilled,2,yes,yes,good
+'<0',12,'existing paid','new car',2579,'<100','<1',4,'male single',none,1,'real estate',33,none,own,1,'unskilled resident',2,none,yes,bad
+'<0',18,'delayed previously',education,8471,'no known savings','1<=X<4',1,'female div/dep/mar',none,2,car,23,none,rent,2,skilled,1,yes,yes,good
+'no checking',21,'existing paid','new car',2782,'500<=X<1000','4<=X<7',1,'female div/dep/mar',none,2,car,31,bank,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',18,'existing paid','new car',1042,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,'life insurance',33,none,own,1,skilled,1,none,yes,bad
+'no checking',15,'existing paid','new car',3186,'>=1000','4<=X<7',2,'female div/dep/mar',none,3,car,20,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','used car',2028,'no known savings','1<=X<4',4,'male single',none,2,car,30,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'critical/other existing credit','new car',958,'<100','4<=X<7',2,'male single',none,3,'real estate',47,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',21,'delayed previously',furniture/equipment,1591,'100<=X<500','4<=X<7',4,'male single',none,3,'real estate',34,none,own,2,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,2762,'no known savings','>=7',1,'female div/dep/mar',none,2,'life insurance',25,bank,own,1,skilled,1,yes,yes,bad
+'0<=X<200',18,'existing paid','used car',2779,'<100','1<=X<4',1,'male mar/wid',none,3,car,21,none,rent,1,skilled,1,yes,yes,good
+'no checking',28,'critical/other existing credit',radio/tv,2743,'<100','>=7',4,'male single',none,2,car,29,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1149,'>=1000','1<=X<4',4,'male single',none,3,'real estate',46,none,own,2,skilled,1,none,yes,good
+'no checking',9,'existing paid',furniture/equipment,1313,'<100','>=7',1,'male single',none,4,car,20,none,own,1,skilled,1,none,yes,good
+'<0',18,'critical/other existing credit',repairs,1190,'<100',unemployed,2,'female div/dep/mar',none,4,'no known property',55,none,'for free',3,'unemp/unskilled non res',2,none,yes,bad
+'no checking',5,'existing paid',business,3448,'<100','4<=X<7',1,'male single',none,4,'real estate',74,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid',other,11328,'<100','1<=X<4',2,'male single','co applicant',3,car,29,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',6,'critical/other existing credit',furniture/equipment,1872,'<100',unemployed,4,'male single',none,4,'no known property',36,none,'for free',3,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'critical/other existing credit',repairs,2058,'<100','1<=X<4',4,'male div/sep',none,2,'real estate',33,none,own,2,skilled,1,yes,yes,good
+'<0',9,'existing paid',furniture/equipment,2136,'<100','1<=X<4',3,'male single',none,2,'real estate',25,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1484,'no known savings','1<=X<4',2,'male mar/wid',none,1,'real estate',25,none,own,1,skilled,1,yes,yes,bad
+'no checking',6,'existing paid',repairs,660,'500<=X<1000','4<=X<7',2,'male mar/wid',none,4,'real estate',23,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',24,'critical/other existing credit','new car',1287,'>=1000','>=7',4,'female div/dep/mar',none,4,'real estate',37,none,own,2,skilled,1,yes,yes,good
+'<0',42,'critical/other existing credit',repairs,3394,'<100',unemployed,4,'male single','co applicant',4,car,65,none,own,2,'unemp/unskilled non res',1,none,yes,good
+'>=200',12,'all paid',business,609,'<100','<1',4,'female div/dep/mar',none,1,'real estate',26,none,own,1,'unemp/unskilled non res',1,none,yes,bad
+'no checking',12,'existing paid','new car',1884,'<100','>=7',4,'male single',none,4,car,39,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid',furniture/equipment,1620,'<100','1<=X<4',2,'female div/dep/mar','co applicant',3,'life insurance',30,none,own,1,skilled,1,none,yes,good
+'0<=X<200',20,'delayed previously',other,2629,'<100','1<=X<4',2,'male single',none,3,car,29,bank,own,2,skilled,1,yes,yes,good
+'no checking',12,'existing paid',education,719,'<100','>=7',4,'male single',none,4,car,41,bank,own,1,'unskilled resident',2,none,yes,bad
+'0<=X<200',48,'critical/other existing credit',furniture/equipment,5096,'<100','1<=X<4',2,'female div/dep/mar',none,3,car,30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',9,'critical/other existing credit',education,1244,'no known savings','>=7',4,'female div/dep/mar',none,4,'life insurance',41,none,rent,2,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid','new car',1842,'<100','<1',4,'female div/dep/mar',none,4,car,34,none,own,1,skilled,1,yes,yes,bad
+'0<=X<200',7,'existing paid',radio/tv,2576,'<100','1<=X<4',2,'male single',guarantor,2,'real estate',35,none,own,1,skilled,1,none,yes,good
+'>=200',12,'existing paid',furniture/equipment,1424,'no known savings','>=7',3,'female div/dep/mar',none,4,'real estate',55,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',15,'delayed previously',repairs,1512,'>=1000','1<=X<4',3,'male mar/wid',none,3,'life insurance',61,stores,own,2,skilled,1,none,yes,bad
+'no checking',36,'critical/other existing credit','used car',11054,'no known savings','1<=X<4',4,'male single',none,2,car,30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',6,'existing paid',radio/tv,518,'<100','1<=X<4',3,'female div/dep/mar',none,1,'real estate',29,none,own,1,skilled,1,none,yes,good
+'no checking',12,'no credits/all paid',furniture/equipment,2759,'<100','>=7',2,'male single',none,4,'life insurance',34,none,own,2,skilled,1,none,yes,good
+'no checking',24,'existing paid','used car',2670,'<100','>=7',4,'male single',none,4,car,35,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',24,'existing paid','new car',4817,'<100','4<=X<7',2,'male single','co applicant',3,'life insurance',31,none,own,1,skilled,1,yes,yes,bad
+'no checking',24,'existing paid','used car',2679,'<100','<1',4,'female div/dep/mar',none,1,'no known property',29,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',11,'critical/other existing credit','new car',3905,'<100','1<=X<4',2,'male single',none,2,'real estate',36,none,rent,2,skilled,2,none,yes,good
+'<0',12,'existing paid','used car',3386,'<100','>=7',3,'male single',none,4,'no known property',35,none,'for free',1,skilled,1,yes,yes,bad
+'<0',6,'existing paid','domestic appliance',343,'<100','<1',4,'female div/dep/mar',none,1,'real estate',27,none,own,1,skilled,1,none,yes,good
+'no checking',18,'existing paid',radio/tv,4594,'<100','<1',3,'male single',none,2,car,32,none,own,1,skilled,1,yes,yes,good
+'<0',36,'existing paid',furniture/equipment,3620,'<100','1<=X<4',1,'male single',guarantor,2,'life insurance',37,none,own,1,skilled,2,none,yes,good
+'<0',15,'existing paid','new car',1721,'<100','<1',2,'male single',none,3,'real estate',36,none,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,3017,'<100','<1',3,'female div/dep/mar',none,1,'real estate',34,none,rent,1,'high qualif/self emp/mgmt',1,none,yes,good
+'0<=X<200',12,'existing paid',retraining,754,'no known savings','>=7',4,'male single',none,4,'life insurance',38,none,own,2,skilled,1,none,yes,good
+'no checking',18,'existing paid',business,1950,'<100','4<=X<7',4,'male single',none,1,car,34,stores,own,2,skilled,1,yes,yes,good
+'<0',24,'existing paid','used car',2924,'<100','1<=X<4',3,'male single',guarantor,4,'no known property',63,bank,own,1,skilled,2,yes,yes,good
+'<0',24,'delayed previously',radio/tv,1659,'<100','<1',4,'female div/dep/mar',none,2,car,29,none,rent,1,'unskilled resident',1,yes,yes,bad
+'no checking',48,'delayed previously',radio/tv,7238,'no known savings','>=7',3,'male single',none,3,car,32,bank,own,2,skilled,2,none,yes,good
+'no checking',33,'delayed previously',business,2764,'<100','1<=X<4',2,'female div/dep/mar',none,2,car,26,none,own,2,skilled,1,yes,yes,good
+'no checking',24,'delayed previously','used car',4679,'<100','4<=X<7',3,'male single',none,3,car,35,none,own,2,'unskilled resident',1,yes,yes,good
+'0<=X<200',24,'existing paid',radio/tv,3092,'100<=X<500','<1',3,'male mar/wid',none,2,car,22,none,rent,1,skilled,1,yes,yes,bad
+'<0',6,'existing paid',education,448,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',23,none,own,1,skilled,1,none,yes,bad
+'<0',9,'existing paid','new car',654,'<100','1<=X<4',4,'male single',none,3,car,28,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',6,'existing paid',retraining,1238,'no known savings',unemployed,4,'male single',none,4,'life insurance',36,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',radio/tv,1245,'<100','1<=X<4',4,'male mar/wid',none,2,car,33,none,own,1,skilled,1,none,yes,bad
+'<0',18,'no credits/all paid',furniture/equipment,3114,'<100','<1',1,'female div/dep/mar',none,4,'life insurance',26,none,rent,1,skilled,1,none,yes,bad
+'no checking',39,'existing paid','used car',2569,'500<=X<1000','1<=X<4',4,'male single',none,4,car,24,none,own,1,skilled,1,none,yes,good
+'>=200',24,'existing paid',radio/tv,5152,'<100','4<=X<7',4,'male single',none,2,car,25,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',business,1037,'100<=X<500','4<=X<7',3,'male single',none,4,'real estate',39,none,own,1,'unskilled resident',1,none,yes,good
+'<0',15,'critical/other existing credit',furniture/equipment,1478,'<100','>=7',4,'male single',none,4,car,44,none,own,2,skilled,2,yes,yes,good
+'0<=X<200',12,'critical/other existing credit',radio/tv,3573,'<100','1<=X<4',1,'female div/dep/mar',none,1,'real estate',23,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid','new car',1201,'<100','<1',4,'male single',none,1,'life insurance',26,none,own,1,skilled,1,none,yes,good
+'<0',30,'existing paid',furniture/equipment,3622,'>=1000','>=7',4,'female div/dep/mar',none,4,'life insurance',57,none,rent,2,skilled,1,yes,yes,good
+'no checking',15,'delayed previously',furniture/equipment,960,'>=1000','4<=X<7',3,'female div/dep/mar',none,2,'life insurance',30,none,own,2,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit','new car',1163,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',44,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'delayed previously','new car',1209,'<100',unemployed,4,'male single',none,4,'life insurance',47,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',12,'existing paid',radio/tv,3077,'<100','1<=X<4',2,'male single',none,4,car,52,none,own,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid','new car',3757,'<100','>=7',4,'female div/dep/mar','co applicant',4,'no known property',62,none,'for free',1,skilled,1,yes,yes,good
+'no checking',10,'existing paid','new car',1418,'100<=X<500','1<=X<4',3,'male single',none,2,'real estate',35,none,rent,1,'unskilled resident',1,none,no,good
+'no checking',6,'existing paid','new car',3518,'<100','1<=X<4',2,'male single',guarantor,3,'life insurance',26,none,rent,1,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,1934,'<100','>=7',2,'male single',none,2,'no known property',26,none,own,2,skilled,1,none,yes,good
+'0<=X<200',27,'no credits/all paid',business,8318,'<100','>=7',2,'female div/dep/mar',none,4,'no known property',42,none,'for free',2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',6,'critical/other existing credit',radio/tv,1237,'100<=X<500','1<=X<4',1,'female div/dep/mar',none,1,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'0<=X<200',6,'existing paid',radio/tv,368,'no known savings','>=7',4,'male single',none,4,'life insurance',38,none,own,1,skilled,1,none,yes,good
+'<0',12,'critical/other existing credit','new car',2122,'<100','1<=X<4',3,'male single',none,2,'real estate',39,none,rent,2,'unskilled resident',2,none,no,good
+'<0',24,'existing paid',furniture/equipment,2996,'no known savings','1<=X<4',2,'male mar/wid',none,4,car,20,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',36,'existing paid',furniture/equipment,9034,'100<=X<500','<1',4,'male single','co applicant',1,'no known property',29,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit',furniture/equipment,1585,'<100','4<=X<7',4,'male single',none,3,'life insurance',40,none,own,2,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,1301,'<100','>=7',4,'male mar/wid',guarantor,2,'real estate',32,none,own,1,'unskilled resident',1,none,yes,good
+'>=200',6,'critical/other existing credit','new car',1323,'100<=X<500','>=7',2,'male div/sep',none,4,car,28,none,own,2,skilled,2,yes,yes,good
+'<0',24,'existing paid','new car',3123,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',27,none,own,1,skilled,1,none,yes,bad
+'<0',36,'existing paid','used car',5493,'<100','>=7',2,'male single',none,4,'no known property',42,none,'for free',1,skilled,2,none,yes,good
+'>=200',9,'existing paid',radio/tv,1126,'100<=X<500','>=7',2,'male div/sep',none,4,'real estate',49,none,own,1,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit',radio/tv,1216,'100<=X<500','<1',4,'male single',none,4,'no known property',38,bank,own,2,skilled,2,none,yes,bad
+'<0',24,'existing paid','new car',1207,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,skilled,1,none,yes,bad
+'no checking',10,'existing paid','new car',1309,'no known savings','1<=X<4',4,'male single',guarantor,4,'life insurance',27,none,own,1,'unskilled resident',1,none,yes,bad
+'>=200',15,'critical/other existing credit','used car',2360,'500<=X<1000','1<=X<4',2,'male single',none,2,car,36,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',15,'all paid','new car',6850,'100<=X<500',unemployed,1,'male single',none,2,'life insurance',34,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,bad
+'no checking',24,'existing paid',radio/tv,1413,'<100','1<=X<4',4,'male mar/wid',none,2,'life insurance',28,none,own,1,skilled,1,none,yes,good
+'no checking',39,'existing paid','used car',8588,'100<=X<500','>=7',4,'male single',none,2,car,45,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid','new car',759,'<100','4<=X<7',4,'male single',none,2,'real estate',26,none,own,1,skilled,1,none,yes,bad
+'no checking',36,'existing paid','used car',4686,'<100','1<=X<4',2,'male single',none,2,'no known property',32,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',15,'existing paid',business,2687,'<100','4<=X<7',2,'male single',none,4,'life insurance',26,none,rent,1,skilled,1,yes,yes,good
+'0<=X<200',12,'delayed previously',radio/tv,585,'<100','1<=X<4',4,'male mar/wid','co applicant',4,'real estate',20,none,rent,2,skilled,1,none,yes,good
+'no checking',24,'existing paid','new car',2255,'no known savings','<1',4,'male single',none,1,'life insurance',54,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit','new car',609,'<100','4<=X<7',4,'female div/dep/mar',none,3,'life insurance',37,none,own,2,skilled,1,none,no,good
+'<0',6,'critical/other existing credit','new car',1361,'<100','<1',2,'male single',none,4,'real estate',40,none,own,1,'unskilled resident',2,none,no,good
+'no checking',36,'critical/other existing credit',furniture/equipment,7127,'<100','<1',2,'female div/dep/mar',none,4,'life insurance',23,none,rent,2,skilled,1,yes,yes,bad
+'<0',6,'existing paid','new car',1203,'100<=X<500','>=7',3,'male single',none,2,'life insurance',43,none,own,1,skilled,1,yes,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,700,'no known savings','>=7',4,'male single',none,4,'no known property',36,none,'for free',2,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',repairs,5507,'<100','>=7',3,'male single',none,4,'no known property',44,none,'for free',2,skilled,1,none,yes,good
+'<0',18,'existing paid',radio/tv,3190,'<100','1<=X<4',2,'female div/dep/mar',none,2,'real estate',24,none,own,1,skilled,1,none,yes,bad
+'<0',48,'no credits/all paid',furniture/equipment,7119,'<100','1<=X<4',3,'male single',none,4,'no known property',53,none,'for free',2,skilled,2,none,yes,bad
+'no checking',24,'existing paid','used car',3488,'100<=X<500','4<=X<7',3,'female div/dep/mar',none,4,car,23,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'existing paid',radio/tv,1113,'<100','1<=X<4',4,'female div/dep/mar',guarantor,4,'real estate',26,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',26,'existing paid','used car',7966,'<100','<1',2,'male single',none,3,car,30,none,own,2,skilled,1,none,yes,good
+'no checking',15,'critical/other existing credit',education,1532,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,3,car,31,none,own,1,skilled,1,none,yes,good
+'no checking',4,'critical/other existing credit',radio/tv,1503,'<100','4<=X<7',2,'male single',none,1,'real estate',42,none,own,2,'unskilled resident',2,none,yes,good
+'<0',36,'existing paid',radio/tv,2302,'<100','1<=X<4',4,'male div/sep',none,4,car,31,none,rent,1,skilled,1,none,yes,bad
+'<0',6,'existing paid','new car',662,'<100','<1',3,'male single',none,4,'real estate',41,none,own,1,'unskilled resident',2,yes,yes,good
+'0<=X<200',36,'existing paid',education,2273,'<100','4<=X<7',3,'male single',none,1,car,32,none,own,2,skilled,2,none,yes,good
+'0<=X<200',15,'existing paid','new car',2631,'100<=X<500','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,rent,2,skilled,1,yes,yes,bad
+'no checking',12,'delayed previously','used car',1503,'<100','1<=X<4',4,'male mar/wid',none,4,'real estate',41,none,rent,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,1311,'100<=X<500','4<=X<7',4,'male mar/wid',none,3,'life insurance',26,none,own,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid',radio/tv,3105,'no known savings','<1',4,'male single',none,2,car,25,none,own,2,skilled,1,none,yes,good
+'>=200',21,'critical/other existing credit',education,2319,'<100','<1',2,'male div/sep',none,1,car,33,none,rent,1,skilled,1,none,yes,bad
+'<0',6,'existing paid','new car',1374,'no known savings',unemployed,4,'female div/dep/mar',none,3,'life insurance',75,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,3612,'<100','>=7',3,'female div/dep/mar',none,4,'life insurance',37,none,own,1,skilled,1,yes,yes,good
+'<0',48,'existing paid','new car',7763,'<100','>=7',4,'male single',none,4,'no known property',42,bank,'for free',1,'high qualif/self emp/mgmt',1,none,yes,bad
+'>=200',18,'existing paid',furniture/equipment,3049,'<100','<1',1,'female div/dep/mar',none,1,'life insurance',45,stores,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1534,'<100','<1',1,'male mar/wid',none,1,'real estate',23,none,rent,1,skilled,1,none,yes,bad
+'no checking',24,'delayed previously','new car',2032,'<100','>=7',4,'male single',none,4,'no known property',60,none,'for free',2,skilled,1,yes,yes,good
+'<0',30,'existing paid',furniture/equipment,6350,'no known savings','>=7',4,'male single',none,4,'life insurance',31,none,own,1,skilled,1,none,yes,bad
+'>=200',18,'existing paid',furniture/equipment,2864,'<100','1<=X<4',2,'male single',none,1,'real estate',34,none,own,1,'unskilled resident',2,none,yes,bad
+'no checking',12,'critical/other existing credit','new car',1255,'<100','>=7',4,'male single',none,4,'real estate',61,none,own,2,'unskilled resident',1,none,yes,good
+'<0',24,'delayed previously','new car',1333,'<100',unemployed,4,'male single',none,2,'real estate',43,none,'for free',2,skilled,2,none,yes,bad
+'no checking',24,'critical/other existing credit','new car',2022,'<100','1<=X<4',4,'female div/dep/mar',none,4,car,37,none,own,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid',radio/tv,1552,'<100','4<=X<7',3,'male single',none,1,car,32,bank,own,1,skilled,2,none,yes,good
+'<0',12,'all paid',radio/tv,626,'<100','1<=X<4',4,'female div/dep/mar',none,4,'real estate',24,bank,own,1,'unskilled resident',1,none,yes,bad
+'no checking',48,'critical/other existing credit','used car',8858,'no known savings','4<=X<7',2,'male single',none,1,'no known property',35,none,'for free',2,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',repairs,996,'no known savings','4<=X<7',4,'female div/dep/mar',none,4,'real estate',23,none,own,2,skilled,1,none,yes,good
+'no checking',6,'all paid',radio/tv,1750,'500<=X<1000','>=7',2,'male single',none,4,'life insurance',45,bank,own,1,'unskilled resident',2,none,yes,good
+'<0',48,'existing paid',radio/tv,6999,'<100','4<=X<7',1,'male mar/wid',guarantor,1,'real estate',34,none,own,2,skilled,1,yes,yes,bad
+'0<=X<200',12,'critical/other existing credit','new car',1995,'100<=X<500','<1',4,'male single',none,1,car,27,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',education,1199,'<100','4<=X<7',4,'female div/dep/mar',none,4,'life insurance',67,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1331,'<100','<1',2,'male single',none,1,car,22,stores,own,1,skilled,1,none,yes,bad
+'0<=X<200',18,'no credits/all paid','new car',2278,'100<=X<500','<1',3,'female div/dep/mar',none,3,car,28,none,own,2,skilled,1,none,yes,bad
+'no checking',21,'no credits/all paid','new car',5003,'no known savings','1<=X<4',1,'female div/dep/mar',none,4,'life insurance',29,bank,own,2,skilled,1,yes,yes,bad
+'<0',24,'all paid',furniture/equipment,3552,'<100','4<=X<7',3,'male single',none,4,car,27,bank,own,1,skilled,1,none,yes,bad
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,1928,'<100','<1',2,'male single',none,2,'real estate',31,none,own,2,'unskilled resident',1,none,yes,bad
+'<0',24,'existing paid','used car',2964,'no known savings','>=7',4,'male single',none,4,'no known property',49,bank,'for free',1,skilled,2,yes,yes,good
+'<0',24,'all paid',radio/tv,1546,'<100','4<=X<7',4,'male single',guarantor,4,car,24,bank,rent,1,'unskilled resident',1,none,yes,bad
+'>=200',6,'delayed previously',radio/tv,683,'<100','<1',2,'female div/dep/mar',none,1,'life insurance',29,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid','new car',12389,'no known savings','1<=X<4',1,'male single',none,4,'no known property',37,none,'for free',1,skilled,1,yes,yes,bad
+'0<=X<200',24,'delayed previously',business,4712,'no known savings','1<=X<4',4,'male single',none,2,'life insurance',37,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',24,'delayed previously',radio/tv,1553,'100<=X<500','4<=X<7',3,'female div/dep/mar',none,2,'life insurance',23,none,rent,2,skilled,1,yes,yes,good
+'<0',12,'existing paid','new car',1372,'<100','4<=X<7',2,'male div/sep',none,3,car,36,none,own,1,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,2578,'>=1000','>=7',2,'male single',none,2,car,34,none,own,1,skilled,1,none,yes,good
+'0<=X<200',48,'existing paid',radio/tv,3979,'no known savings','4<=X<7',4,'male single',none,1,car,41,none,own,2,skilled,2,yes,yes,good
+'<0',48,'existing paid',radio/tv,6758,'<100','1<=X<4',3,'female div/dep/mar',none,2,car,31,none,own,1,skilled,1,yes,yes,bad
+'<0',24,'existing paid',furniture/equipment,3234,'<100','<1',4,'female div/dep/mar',none,4,'real estate',23,none,rent,1,'unskilled resident',1,yes,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,5954,'<100','4<=X<7',3,'male single','co applicant',2,car,38,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid','used car',5433,'no known savings',unemployed,2,'female div/dep/mar',none,4,'life insurance',26,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',15,'existing paid',business,806,'<100','1<=X<4',4,'female div/dep/mar',none,4,'life insurance',22,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'existing paid',radio/tv,1082,'<100','>=7',4,'male single',none,4,car,27,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',15,'critical/other existing credit',furniture/equipment,2788,'<100','4<=X<7',2,'female div/dep/mar','co applicant',3,car,24,bank,own,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,2930,'<100','4<=X<7',2,'female div/dep/mar',none,1,'real estate',27,none,own,1,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',education,1927,'no known savings','1<=X<4',3,'female div/dep/mar',none,2,car,33,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',36,'critical/other existing credit','new car',2820,'<100','<1',4,'male div/sep',none,4,car,27,none,own,2,skilled,1,none,yes,bad
+'no checking',24,'existing paid',retraining,937,'<100','<1',4,'male mar/wid',none,3,car,27,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',18,'critical/other existing credit','new car',1056,'<100','>=7',3,'male single',guarantor,3,'real estate',30,bank,own,2,skilled,1,none,yes,bad
+'0<=X<200',12,'critical/other existing credit','new car',3124,'<100','<1',1,'male single',none,3,'real estate',49,bank,own,2,'unskilled resident',2,none,yes,good
+'no checking',9,'existing paid',furniture/equipment,1388,'<100','1<=X<4',4,'female div/dep/mar',none,2,'real estate',26,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',36,'existing paid',repairs,2384,'<100','<1',4,'male single',none,1,'no known property',33,none,rent,1,'unskilled resident',1,none,yes,bad
+'no checking',12,'existing paid','new car',2133,'no known savings','>=7',4,'female div/dep/mar',none,4,'no known property',52,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',18,'existing paid',furniture/equipment,2039,'<100','1<=X<4',1,'female div/dep/mar',none,4,'real estate',20,bank,rent,1,skilled,1,none,yes,bad
+'<0',9,'critical/other existing credit','new car',2799,'<100','1<=X<4',2,'male single',none,2,'real estate',36,none,rent,2,skilled,2,none,yes,good
+'<0',12,'existing paid',furniture/equipment,1289,'<100','1<=X<4',4,'male single',guarantor,1,'life insurance',21,none,own,1,'unskilled resident',1,none,yes,good
+'<0',18,'existing paid','domestic appliance',1217,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',47,none,own,1,'unskilled resident',1,yes,yes,bad
+'<0',12,'critical/other existing credit',furniture/equipment,2246,'<100','>=7',3,'male single',none,3,'life insurance',60,none,own,2,skilled,1,none,yes,bad
+'<0',12,'critical/other existing credit',radio/tv,385,'<100','4<=X<7',4,'female div/dep/mar',none,3,'real estate',58,none,own,4,'unskilled resident',1,yes,yes,good
+'0<=X<200',24,'delayed previously','new car',1965,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,car,42,none,rent,2,skilled,1,yes,yes,good
+'no checking',21,'existing paid',business,1572,'>=1000','>=7',4,'female div/dep/mar',none,4,'real estate',36,bank,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid','new car',2718,'<100','1<=X<4',3,'female div/dep/mar',none,4,'life insurance',20,none,rent,1,'unskilled resident',1,yes,yes,bad
+'<0',24,'all paid',other,1358,'no known savings','>=7',4,'male single',none,3,car,40,stores,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',6,'all paid','new car',931,'100<=X<500','<1',1,'female div/dep/mar',none,1,'life insurance',32,stores,own,1,'unskilled resident',1,none,yes,bad
+'<0',24,'existing paid','new car',1442,'<100','4<=X<7',4,'female div/dep/mar',none,4,car,23,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',24,'no credits/all paid',business,4241,'<100','1<=X<4',1,'male single',none,4,'real estate',36,none,own,3,'unskilled resident',1,yes,yes,bad
+'no checking',18,'critical/other existing credit','new car',2775,'<100','4<=X<7',2,'male single',none,2,'life insurance',31,bank,own,2,skilled,1,none,yes,bad
+'no checking',24,'delayed previously',business,3863,'<100','1<=X<4',1,'male single',none,2,'no known property',32,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',7,'existing paid',radio/tv,2329,'<100','<1',1,'female div/dep/mar',guarantor,1,'real estate',45,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',furniture/equipment,918,'<100','1<=X<4',4,'female div/dep/mar',none,1,'life insurance',30,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',24,'all paid',education,1837,'<100','4<=X<7',4,'female div/dep/mar',none,4,'no known property',34,bank,'for free',1,'unskilled resident',1,none,yes,bad
+'no checking',36,'existing paid',furniture/equipment,3349,'<100','1<=X<4',4,'female div/dep/mar',none,2,car,28,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'>=200',10,'existing paid',furniture/equipment,1275,'<100','<1',4,'female div/dep/mar',none,2,'life insurance',23,none,own,1,skilled,1,none,yes,good
+'<0',24,'all paid',furniture/equipment,2828,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',22,stores,own,1,skilled,1,yes,yes,good
+'no checking',24,'critical/other existing credit',business,4526,'<100','1<=X<4',3,'male single',none,2,'real estate',74,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',36,'existing paid',radio/tv,2671,'100<=X<500','1<=X<4',4,'female div/dep/mar','co applicant',4,'no known property',50,none,'for free',1,skilled,1,none,yes,bad
+'no checking',18,'existing paid',radio/tv,2051,'<100','<1',4,'male single',none,1,'real estate',33,none,own,1,skilled,1,none,yes,good
+'no checking',15,'existing paid','used car',1300,'no known savings','>=7',4,'male single',none,4,'no known property',45,bank,'for free',1,skilled,2,none,yes,good
+'<0',12,'existing paid','domestic appliance',741,'100<=X<500',unemployed,4,'female div/dep/mar',none,3,'life insurance',22,none,own,1,skilled,1,none,yes,bad
+'>=200',10,'existing paid','new car',1240,'100<=X<500','>=7',1,'female div/dep/mar',none,4,'no known property',48,none,'for free',1,'unskilled resident',2,none,yes,bad
+'<0',21,'existing paid',radio/tv,3357,'>=1000','<1',4,'female div/dep/mar',none,2,car,29,bank,own,1,skilled,1,none,yes,good
+'<0',24,'all paid','used car',3632,'<100','1<=X<4',1,'female div/dep/mar',guarantor,4,car,22,bank,rent,1,skilled,1,none,no,good
+'no checking',18,'delayed previously',furniture/equipment,1808,'<100','4<=X<7',4,'female div/dep/mar',none,1,'real estate',22,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',48,'no credits/all paid',business,12204,'no known savings','1<=X<4',2,'male single',none,2,car,48,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',60,'delayed previously',radio/tv,9157,'no known savings','1<=X<4',2,'male single',none,2,'no known property',27,none,'for free',1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',6,'critical/other existing credit','new car',3676,'<100','1<=X<4',1,'male single',none,3,'real estate',37,none,rent,3,skilled,2,none,yes,good
+'0<=X<200',30,'existing paid',furniture/equipment,3441,'100<=X<500','1<=X<4',2,'female div/dep/mar','co applicant',4,car,21,none,rent,1,skilled,1,none,yes,bad
+'no checking',12,'existing paid','new car',640,'<100','1<=X<4',4,'male div/sep',none,2,'real estate',49,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',21,'critical/other existing credit',business,3652,'<100','4<=X<7',2,'male single',none,3,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit','new car',1530,'<100','1<=X<4',3,'male single',none,2,'life insurance',32,bank,own,2,skilled,1,none,yes,bad
+'no checking',48,'existing paid',business,3914,'no known savings','1<=X<4',4,'male div/sep',none,2,'real estate',38,bank,own,1,skilled,1,none,yes,bad
+'<0',12,'existing paid',furniture/equipment,1858,'<100','<1',4,'female div/dep/mar',none,1,car,22,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid',radio/tv,2600,'<100','1<=X<4',4,'male single',none,4,'no known property',65,none,'for free',2,skilled,1,none,yes,bad
+'no checking',15,'existing paid',radio/tv,1979,'no known savings','>=7',4,'male single',none,2,car,35,none,own,1,skilled,1,none,yes,good
+'>=200',6,'existing paid',furniture/equipment,2116,'<100','1<=X<4',2,'male single',none,2,'real estate',41,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',9,'all paid','new car',1437,'100<=X<500','4<=X<7',2,'male single',none,3,'no known property',29,none,own,1,skilled,1,none,yes,bad
+'no checking',42,'critical/other existing credit',furniture/equipment,4042,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',36,none,own,2,skilled,1,yes,yes,good
+'no checking',9,'existing paid',education,3832,'no known savings','>=7',1,'male single',none,4,'real estate',64,none,own,1,'unskilled resident',1,none,yes,good
+'<0',24,'existing paid',radio/tv,3660,'<100','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,own,1,skilled,1,none,yes,good
+'<0',18,'all paid',furniture/equipment,1553,'<100','1<=X<4',4,'male single',none,3,car,44,bank,own,1,skilled,1,none,yes,bad
+'0<=X<200',15,'existing paid',radio/tv,1444,'no known savings','<1',4,'male single',none,1,'life insurance',23,none,own,1,skilled,1,none,yes,good
+'no checking',9,'existing paid',furniture/equipment,1980,'<100','<1',2,'female div/dep/mar','co applicant',2,car,19,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',24,'existing paid','new car',1355,'<100','<1',3,'female div/dep/mar',none,4,car,25,none,own,1,'unskilled resident',1,yes,yes,bad
+'no checking',12,'existing paid',education,1393,'<100','>=7',4,'male single',none,4,'life insurance',47,bank,own,3,skilled,2,yes,yes,good
+'no checking',24,'existing paid',radio/tv,1376,'500<=X<1000','4<=X<7',4,'female div/dep/mar',none,1,car,28,none,own,1,skilled,1,none,yes,good
+'no checking',60,'delayed previously',radio/tv,15653,'<100','4<=X<7',2,'male single',none,4,car,21,none,own,2,skilled,1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,1493,'<100','<1',4,'female div/dep/mar',none,3,car,34,none,own,1,skilled,2,none,yes,good
+'<0',42,'delayed previously',radio/tv,4370,'<100','4<=X<7',3,'male single',none,2,'life insurance',26,bank,own,2,skilled,2,yes,yes,bad
+'<0',18,'existing paid',education,750,'<100',unemployed,4,'female div/dep/mar',none,1,'real estate',27,none,own,1,'unemp/unskilled non res',1,none,yes,bad
+'0<=X<200',15,'existing paid',repairs,1308,'<100','>=7',4,'male single',none,4,car,38,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',15,'existing paid',education,4623,'100<=X<500','1<=X<4',3,'male single',none,2,'life insurance',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit',radio/tv,1851,'<100','4<=X<7',4,'male mar/wid',guarantor,2,car,33,none,own,2,skilled,1,yes,yes,good
+'<0',18,'critical/other existing credit',radio/tv,1880,'<100','4<=X<7',4,'male mar/wid',none,1,'life insurance',32,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',36,'delayed previously',business,7980,'no known savings','<1',4,'male single',none,4,car,27,none,rent,2,skilled,1,yes,yes,bad
+'<0',30,'no credits/all paid',furniture/equipment,4583,'<100','1<=X<4',2,'male div/sep',guarantor,2,'real estate',32,none,own,2,skilled,1,none,yes,good
+'no checking',12,'existing paid','new car',1386,'500<=X<1000','1<=X<4',2,'female div/dep/mar',none,2,'life insurance',26,none,own,1,skilled,1,none,yes,bad
+'>=200',24,'existing paid','new car',947,'<100','4<=X<7',4,'male single',none,3,'no known property',38,bank,'for free',1,skilled,2,none,yes,bad
+'<0',12,'existing paid',education,684,'<100','1<=X<4',4,'male single',none,4,car,40,none,rent,1,'unskilled resident',2,none,yes,bad
+'<0',48,'existing paid',education,7476,'<100','4<=X<7',4,'male single',none,1,'no known property',50,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',12,'existing paid',furniture/equipment,1922,'<100','1<=X<4',4,'male single',none,2,'life insurance',37,none,own,1,'unskilled resident',1,none,yes,bad
+'<0',24,'existing paid','new car',2303,'<100','>=7',4,'male single','co applicant',1,'real estate',45,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',36,'delayed previously','new car',8086,'100<=X<500','>=7',2,'male single',none,4,car,42,none,own,4,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit','used car',2346,'<100','4<=X<7',4,'male single',none,3,car,35,none,own,2,skilled,1,yes,yes,good
+'<0',14,'existing paid','new car',3973,'<100',unemployed,1,'male single',none,4,'no known property',22,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',888,'<100','>=7',4,'male single',none,4,car,41,bank,own,1,'unskilled resident',2,none,yes,bad
+'no checking',48,'existing paid',radio/tv,10222,'no known savings','4<=X<7',4,'male single',none,3,car,37,stores,own,1,skilled,1,yes,yes,good
+'0<=X<200',30,'no credits/all paid',business,4221,'<100','1<=X<4',2,'female div/dep/mar',none,1,car,28,none,own,2,skilled,1,none,yes,good
+'0<=X<200',18,'critical/other existing credit',furniture/equipment,6361,'<100','>=7',2,'male single',none,1,'no known property',41,none,own,1,skilled,1,yes,yes,good
+'>=200',12,'existing paid',radio/tv,1297,'<100','1<=X<4',3,'male mar/wid',none,4,'real estate',23,none,rent,1,skilled,1,none,yes,good
+'<0',12,'existing paid','new car',900,'no known savings','1<=X<4',4,'male mar/wid',none,2,car,23,none,own,1,skilled,1,none,yes,bad
+'no checking',21,'existing paid',furniture/equipment,2241,'<100','>=7',4,'male single',none,2,'real estate',50,none,own,2,skilled,1,none,yes,good
+'0<=X<200',6,'delayed previously',furniture/equipment,1050,'<100',unemployed,4,'male single',none,1,'life insurance',35,stores,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',6,'critical/other existing credit',education,1047,'<100','1<=X<4',2,'female div/dep/mar',none,4,'life insurance',50,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',24,'critical/other existing credit',other,6314,'<100',unemployed,4,'male single','co applicant',2,'no known property',27,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',30,'all paid',furniture/equipment,3496,'>=1000','1<=X<4',4,'male single',none,2,car,34,stores,own,1,skilled,2,yes,yes,good
+'no checking',48,'all paid',business,3609,'<100','1<=X<4',1,'female div/dep/mar',none,1,'real estate',27,stores,own,1,skilled,1,none,yes,good
+'<0',12,'critical/other existing credit','new car',4843,'<100','>=7',3,'male single','co applicant',4,'life insurance',43,none,rent,2,skilled,1,yes,yes,bad
+'>=200',30,'critical/other existing credit',radio/tv,3017,'<100','>=7',4,'male single',none,4,'life insurance',47,none,own,1,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',business,4139,'100<=X<500','1<=X<4',3,'male single',none,3,'life insurance',27,none,own,2,'unskilled resident',1,yes,yes,good
+'no checking',36,'existing paid',business,5742,'100<=X<500','4<=X<7',2,'male single',none,2,car,31,none,own,2,skilled,1,yes,yes,good
+'no checking',60,'existing paid','new car',10366,'<100','>=7',2,'male single',none,4,'life insurance',42,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',6,'critical/other existing credit','new car',2080,'500<=X<1000','1<=X<4',1,'male mar/wid',none,2,car,24,none,own,1,skilled,1,none,yes,good
+'no checking',21,'delayed previously',business,2580,'500<=X<1000','<1',4,'male single',none,2,'real estate',41,bank,own,1,'unskilled resident',2,none,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,4530,'<100','4<=X<7',4,'female div/dep/mar',none,4,car,26,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'critical/other existing credit',furniture/equipment,5150,'<100','>=7',4,'male single',none,4,car,33,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',72,'existing paid',radio/tv,5595,'100<=X<500','1<=X<4',2,'male mar/wid',none,2,car,24,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',radio/tv,2384,'<100','>=7',4,'male single',none,4,'real estate',64,bank,rent,1,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',radio/tv,1453,'<100','<1',3,'female div/dep/mar',none,1,'real estate',26,none,own,1,skilled,1,none,yes,good
+'no checking',6,'existing paid',education,1538,'<100','<1',1,'female div/dep/mar',none,2,'no known property',56,none,own,1,skilled,1,none,yes,good
+'no checking',12,'existing paid',radio/tv,2279,'no known savings','1<=X<4',4,'male single',none,4,'no known property',37,none,'for free',1,skilled,1,yes,yes,good
+'no checking',15,'delayed previously',radio/tv,1478,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',33,bank,own,2,skilled,1,none,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,5103,'<100','<1',3,'male mar/wid',none,3,'no known property',47,none,'for free',3,skilled,1,yes,yes,good
+'0<=X<200',36,'delayed previously',business,9857,'100<=X<500','4<=X<7',1,'male single',none,3,'life insurance',31,none,own,2,'unskilled resident',2,yes,yes,good
+'no checking',60,'existing paid','new car',6527,'no known savings','1<=X<4',4,'male single',none,4,'no known property',34,none,'for free',1,skilled,2,yes,yes,good
+'>=200',10,'critical/other existing credit',radio/tv,1347,'no known savings','4<=X<7',4,'male single',none,2,'life insurance',27,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',36,'delayed previously','new car',2862,'100<=X<500','>=7',4,'male single',none,3,'no known property',30,none,'for free',1,skilled,1,none,yes,good
+'no checking',9,'existing paid',radio/tv,2753,'100<=X<500','>=7',3,'male single','co applicant',4,car,35,none,own,1,skilled,1,yes,yes,good
+'<0',12,'existing paid','new car',3651,'>=1000','1<=X<4',1,'male single',none,3,'life insurance',31,none,own,1,skilled,2,none,yes,good
+'<0',15,'critical/other existing credit',furniture/equipment,975,'<100','1<=X<4',2,'male div/sep',none,3,'life insurance',25,none,own,2,skilled,1,none,yes,good
+'0<=X<200',15,'existing paid',repairs,2631,'100<=X<500','1<=X<4',3,'female div/dep/mar',none,2,'real estate',25,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',24,'existing paid',radio/tv,2896,'100<=X<500','<1',2,'male single',none,1,car,29,none,own,1,skilled,1,none,yes,good
+'<0',6,'critical/other existing credit','new car',4716,'no known savings','<1',1,'male single',none,3,'real estate',44,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',24,'existing paid',radio/tv,2284,'<100','4<=X<7',4,'male single',none,2,car,28,none,own,1,skilled,1,yes,yes,good
+'no checking',6,'existing paid','used car',1236,'500<=X<1000','1<=X<4',2,'male single',none,4,'life insurance',50,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1103,'<100','4<=X<7',4,'male single',guarantor,3,'real estate',29,none,own,2,skilled,1,none,no,good
+'no checking',12,'critical/other existing credit','new car',926,'<100',unemployed,1,'female div/dep/mar',none,2,'life insurance',38,none,own,1,'unemp/unskilled non res',1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1800,'<100','1<=X<4',4,'male single',none,2,car,24,none,own,2,skilled,1,none,yes,good
+'>=200',15,'existing paid',education,1905,'<100','>=7',4,'male single',none,4,car,40,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1123,'500<=X<1000','1<=X<4',4,'female div/dep/mar',none,4,car,29,none,rent,1,'unskilled resident',1,none,yes,bad
+'<0',48,'critical/other existing credit','used car',6331,'<100','>=7',4,'male single',none,4,'no known property',46,none,'for free',2,skilled,1,yes,yes,bad
+'>=200',24,'existing paid',radio/tv,1377,'100<=X<500','>=7',4,'female div/dep/mar',none,2,'no known property',47,none,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',30,'delayed previously',business,2503,'100<=X<500','>=7',4,'male single',none,2,'life insurance',41,stores,own,2,skilled,1,none,yes,good
+'0<=X<200',27,'existing paid',business,2528,'<100','<1',4,'female div/dep/mar',none,1,'life insurance',32,none,own,1,skilled,2,yes,yes,good
+'no checking',15,'existing paid','new car',5324,'500<=X<1000','>=7',1,'female div/dep/mar',none,4,'no known property',35,none,'for free',1,skilled,1,none,yes,good
+'0<=X<200',48,'existing paid','new car',6560,'100<=X<500','4<=X<7',3,'male single',none,2,'life insurance',24,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',12,'no credits/all paid',furniture/equipment,2969,'<100','<1',4,'female div/dep/mar',none,3,'life insurance',25,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',9,'existing paid',radio/tv,1206,'<100','>=7',4,'female div/dep/mar',none,4,'real estate',25,none,own,1,skilled,1,none,yes,good
+'0<=X<200',9,'existing paid',radio/tv,2118,'<100','1<=X<4',2,'male single',none,2,'real estate',37,none,own,1,'unskilled resident',2,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,629,'500<=X<1000','>=7',4,'male single',none,3,'life insurance',32,bank,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',6,'all paid',education,1198,'<100','>=7',4,'female div/dep/mar',none,4,'no known property',35,none,'for free',1,skilled,1,none,yes,bad
+'no checking',21,'existing paid','used car',2476,'no known savings','>=7',4,'male single',none,4,'real estate',46,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',9,'critical/other existing credit',radio/tv,1138,'<100','1<=X<4',4,'male single',none,4,'real estate',25,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',60,'existing paid','new car',14027,'<100','4<=X<7',4,'male single',none,2,'no known property',27,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',30,'critical/other existing credit','used car',7596,'no known savings','>=7',1,'male single',none,4,car,63,none,own,2,skilled,1,none,yes,good
+'no checking',30,'critical/other existing credit',radio/tv,3077,'no known savings','>=7',3,'male single',none,2,car,40,none,own,2,skilled,2,yes,yes,good
+'no checking',18,'existing paid',radio/tv,1505,'<100','1<=X<4',4,'male single',none,2,'no known property',32,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',24,'critical/other existing credit',radio/tv,3148,'no known savings','1<=X<4',3,'male single',none,2,car,31,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',20,'no credits/all paid','used car',6148,'100<=X<500','>=7',3,'male mar/wid',none,4,car,31,bank,own,2,skilled,1,yes,yes,good
+'>=200',9,'no credits/all paid',radio/tv,1337,'<100','<1',4,'male single',none,2,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'0<=X<200',6,'all paid',education,433,'>=1000','<1',4,'female div/dep/mar',none,2,'life insurance',24,bank,rent,1,skilled,2,none,yes,bad
+'<0',12,'existing paid','new car',1228,'<100','1<=X<4',4,'female div/dep/mar',none,2,'real estate',24,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',9,'existing paid',radio/tv,790,'500<=X<1000','1<=X<4',4,'female div/dep/mar',none,3,'real estate',66,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',27,'existing paid','new car',2570,'<100','1<=X<4',3,'female div/dep/mar',none,3,'real estate',21,none,rent,1,skilled,1,none,yes,bad
+'no checking',6,'critical/other existing credit','new car',250,'>=1000','1<=X<4',2,'female div/dep/mar',none,2,'real estate',41,bank,own,2,'unskilled resident',1,none,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1316,'500<=X<1000','1<=X<4',2,'male mar/wid',none,2,'life insurance',47,none,own,2,'unskilled resident',1,none,yes,good
+'<0',18,'existing paid',radio/tv,1882,'<100','1<=X<4',4,'female div/dep/mar',none,4,car,25,bank,rent,2,skilled,1,none,yes,bad
+'0<=X<200',48,'all paid',business,6416,'<100','>=7',4,'female div/dep/mar',none,3,'no known property',59,none,rent,1,skilled,1,none,yes,bad
+'>=200',24,'critical/other existing credit',business,1275,'>=1000','1<=X<4',2,'male div/sep',none,4,'real estate',36,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',24,'delayed previously',radio/tv,6403,'<100','<1',1,'male single',none,2,car,33,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid',radio/tv,1987,'<100','1<=X<4',2,'male single',none,4,'real estate',21,none,rent,1,'unskilled resident',2,none,yes,bad
+'0<=X<200',8,'existing paid',radio/tv,760,'<100','4<=X<7',4,'female div/dep/mar',guarantor,2,'real estate',44,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',24,'existing paid','used car',2603,'>=1000','1<=X<4',2,'female div/dep/mar',none,4,car,28,none,rent,1,skilled,1,yes,yes,good
+'no checking',4,'critical/other existing credit','new car',3380,'<100','4<=X<7',1,'female div/dep/mar',none,1,'real estate',37,none,own,1,skilled,2,none,yes,good
+'0<=X<200',36,'all paid','domestic appliance',3990,'no known savings','<1',3,'female div/dep/mar',none,2,'no known property',29,bank,own,1,'unemp/unskilled non res',1,none,yes,good
+'0<=X<200',24,'existing paid','used car',11560,'<100','1<=X<4',1,'female div/dep/mar',none,4,car,23,none,rent,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'<0',18,'existing paid','new car',4380,'100<=X<500','1<=X<4',3,'male single',none,4,car,35,none,own,1,'unskilled resident',2,yes,yes,good
+'no checking',6,'critical/other existing credit','new car',6761,'<100','4<=X<7',1,'male single',none,3,'no known property',45,none,own,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'0<=X<200',30,'no credits/all paid',business,4280,'100<=X<500','1<=X<4',4,'female div/dep/mar',none,4,car,26,none,rent,2,'unskilled resident',1,none,yes,bad
+'<0',24,'all paid','new car',2325,'100<=X<500','4<=X<7',2,'male single',none,3,car,32,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',10,'all paid',radio/tv,1048,'<100','1<=X<4',4,'male single',none,4,'real estate',23,stores,own,1,'unskilled resident',1,none,yes,good
+'no checking',21,'existing paid',radio/tv,3160,'no known savings','>=7',4,'male single',none,3,'life insurance',41,none,own,1,skilled,1,yes,yes,good
+'<0',24,'all paid',furniture/equipment,2483,'500<=X<1000','1<=X<4',4,'male single',none,4,'real estate',22,stores,own,1,skilled,1,yes,yes,good
+'<0',39,'critical/other existing credit',furniture/equipment,14179,'no known savings','4<=X<7',4,'male single',none,4,'life insurance',30,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',13,'critical/other existing credit',business,1797,'<100','<1',3,'male single',none,1,'life insurance',28,bank,own,2,'unskilled resident',1,none,yes,good
+'<0',15,'existing paid','new car',2511,'<100',unemployed,1,'female div/dep/mar',none,4,car,23,none,rent,1,skilled,1,none,yes,good
+'<0',12,'existing paid','new car',1274,'<100','<1',3,'female div/dep/mar',none,1,'real estate',37,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',21,'existing paid','used car',5248,'no known savings','1<=X<4',1,'male single',none,3,car,26,none,own,1,skilled,1,none,yes,good
+'no checking',15,'existing paid','used car',3029,'<100','4<=X<7',2,'male single',none,2,car,33,none,own,1,skilled,1,none,yes,good
+'<0',6,'existing paid',furniture/equipment,428,'<100','>=7',2,'female div/dep/mar',none,1,'life insurance',49,bank,own,1,skilled,1,yes,yes,good
+'<0',18,'existing paid','new car',976,'<100','<1',1,'female div/dep/mar',none,2,car,23,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',12,'existing paid',business,841,'100<=X<500','4<=X<7',2,'female div/dep/mar',none,4,'real estate',23,none,rent,1,'unskilled resident',1,none,yes,good
+'no checking',30,'critical/other existing credit',radio/tv,5771,'<100','4<=X<7',4,'female div/dep/mar',none,2,car,25,none,own,2,skilled,1,none,yes,good
+'no checking',12,'delayed previously',repairs,1555,'>=1000','>=7',4,'male single',none,4,'no known property',55,none,'for free',2,skilled,2,none,yes,bad
+'<0',24,'existing paid','new car',1285,'no known savings','4<=X<7',4,'female div/dep/mar',none,4,'no known property',32,none,rent,1,skilled,1,none,yes,bad
+'>=200',6,'critical/other existing credit','new car',1299,'<100','1<=X<4',1,'male single',none,1,'real estate',74,none,own,3,'unemp/unskilled non res',2,none,no,good
+'>=200',15,'critical/other existing credit',radio/tv,1271,'no known savings','1<=X<4',3,'male single',none,4,'no known property',39,none,'for free',2,skilled,1,yes,yes,bad
+'no checking',24,'existing paid','new car',1393,'<100','1<=X<4',2,'male single',guarantor,2,'real estate',31,none,own,1,skilled,1,yes,yes,good
+'<0',12,'critical/other existing credit','new car',691,'<100','>=7',4,'male single',none,3,'life insurance',35,none,own,2,skilled,1,none,yes,bad
+'no checking',15,'critical/other existing credit','new car',5045,'no known savings','>=7',1,'female div/dep/mar',none,4,car,59,none,own,1,skilled,1,yes,yes,good
+'<0',18,'critical/other existing credit',furniture/equipment,2124,'<100','1<=X<4',4,'female div/dep/mar',none,4,'real estate',24,none,rent,2,skilled,1,none,yes,bad
+'<0',12,'existing paid',radio/tv,2214,'<100','1<=X<4',4,'male single',none,3,'life insurance',24,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',21,'critical/other existing credit','new car',12680,'no known savings','>=7',4,'male single',none,4,'no known property',30,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',24,'critical/other existing credit','new car',2463,'100<=X<500','4<=X<7',4,'male mar/wid',none,3,'life insurance',27,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',12,'existing paid',radio/tv,1155,'<100','>=7',3,'male mar/wid',guarantor,3,'real estate',40,bank,own,2,'unskilled resident',1,none,yes,good
+'<0',30,'existing paid',furniture/equipment,3108,'<100','<1',2,'male div/sep',none,4,'life insurance',31,none,own,1,'unskilled resident',1,none,yes,bad
+'no checking',10,'existing paid','used car',2901,'no known savings','<1',1,'female div/dep/mar',none,4,'real estate',31,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',12,'critical/other existing credit',furniture/equipment,3617,'<100','>=7',1,'male single',none,4,car,28,none,rent,3,skilled,1,yes,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,1655,'<100','>=7',2,'male single',none,4,'real estate',63,none,own,2,'unskilled resident',1,yes,yes,good
+'<0',24,'existing paid','used car',2812,'no known savings','>=7',2,'female div/dep/mar',none,4,'real estate',26,none,rent,1,skilled,1,none,yes,good
+'<0',36,'critical/other existing credit',education,8065,'<100','1<=X<4',3,'female div/dep/mar',none,2,'no known property',25,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',21,'critical/other existing credit','used car',3275,'<100','>=7',1,'male single',none,4,car,36,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2223,'100<=X<500','>=7',4,'male single',none,4,'life insurance',52,bank,own,2,skilled,1,none,yes,good
+'>=200',12,'critical/other existing credit','new car',1480,'500<=X<1000',unemployed,2,'male single',none,4,'no known property',66,bank,'for free',3,'unemp/unskilled non res',1,none,yes,good
+'<0',24,'existing paid','new car',1371,'no known savings','1<=X<4',4,'female div/dep/mar',none,4,'real estate',25,none,rent,1,skilled,1,none,yes,bad
+'no checking',36,'critical/other existing credit','new car',3535,'<100','4<=X<7',4,'male single',none,4,car,37,none,own,2,skilled,1,yes,yes,good
+'<0',18,'existing paid',radio/tv,3509,'<100','4<=X<7',4,'female div/dep/mar',guarantor,1,'real estate',25,none,own,1,skilled,1,none,yes,good
+'no checking',36,'critical/other existing credit','used car',5711,'>=1000','>=7',4,'male single',none,2,car,38,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'existing paid',repairs,3872,'<100',unemployed,2,'female div/dep/mar',none,4,car,67,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',39,'critical/other existing credit',radio/tv,4933,'<100','4<=X<7',2,'male single',guarantor,2,'real estate',25,none,own,2,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit','new car',1940,'>=1000','>=7',4,'male single',none,4,'real estate',60,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',12,'no credits/all paid',retraining,1410,'<100','1<=X<4',2,'male single',none,2,'real estate',31,none,own,1,'unskilled resident',1,yes,yes,good
+'0<=X<200',12,'existing paid','new car',836,'100<=X<500','<1',4,'female div/dep/mar',none,2,'life insurance',23,bank,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',20,'existing paid','used car',6468,'no known savings',unemployed,1,'male div/sep',none,4,'real estate',60,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',18,'existing paid',business,1941,'>=1000','1<=X<4',4,'male single',none,2,'life insurance',35,none,own,1,'unskilled resident',1,yes,yes,good
+'no checking',22,'existing paid',radio/tv,2675,'500<=X<1000','>=7',3,'male single',none,4,car,40,none,own,1,skilled,1,none,yes,good
+'no checking',48,'critical/other existing credit','used car',2751,'no known savings','>=7',4,'male single',none,3,car,38,none,own,2,skilled,2,yes,yes,good
+'0<=X<200',48,'delayed previously',education,6224,'<100','>=7',4,'male single',none,4,'no known property',50,none,'for free',1,skilled,1,none,yes,bad
+'<0',40,'critical/other existing credit',education,5998,'<100','1<=X<4',4,'male single',none,3,'no known property',27,bank,own,1,skilled,1,yes,yes,bad
+'0<=X<200',21,'existing paid',business,1188,'<100','>=7',2,'female div/dep/mar',none,4,'life insurance',39,none,own,1,skilled,2,none,yes,bad
+'no checking',24,'existing paid','used car',6313,'no known savings','>=7',3,'male single',none,4,car,41,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',6,'critical/other existing credit',furniture/equipment,1221,'no known savings','1<=X<4',1,'male mar/wid',none,2,'life insurance',27,none,own,2,skilled,1,none,yes,good
+'>=200',24,'existing paid',furniture/equipment,2892,'<100','>=7',3,'male div/sep',none,4,'no known property',51,none,'for free',1,skilled,1,none,yes,good
+'no checking',24,'existing paid',furniture/equipment,3062,'500<=X<1000','>=7',4,'male single',none,3,'no known property',32,none,rent,1,skilled,1,yes,yes,good
+'no checking',9,'existing paid',furniture/equipment,2301,'100<=X<500','<1',2,'female div/dep/mar',none,4,'life insurance',22,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid','used car',7511,'no known savings','>=7',1,'male single',none,4,'life insurance',51,none,'for free',1,skilled,2,yes,yes,bad
+'no checking',12,'critical/other existing credit',furniture/equipment,1258,'<100','<1',2,'female div/dep/mar',none,4,'life insurance',22,none,rent,2,'unskilled resident',1,none,yes,good
+'no checking',24,'delayed previously','new car',717,'no known savings','>=7',4,'male mar/wid',none,4,car,54,none,own,2,skilled,1,yes,yes,good
+'0<=X<200',9,'existing paid','new car',1549,'no known savings','<1',4,'male single',none,2,'real estate',35,none,own,1,'unemp/unskilled non res',1,none,yes,good
+'no checking',24,'critical/other existing credit',education,1597,'<100','>=7',4,'male single',none,4,'no known property',54,none,'for free',2,skilled,2,none,yes,good
+'0<=X<200',18,'critical/other existing credit',radio/tv,1795,'<100','>=7',3,'female div/dep/mar',guarantor,4,'real estate',48,bank,rent,2,'unskilled resident',1,yes,yes,good
+'<0',20,'critical/other existing credit',furniture/equipment,4272,'<100','>=7',1,'female div/dep/mar',none,4,'life insurance',24,none,own,2,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,976,'no known savings','>=7',4,'male single',none,4,car,35,none,own,2,skilled,1,none,yes,good
+'0<=X<200',12,'existing paid','new car',7472,'no known savings',unemployed,1,'female div/dep/mar',none,2,'real estate',24,none,rent,1,'unemp/unskilled non res',1,none,yes,good
+'<0',36,'existing paid','new car',9271,'<100','4<=X<7',2,'male single',none,1,car,24,none,own,1,skilled,1,yes,yes,bad
+'0<=X<200',6,'existing paid',radio/tv,590,'<100','<1',3,'male mar/wid',none,3,'real estate',26,none,own,1,'unskilled resident',1,none,no,good
+'no checking',12,'critical/other existing credit',radio/tv,930,'no known savings','>=7',4,'male single',none,4,'real estate',65,none,own,4,skilled,1,none,yes,good
+'0<=X<200',42,'all paid','used car',9283,'<100',unemployed,1,'male single',none,2,'no known property',55,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',15,'no credits/all paid','new car',1778,'<100','<1',2,'female div/dep/mar',none,1,'real estate',26,none,rent,2,'unemp/unskilled non res',1,none,yes,bad
+'0<=X<200',8,'existing paid',business,907,'<100','<1',3,'male mar/wid',none,2,'real estate',26,none,own,1,skilled,1,yes,yes,good
+'0<=X<200',6,'existing paid',radio/tv,484,'<100','4<=X<7',3,'male mar/wid',guarantor,3,'real estate',28,bank,own,1,'unskilled resident',1,none,yes,good
+'<0',36,'critical/other existing credit','used car',9629,'<100','4<=X<7',4,'male single',none,4,car,24,none,own,2,skilled,1,yes,yes,bad
+'<0',48,'existing paid','domestic appliance',3051,'<100','1<=X<4',3,'male single',none,4,car,54,none,own,1,skilled,1,none,yes,bad
+'<0',48,'existing paid','new car',3931,'<100','4<=X<7',4,'male single',none,4,'no known property',46,none,'for free',1,skilled,2,none,yes,bad
+'0<=X<200',36,'delayed previously','new car',7432,'<100','1<=X<4',2,'female div/dep/mar',none,2,'life insurance',54,none,rent,1,skilled,1,none,yes,good
+'no checking',6,'existing paid','domestic appliance',1338,'500<=X<1000','1<=X<4',1,'male div/sep',none,4,'real estate',62,none,own,1,skilled,1,none,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,1554,'<100','4<=X<7',1,'female div/dep/mar',none,2,car,24,none,rent,2,skilled,1,yes,yes,good
+'<0',36,'existing paid',other,15857,'<100',unemployed,2,'male div/sep','co applicant',3,car,43,none,own,1,'high qualif/self emp/mgmt',1,none,yes,good
+'<0',18,'existing paid',radio/tv,1345,'<100','1<=X<4',4,'male mar/wid',none,3,'real estate',26,bank,own,1,skilled,1,none,yes,bad
+'no checking',12,'existing paid','new car',1101,'<100','1<=X<4',3,'male mar/wid',none,2,'real estate',27,none,own,2,skilled,1,yes,yes,good
+'>=200',12,'existing paid',radio/tv,3016,'<100','1<=X<4',3,'male mar/wid',none,1,car,24,none,own,1,skilled,1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,2712,'<100','>=7',2,'male single',none,2,'life insurance',41,bank,own,1,skilled,2,none,yes,bad
+'<0',8,'critical/other existing credit','new car',731,'<100','>=7',4,'male single',none,4,'real estate',47,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'critical/other existing credit',furniture/equipment,3780,'<100','<1',3,'male div/sep',none,2,car,35,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',21,'critical/other existing credit','new car',1602,'<100','>=7',4,'male mar/wid',none,3,car,30,none,own,2,skilled,1,yes,yes,good
+'<0',18,'critical/other existing credit','new car',3966,'<100','>=7',1,'female div/dep/mar',none,4,'real estate',33,bank,rent,3,skilled,1,yes,yes,bad
+'no checking',18,'no credits/all paid',business,4165,'<100','1<=X<4',2,'male single',none,2,car,36,stores,own,2,skilled,2,none,yes,bad
+'<0',36,'existing paid','used car',8335,'no known savings','>=7',3,'male single',none,4,'no known property',47,none,'for free',1,skilled,1,none,yes,bad
+'0<=X<200',48,'delayed previously',business,6681,'no known savings','1<=X<4',4,'male single',none,4,'no known property',38,none,'for free',1,skilled,2,yes,yes,good
+'no checking',24,'delayed previously',business,2375,'500<=X<1000','1<=X<4',4,'male single',none,2,car,44,none,own,2,skilled,2,yes,yes,good
+'<0',18,'existing paid','new car',1216,'<100','<1',4,'female div/dep/mar',none,3,car,23,none,rent,1,skilled,1,yes,yes,bad
+'<0',45,'no credits/all paid',business,11816,'<100','>=7',2,'male single',none,4,car,29,none,rent,2,skilled,1,none,yes,bad
+'0<=X<200',24,'existing paid',radio/tv,5084,'no known savings','>=7',2,'female div/dep/mar',none,4,car,42,none,own,1,skilled,1,yes,yes,good
+'>=200',15,'existing paid',radio/tv,2327,'<100','<1',2,'female div/dep/mar',none,3,'real estate',25,none,own,1,'unskilled resident',1,none,yes,bad
+'<0',12,'no credits/all paid','new car',1082,'<100','1<=X<4',4,'male single',none,4,car,48,bank,own,2,skilled,1,none,yes,bad
+'no checking',12,'existing paid',radio/tv,886,'no known savings','1<=X<4',4,'female div/dep/mar',none,2,car,21,none,own,1,skilled,1,none,yes,good
+'no checking',4,'existing paid',furniture/equipment,601,'<100','<1',1,'female div/dep/mar',none,3,'real estate',23,none,rent,1,'unskilled resident',2,none,yes,good
+'<0',24,'critical/other existing credit','used car',2957,'<100','>=7',4,'male single',none,4,'life insurance',63,none,own,2,skilled,1,yes,yes,good
+'no checking',24,'critical/other existing credit',radio/tv,2611,'<100','>=7',4,'male mar/wid','co applicant',3,'real estate',46,none,own,2,skilled,1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,5179,'<100','4<=X<7',4,'male single',none,2,'life insurance',29,none,own,1,skilled,1,none,yes,bad
+'no checking',21,'delayed previously','used car',2993,'<100','1<=X<4',3,'male single',none,2,'real estate',28,stores,own,2,'unskilled resident',1,none,yes,good
+'no checking',18,'existing paid',repairs,1943,'<100','<1',4,'female div/dep/mar',none,4,'real estate',23,none,own,1,skilled,1,none,yes,bad
+'no checking',24,'all paid',business,1559,'<100','4<=X<7',4,'male single',none,4,car,50,bank,own,1,skilled,1,yes,yes,good
+'no checking',18,'existing paid',furniture/equipment,3422,'<100','>=7',4,'male single',none,4,'life insurance',47,bank,own,3,skilled,2,yes,yes,good
+'0<=X<200',21,'existing paid',furniture/equipment,3976,'no known savings','4<=X<7',2,'male single',none,3,car,35,none,own,1,skilled,1,yes,yes,good
+'no checking',18,'existing paid','new car',6761,'no known savings','1<=X<4',2,'male single',none,4,car,68,none,rent,2,skilled,1,none,yes,bad
+'no checking',24,'existing paid','new car',1249,'<100','<1',4,'male mar/wid',none,2,'real estate',28,none,own,1,skilled,1,none,yes,good
+'<0',9,'existing paid',radio/tv,1364,'<100','4<=X<7',3,'male single',none,4,'real estate',59,none,own,1,skilled,1,none,yes,good
+'<0',12,'existing paid',radio/tv,709,'<100','>=7',4,'male single',none,4,'real estate',57,stores,own,1,'unskilled resident',1,none,yes,bad
+'<0',20,'critical/other existing credit','new car',2235,'<100','1<=X<4',4,'male mar/wid',guarantor,2,'life insurance',33,bank,rent,2,skilled,1,none,no,bad
+'no checking',24,'critical/other existing credit','used car',4042,'no known savings','4<=X<7',3,'male single',none,4,'life insurance',43,none,own,2,skilled,1,yes,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1471,'<100','1<=X<4',4,'male single',none,4,'no known property',35,none,'for free',2,skilled,1,yes,yes,good
+'<0',18,'all paid','new car',1442,'<100','4<=X<7',4,'male single',none,4,'no known property',32,none,'for free',2,'unskilled resident',2,none,yes,bad
+'no checking',36,'delayed previously','new car',10875,'<100','>=7',2,'male single',none,2,car,45,none,own,2,skilled,2,yes,yes,good
+'no checking',24,'existing paid','new car',1474,'100<=X<500','<1',4,'male mar/wid',none,3,'real estate',33,none,own,1,skilled,1,yes,yes,good
+'no checking',10,'existing paid',retraining,894,'no known savings','4<=X<7',4,'female div/dep/mar',none,3,'life insurance',40,none,own,1,skilled,1,yes,yes,good
+'no checking',15,'critical/other existing credit',furniture/equipment,3343,'<100','1<=X<4',4,'male single',none,2,'no known property',28,none,'for free',1,skilled,1,yes,yes,good
+'<0',15,'existing paid','new car',3959,'<100','1<=X<4',3,'female div/dep/mar',none,2,'life insurance',29,none,own,1,skilled,1,yes,yes,bad
+'no checking',9,'existing paid','new car',3577,'100<=X<500','1<=X<4',1,'male single',guarantor,2,'real estate',26,none,rent,1,skilled,2,none,no,good
+'no checking',24,'critical/other existing credit','used car',5804,'>=1000','1<=X<4',4,'male single',none,2,'real estate',27,none,own,2,skilled,1,none,yes,good
+'no checking',18,'delayed previously',business,2169,'<100','1<=X<4',4,'male mar/wid',none,2,car,28,none,own,1,skilled,1,yes,yes,bad
+'<0',24,'existing paid',radio/tv,2439,'<100','<1',4,'female div/dep/mar',none,4,'real estate',35,none,own,1,skilled,1,yes,yes,bad
+'no checking',27,'critical/other existing credit',furniture/equipment,4526,'>=1000','<1',4,'male single',none,2,'real estate',32,stores,own,2,'unskilled resident',2,yes,yes,good
+'no checking',10,'existing paid',furniture/equipment,2210,'<100','1<=X<4',2,'male single',none,2,'real estate',25,bank,rent,1,'unskilled resident',1,none,yes,bad
+'no checking',15,'existing paid',furniture/equipment,2221,'500<=X<1000','1<=X<4',2,'female div/dep/mar',none,4,car,20,none,rent,1,skilled,1,none,yes,good
+'<0',18,'existing paid',radio/tv,2389,'<100','<1',4,'female div/dep/mar',none,1,car,27,stores,own,1,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',furniture/equipment,3331,'<100','>=7',2,'male single',none,4,'life insurance',42,stores,own,1,skilled,1,none,yes,good
+'no checking',36,'existing paid',business,7409,'no known savings','>=7',3,'male single',none,2,'life insurance',37,none,own,2,skilled,1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,652,'<100','>=7',4,'female div/dep/mar',none,4,'life insurance',24,none,rent,1,skilled,1,none,yes,good
+'no checking',36,'delayed previously',furniture/equipment,7678,'500<=X<1000','4<=X<7',2,'female div/dep/mar',none,4,car,40,none,own,2,skilled,1,yes,yes,good
+'>=200',6,'critical/other existing credit','new car',1343,'<100','>=7',1,'male single',none,4,'real estate',46,none,own,2,skilled,2,none,no,good
+'<0',24,'critical/other existing credit',business,1382,'100<=X<500','4<=X<7',4,'male single',none,1,'real estate',26,none,own,2,skilled,1,yes,yes,good
+'no checking',15,'existing paid','domestic appliance',874,'no known savings','<1',4,'female div/dep/mar',none,1,'real estate',24,none,own,1,skilled,1,none,yes,good
+'<0',12,'existing paid',furniture/equipment,3590,'<100','1<=X<4',2,'male single','co applicant',2,'life insurance',29,none,own,1,'unskilled resident',2,none,yes,good
+'0<=X<200',11,'critical/other existing credit','new car',1322,'>=1000','1<=X<4',4,'female div/dep/mar',none,4,car,40,none,own,2,skilled,1,none,yes,good
+'<0',18,'all paid',radio/tv,1940,'<100','<1',3,'male single','co applicant',4,'no known property',36,bank,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',36,'existing paid',radio/tv,3595,'<100','>=7',4,'male single',none,2,car,28,none,own,1,skilled,1,none,yes,good
+'<0',9,'existing paid','new car',1422,'<100','<1',3,'male single',none,2,'no known property',27,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,6742,'no known savings','4<=X<7',2,'male single',none,3,'life insurance',36,none,own,2,skilled,1,none,yes,good
+'no checking',24,'existing paid','used car',7814,'<100','4<=X<7',3,'male single',none,3,car,38,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',24,'existing paid','used car',9277,'no known savings','1<=X<4',2,'male div/sep',none,4,'no known property',48,none,'for free',1,skilled,1,yes,yes,good
+'0<=X<200',30,'critical/other existing credit','new car',2181,'no known savings','>=7',4,'male single',none,4,'real estate',36,none,own,2,skilled,1,none,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1098,'<100',unemployed,4,'female div/dep/mar',none,4,car,65,none,own,2,'unemp/unskilled non res',1,none,yes,good
+'0<=X<200',24,'existing paid',furniture/equipment,4057,'<100','4<=X<7',3,'male div/sep',none,3,car,43,none,own,1,skilled,1,yes,yes,bad
+'<0',12,'existing paid',education,795,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',53,none,own,1,skilled,1,none,yes,bad
+'0<=X<200',24,'critical/other existing credit',business,2825,'no known savings','4<=X<7',4,'male single',none,3,'no known property',34,none,own,2,skilled,2,yes,yes,good
+'0<=X<200',48,'existing paid',business,15672,'<100','1<=X<4',2,'male single',none,2,car,23,none,own,1,skilled,1,yes,yes,bad
+'no checking',36,'critical/other existing credit','new car',6614,'<100','>=7',4,'male single',none,4,car,34,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',28,'all paid','used car',7824,'no known savings','<1',3,'male single',guarantor,4,'real estate',40,bank,rent,2,skilled,2,yes,yes,good
+'<0',27,'critical/other existing credit',business,2442,'<100','>=7',4,'male single',none,4,car,43,stores,own,4,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',15,'critical/other existing credit',radio/tv,1829,'<100','>=7',4,'male single',none,4,car,46,none,own,2,skilled,1,yes,yes,good
+'<0',12,'critical/other existing credit','new car',2171,'<100','1<=X<4',4,'male single',none,4,'life insurance',38,bank,own,2,'unskilled resident',1,none,no,good
+'0<=X<200',36,'critical/other existing credit','used car',5800,'<100','1<=X<4',3,'male single',none,4,car,34,none,own,2,skilled,1,yes,yes,good
+'no checking',18,'critical/other existing credit',radio/tv,1169,'no known savings','1<=X<4',4,'male single',none,3,'life insurance',29,none,own,2,skilled,1,yes,yes,good
+'no checking',36,'delayed previously','used car',8947,'no known savings','4<=X<7',3,'male single',none,2,car,31,stores,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',21,'existing paid',radio/tv,2606,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',28,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'critical/other existing credit',furniture/equipment,1592,'>=1000','4<=X<7',3,'female div/dep/mar',none,2,'life insurance',35,none,own,1,skilled,1,none,no,good
+'no checking',15,'existing paid',furniture/equipment,2186,'no known savings','4<=X<7',1,'female div/dep/mar',none,4,'real estate',33,bank,rent,1,'unskilled resident',1,none,yes,good
+'<0',18,'existing paid',furniture/equipment,4153,'<100','1<=X<4',2,'male single','co applicant',3,car,42,none,own,1,skilled,1,none,yes,bad
+'<0',16,'critical/other existing credit','new car',2625,'<100','>=7',2,'male single',guarantor,4,'life insurance',43,bank,rent,1,skilled,1,yes,yes,bad
+'no checking',20,'critical/other existing credit','new car',3485,'no known savings','<1',2,'male div/sep',none,4,'real estate',44,none,own,2,skilled,1,yes,yes,good
+'no checking',36,'critical/other existing credit','used car',10477,'no known savings','>=7',2,'male single',none,4,'no known property',42,none,'for free',2,skilled,1,none,yes,good
+'no checking',15,'existing paid',radio/tv,1386,'no known savings','1<=X<4',4,'male mar/wid',none,2,'real estate',40,none,rent,1,skilled,1,yes,yes,good
+'no checking',24,'existing paid',radio/tv,1278,'<100','>=7',4,'male single',none,1,'real estate',36,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',12,'existing paid',radio/tv,1107,'<100','1<=X<4',2,'male single',none,2,'real estate',20,none,rent,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'<0',21,'existing paid','new car',3763,'no known savings','4<=X<7',2,'male single','co applicant',2,'real estate',24,none,own,1,'unskilled resident',1,none,no,good
+'0<=X<200',36,'existing paid',education,3711,'no known savings','1<=X<4',2,'male mar/wid',none,2,car,27,none,own,1,skilled,1,none,yes,good
+'no checking',15,'delayed previously','used car',3594,'<100','<1',1,'female div/dep/mar',none,2,'life insurance',46,none,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'existing paid','new car',3195,'no known savings','1<=X<4',1,'female div/dep/mar',none,2,'real estate',33,none,own,1,'unskilled resident',1,none,yes,good
+'no checking',36,'delayed previously',radio/tv,4454,'<100','1<=X<4',4,'female div/dep/mar',none,4,'real estate',34,none,own,2,skilled,1,none,yes,good
+'0<=X<200',24,'critical/other existing credit',furniture/equipment,4736,'<100','<1',2,'female div/dep/mar',none,4,car,25,bank,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',30,'existing paid',radio/tv,2991,'no known savings','>=7',2,'female div/dep/mar',none,4,car,25,none,own,1,skilled,1,none,yes,good
+'no checking',11,'existing paid',business,2142,'>=1000','>=7',1,'male div/sep',none,2,'real estate',28,none,own,1,skilled,1,yes,yes,good
+'<0',24,'all paid',business,3161,'<100','1<=X<4',4,'male single',none,2,'life insurance',31,none,rent,1,skilled,1,yes,yes,bad
+'0<=X<200',48,'no credits/all paid',other,18424,'<100','1<=X<4',1,'female div/dep/mar',none,2,'life insurance',32,bank,own,1,'high qualif/self emp/mgmt',1,yes,no,bad
+'no checking',10,'existing paid','used car',2848,'100<=X<500','1<=X<4',1,'male single','co applicant',2,'real estate',32,none,own,1,skilled,2,none,yes,good
+'<0',6,'existing paid','new car',14896,'<100','>=7',1,'male single',none,4,'no known property',68,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',24,'existing paid',furniture/equipment,2359,'100<=X<500',unemployed,1,'male div/sep',none,1,'life insurance',33,none,own,1,skilled,1,none,yes,bad
+'<0',24,'existing paid',furniture/equipment,3345,'<100','>=7',4,'male single',none,2,'life insurance',39,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'no checking',18,'critical/other existing credit',furniture/equipment,1817,'<100','1<=X<4',4,'female div/dep/mar',none,2,'no known property',28,none,own,2,skilled,1,none,yes,good
+'no checking',48,'delayed previously',radio/tv,12749,'500<=X<1000','4<=X<7',4,'male single',none,1,car,37,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',9,'existing paid',radio/tv,1366,'<100','<1',3,'female div/dep/mar',none,4,'life insurance',22,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',12,'existing paid','new car',2002,'<100','4<=X<7',3,'male single',none,4,'life insurance',30,none,rent,1,skilled,2,yes,yes,good
+'<0',24,'all paid',furniture/equipment,6872,'<100','<1',2,'male div/sep',none,1,'life insurance',55,bank,own,1,skilled,1,yes,yes,bad
+'<0',12,'all paid','new car',697,'<100','<1',4,'male single',none,2,car,46,bank,own,2,skilled,1,yes,yes,bad
+'<0',18,'critical/other existing credit',furniture/equipment,1049,'<100','<1',4,'female div/dep/mar',none,4,'life insurance',21,none,rent,1,skilled,1,none,yes,good
+'<0',48,'existing paid','used car',10297,'<100','4<=X<7',4,'male single',none,4,'no known property',39,stores,'for free',3,skilled,2,yes,yes,bad
+'no checking',30,'existing paid',radio/tv,1867,'no known savings','>=7',4,'male single',none,4,car,58,none,own,1,skilled,1,yes,yes,good
+'<0',12,'delayed previously','new car',1344,'<100','1<=X<4',4,'male single',none,2,'real estate',43,none,own,2,'unskilled resident',2,none,yes,good
+'<0',24,'existing paid',furniture/equipment,1747,'<100','<1',4,'male single','co applicant',1,'life insurance',24,none,own,1,'unskilled resident',1,none,no,good
+'0<=X<200',9,'existing paid',radio/tv,1670,'<100','<1',4,'female div/dep/mar',none,2,car,22,none,own,1,skilled,1,yes,yes,bad
+'no checking',9,'critical/other existing credit','new car',1224,'<100','1<=X<4',3,'male single',none,1,'real estate',30,none,own,2,skilled,1,none,yes,good
+'no checking',12,'critical/other existing credit',radio/tv,522,'500<=X<1000','>=7',4,'male single',none,4,'life insurance',42,none,own,2,skilled,2,yes,yes,good
+'<0',12,'existing paid',radio/tv,1498,'<100','1<=X<4',4,'female div/dep/mar',none,1,car,23,bank,own,1,skilled,1,none,yes,good
+'0<=X<200',30,'delayed previously',radio/tv,1919,'100<=X<500','<1',4,'male single',none,3,'no known property',30,stores,own,2,'high qualif/self emp/mgmt',1,none,yes,bad
+'>=200',9,'existing paid',radio/tv,745,'<100','1<=X<4',3,'female div/dep/mar',none,2,'real estate',28,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',6,'existing paid',radio/tv,2063,'<100','<1',4,'male mar/wid',none,3,car,30,none,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',60,'existing paid',education,6288,'<100','1<=X<4',4,'male single',none,4,'no known property',42,none,'for free',1,skilled,1,none,yes,bad
+'no checking',24,'critical/other existing credit','used car',6842,'no known savings','1<=X<4',2,'male single',none,4,'life insurance',46,none,own,2,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',12,'existing paid','new car',3527,'no known savings','<1',2,'male single',none,3,'life insurance',45,none,own,1,'high qualif/self emp/mgmt',2,yes,yes,good
+'no checking',10,'existing paid','new car',1546,'<100','1<=X<4',3,'male single',none,2,'real estate',31,none,own,1,'unskilled resident',2,none,no,good
+'no checking',24,'existing paid',furniture/equipment,929,'no known savings','4<=X<7',4,'male single',none,2,car,31,stores,own,1,skilled,1,yes,yes,good
+'no checking',4,'critical/other existing credit','new car',1455,'<100','4<=X<7',2,'male single',none,1,'real estate',42,none,own,3,'unskilled resident',2,none,yes,good
+'<0',15,'existing paid',furniture/equipment,1845,'<100','<1',4,'female div/dep/mar',guarantor,1,'life insurance',46,none,rent,1,skilled,1,none,yes,good
+'0<=X<200',48,'no credits/all paid','new car',8358,'500<=X<1000','<1',1,'female div/dep/mar',none,1,car,30,none,own,2,skilled,1,none,yes,good
+'<0',24,'all paid',furniture/equipment,3349,'500<=X<1000','<1',4,'male single',none,4,'no known property',30,none,'for free',1,skilled,2,yes,yes,bad
+'no checking',12,'existing paid','new car',2859,'no known savings',unemployed,4,'male single',none,4,'no known property',38,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',18,'existing paid',furniture/equipment,1533,'<100','<1',4,'male mar/wid','co applicant',1,'life insurance',43,none,own,1,'unskilled resident',2,none,yes,bad
+'no checking',24,'existing paid',radio/tv,3621,'100<=X<500','>=7',2,'male single',none,4,car,31,none,own,2,skilled,1,none,yes,bad
+'0<=X<200',18,'critical/other existing credit',business,3590,'<100',unemployed,3,'male mar/wid',none,3,car,40,none,own,3,'unemp/unskilled non res',2,yes,yes,good
+'<0',36,'delayed previously',business,2145,'<100','4<=X<7',2,'male single',none,1,car,24,none,own,2,skilled,1,yes,yes,bad
+'0<=X<200',24,'existing paid','used car',4113,'500<=X<1000','<1',3,'female div/dep/mar',none,4,car,28,none,rent,1,skilled,1,none,yes,bad
+'no checking',36,'existing paid',furniture/equipment,10974,'<100',unemployed,4,'female div/dep/mar',none,2,car,26,none,own,2,'high qualif/self emp/mgmt',1,yes,yes,bad
+'<0',12,'existing paid','new car',1893,'<100','1<=X<4',4,'female div/dep/mar',guarantor,4,'life insurance',29,none,own,1,skilled,1,yes,yes,good
+'<0',24,'critical/other existing credit',radio/tv,1231,'>=1000','>=7',4,'female div/dep/mar',none,4,'life insurance',57,none,rent,2,'high qualif/self emp/mgmt',1,yes,yes,good
+'>=200',30,'critical/other existing credit',radio/tv,3656,'no known savings','>=7',4,'male single',none,4,'life insurance',49,stores,own,2,'unskilled resident',1,none,yes,good
+'0<=X<200',9,'critical/other existing credit',radio/tv,1154,'<100','>=7',2,'male single',none,4,'real estate',37,none,own,3,'unskilled resident',1,none,yes,good
+'<0',28,'existing paid','new car',4006,'<100','1<=X<4',3,'male single',none,2,car,45,none,own,1,'unskilled resident',1,none,yes,bad
+'0<=X<200',24,'existing paid',furniture/equipment,3069,'100<=X<500','>=7',4,'male single',none,4,'no known property',30,none,'for free',1,skilled,1,none,yes,good
+'no checking',6,'critical/other existing credit',radio/tv,1740,'<100','>=7',2,'male mar/wid',none,2,'real estate',30,none,rent,2,skilled,1,none,yes,good
+'0<=X<200',21,'delayed previously','new car',2353,'<100','1<=X<4',1,'male div/sep',none,4,'life insurance',47,none,own,2,skilled,1,none,yes,good
+'no checking',15,'existing paid','new car',3556,'no known savings','1<=X<4',3,'male single',none,2,'no known property',29,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid',radio/tv,2397,'500<=X<1000','>=7',3,'male single',none,2,car,35,bank,own,2,skilled,1,yes,yes,bad
+'0<=X<200',6,'existing paid',repairs,454,'<100','<1',3,'male mar/wid',none,1,'life insurance',22,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',30,'existing paid',radio/tv,1715,'no known savings','1<=X<4',4,'female div/dep/mar',none,1,car,26,none,own,1,skilled,1,none,yes,good
+'0<=X<200',27,'critical/other existing credit',radio/tv,2520,'500<=X<1000','1<=X<4',4,'male single',none,2,'life insurance',23,none,own,2,'unskilled resident',1,none,yes,bad
+'no checking',15,'existing paid',radio/tv,3568,'<100','>=7',4,'female div/dep/mar',none,2,car,54,bank,rent,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',42,'existing paid',radio/tv,7166,'no known savings','4<=X<7',2,'male mar/wid',none,4,'life insurance',29,none,rent,1,skilled,1,yes,yes,good
+'<0',11,'critical/other existing credit','new car',3939,'<100','1<=X<4',1,'male single',none,2,'real estate',40,none,own,2,'unskilled resident',2,none,yes,good
+'0<=X<200',15,'existing paid',repairs,1514,'100<=X<500','1<=X<4',4,'male single',guarantor,2,'real estate',22,none,own,1,skilled,1,none,yes,good
+'no checking',24,'existing paid','new car',7393,'<100','1<=X<4',1,'male single',none,4,'life insurance',43,none,own,1,'unskilled resident',2,none,yes,good
+'<0',24,'all paid','new car',1193,'<100',unemployed,1,'female div/dep/mar','co applicant',4,'no known property',29,none,rent,2,'unemp/unskilled non res',1,none,yes,bad
+'<0',60,'existing paid',business,7297,'<100','>=7',4,'male single','co applicant',4,'no known property',36,none,rent,1,skilled,1,none,yes,bad
+'no checking',30,'critical/other existing credit',radio/tv,2831,'<100','1<=X<4',4,'female div/dep/mar',none,2,car,33,none,own,1,skilled,1,yes,yes,good
+'>=200',24,'existing paid',radio/tv,1258,'500<=X<1000','1<=X<4',3,'female div/dep/mar',none,3,car,57,none,own,1,'unskilled resident',1,none,yes,good
+'0<=X<200',6,'existing paid',radio/tv,753,'<100','1<=X<4',2,'female div/dep/mar',guarantor,3,'real estate',64,none,own,1,skilled,1,none,yes,good
+'0<=X<200',18,'delayed previously',business,2427,'no known savings','>=7',4,'male single',none,2,'life insurance',42,none,own,2,skilled,1,none,yes,good
+'no checking',24,'delayed previously','new car',2538,'<100','>=7',4,'male single',none,4,car,47,none,own,2,'unskilled resident',2,none,yes,bad
+'0<=X<200',15,'all paid','new car',1264,'100<=X<500','1<=X<4',2,'male mar/wid',none,2,'life insurance',25,none,rent,1,skilled,1,none,yes,bad
+'0<=X<200',30,'critical/other existing credit',furniture/equipment,8386,'<100','4<=X<7',2,'male single',none,2,'life insurance',49,none,own,1,skilled,1,none,yes,bad
+'no checking',48,'existing paid',business,4844,'<100',unemployed,3,'male single',none,2,car,33,bank,rent,1,'high qualif/self emp/mgmt',1,yes,yes,bad
+'>=200',21,'existing paid','new car',2923,'100<=X<500','1<=X<4',1,'female div/dep/mar',none,1,car,28,bank,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'<0',36,'existing paid','used car',8229,'<100','1<=X<4',2,'male single',none,2,'life insurance',26,none,own,1,skilled,2,none,yes,bad
+'no checking',24,'critical/other existing credit',furniture/equipment,2028,'<100','4<=X<7',2,'male single',none,2,'life insurance',30,none,own,2,'unskilled resident',1,none,yes,good
+'<0',15,'critical/other existing credit',furniture/equipment,1433,'<100','1<=X<4',4,'female div/dep/mar',none,3,'life insurance',25,none,rent,2,skilled,1,none,yes,good
+'>=200',42,'no credits/all paid',business,6289,'<100','<1',2,'male div/sep',none,1,'life insurance',33,none,own,2,skilled,1,none,yes,good
+'no checking',13,'existing paid',radio/tv,1409,'100<=X<500',unemployed,2,'female div/dep/mar',none,4,'real estate',64,none,own,1,skilled,1,none,yes,good
+'<0',24,'existing paid','used car',6579,'<100',unemployed,4,'male single',none,2,'no known property',29,none,'for free',1,'high qualif/self emp/mgmt',1,yes,yes,good
+'0<=X<200',24,'critical/other existing credit',radio/tv,1743,'<100','>=7',4,'male single',none,2,'life insurance',48,none,own,2,'unskilled resident',1,none,yes,good
+'no checking',12,'critical/other existing credit',education,3565,'no known savings','<1',2,'male single',none,1,'life insurance',37,none,own,2,'unskilled resident',2,none,yes,good
+'no checking',15,'all paid',radio/tv,1569,'100<=X<500','>=7',4,'male single',none,4,car,34,bank,own,1,'unskilled resident',2,none,yes,good
+'<0',18,'existing paid',radio/tv,1936,'no known savings','4<=X<7',2,'male mar/wid',none,4,car,23,none,rent,2,'unskilled resident',1,none,yes,good
+'<0',36,'existing paid',furniture/equipment,3959,'<100',unemployed,4,'male single',none,3,'life insurance',30,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid','new car',2390,'no known savings','>=7',4,'male single',none,3,car,50,none,own,1,skilled,1,yes,yes,good
+'no checking',12,'existing paid',furniture/equipment,1736,'<100','4<=X<7',3,'female div/dep/mar',none,4,'real estate',31,none,own,1,'unskilled resident',1,none,yes,good
+'<0',30,'existing paid','used car',3857,'<100','1<=X<4',4,'male div/sep',none,4,'life insurance',40,none,own,1,'high qualif/self emp/mgmt',1,yes,yes,good
+'no checking',12,'existing paid',radio/tv,804,'<100','>=7',4,'male single',none,4,car,38,none,own,1,skilled,1,none,yes,good
+'<0',45,'existing paid',radio/tv,1845,'<100','1<=X<4',4,'male single',none,4,'no known property',23,none,'for free',1,skilled,1,yes,yes,bad
+'0<=X<200',45,'critical/other existing credit','used car',4576,'100<=X<500',unemployed,3,'male single',none,4,car,27,none,own,1,skilled,1,none,yes,good
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/cvTemplate.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/cvTemplate.kf
new file mode 100644
index 00000000..b40506ba
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/cvTemplate.kf
@@ -0,0 +1,175 @@
+{
+ "flow_name" : "cvTemplate",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/knowledgeflow/templates/iris.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "80,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "CrossValidationFoldMaker"
+ ]
+ },
+ "coordinates" : "240,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.CrossValidationFoldMaker",
+ "properties" : {
+ "name" : "CrossValidationFoldMaker",
+ "numFolds" : "10",
+ "preserveOrder" : false,
+ "seed" : "1"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "J48"
+ ],
+ "testSet" : [
+ "J48"
+ ]
+ },
+ "coordinates" : "440,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassifierPerformanceEvaluator",
+ "properties" : {
+ "errorPlotPointSizeProportionalToMargin" : false,
+ "evaluationMetricsToOutput" : "Correct,Incorrect,Kappa,Total cost,Average cost,KB relative,KB information,Correlation,Complexity 0,Complexity scheme,Complexity improvement,MAE,RMSE,RAE,RRSE,Coverage,Region size,TP rate,FP rate,Precision,Recall,F-measure,MCC,ROC area,PRC area",
+ "name" : "ClassifierPerformanceEvaluator"
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ],
+ "visualizableError" : [
+ "ModelPerformanceChart"
+ ]
+ },
+ "coordinates" : "360,280"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "640,280"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ModelPerformanceChart",
+ "properties" : {
+ "name" : "ModelPerformanceChart",
+ "offscreenAdditionalOpts" : "",
+ "offscreenHeight" : "400",
+ "offscreenRendererName" : "Weka Chart Renderer",
+ "offscreenWidth" : "500",
+ "offscreenXAxis" : "",
+ "offscreenYAxis" : ""
+ },
+ "connections" : {
+ },
+ "coordinates" : "120,280"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click to configure me\nwith an ARFF file"
+ },
+ "connections" : {
+ },
+ "coordinates" : "34,168"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "Double click to\nspecify the class\nattribute"
+ },
+ "connections" : {
+ },
+ "coordinates" : "236,171"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "10-fold CV by default.\nDouble click to alter\nthe number of folds."
+ },
+ "connections" : {
+ },
+ "coordinates" : "372,171"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note4",
+ "noteText" : "Performance results\nreported here. Right-click\nand choose \"show results\""
+ },
+ "connections" : {
+ },
+ "coordinates" : "602,377"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note5",
+ "noteText" : "Right-click and select \"show chart\"\nto see scatter plot and misclassified\npoints."
+ },
+ "connections" : {
+ },
+ "coordinates" : "50,380"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.trees.J48",
+ "options" : "-C 0.25 -M 2"
+ },
+ "loadClassifierFileName" : "",
+ "name" : "J48",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "batchClassifier" : [
+ "ClassifierPerformanceEvaluator"
+ ]
+ },
+ "coordinates" : "640,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader."
+ },
+ "connections" : {
+ },
+ "coordinates" : "23,11"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/incrementalLearning.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/incrementalLearning.kf
new file mode 100644
index 00000000..3f060352
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/incrementalLearning.kf
@@ -0,0 +1,135 @@
+{
+ "flow_name" : "incrementalLearning",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "instance" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "40,40"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "instance" : [
+ "NaiveBayesUpdateable"
+ ]
+ },
+ "coordinates" : "240,40"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.bayes.NaiveBayesUpdateable",
+ "options" : ""
+ },
+ "loadClassifierFileName" : "",
+ "name" : "NaiveBayesUpdateable",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "incrementalClassifier" : [
+ "IncrementalClassifierEvaluator"
+ ]
+ },
+ "coordinates" : "440,40"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.IncrementalClassifierEvaluator",
+ "properties" : {
+ "chartingEvalWindowSize" : 0,
+ "name" : "IncrementalClassifierEvaluator",
+ "outputPerClassInfoRetrievalStats" : false,
+ "statusFrequency" : 100
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ],
+ "chart" : [
+ "StripChart"
+ ]
+ },
+ "coordinates" : "680,40"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.StripChart",
+ "properties" : {
+ "XLabelFreq" : 500,
+ "name" : "StripChart",
+ "refreshFreq" : 5,
+ "refreshWidth" : 1
+ },
+ "connections" : {
+ },
+ "coordinates" : "680,240"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "400,240"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click and\nconfigure with an\nARFF file to process"
+ },
+ "connections" : {
+ },
+ "coordinates" : "23,129"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "Set the class attribute"
+ },
+ "connections" : {
+ },
+ "coordinates" : "210,135"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "Incremental naive\nBayes"
+ },
+ "connections" : {
+ },
+ "coordinates" : "420,137"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note4",
+ "noteText" : "Right-click and choose\n\"Show chart\" before\nlaunching this flow."
+ },
+ "connections" : {
+ },
+ "coordinates" : "619,327"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/iris.arff b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/iris.arff
new file mode 100644
index 00000000..780480c7
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/iris.arff
@@ -0,0 +1,225 @@
+% 1. Title: Iris Plants Database
+%
+% 2. Sources:
+% (a) Creator: R.A. Fisher
+% (b) Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov)
+% (c) Date: July, 1988
+%
+% 3. Past Usage:
+% - Publications: too many to mention!!! Here are a few.
+% 1. Fisher,R.A. "The use of multiple measurements in taxonomic problems"
+% Annual Eugenics, 7, Part II, 179-188 (1936); also in "Contributions
+% to Mathematical Statistics" (John Wiley, NY, 1950).
+% 2. Duda,R.O., & Hart,P.E. (1973) Pattern Classification and Scene Analysis.
+% (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.
+% 3. Dasarathy, B.V. (1980) "Nosing Around the Neighborhood: A New System
+% Structure and Classification Rule for Recognition in Partially Exposed
+% Environments". IEEE Transactions on Pattern Analysis and Machine
+% Intelligence, Vol. PAMI-2, No. 1, 67-71.
+% -- Results:
+% -- very low misclassification rates (0% for the setosa class)
+% 4. Gates, G.W. (1972) "The Reduced Nearest Neighbor Rule". IEEE
+% Transactions on Information Theory, May 1972, 431-433.
+% -- Results:
+% -- very low misclassification rates again
+% 5. See also: 1988 MLC Proceedings, 54-64. Cheeseman et al's AUTOCLASS II
+% conceptual clustering system finds 3 classes in the data.
+%
+% 4. Relevant Information:
+% --- This is perhaps the best known database to be found in the pattern
+% recognition literature. Fisher's paper is a classic in the field
+% and is referenced frequently to this day. (See Duda & Hart, for
+% example.) The data set contains 3 classes of 50 instances each,
+% where each class refers to a type of iris plant. One class is
+% linearly separable from the other 2; the latter are NOT linearly
+% separable from each other.
+% --- Predicted attribute: class of iris plant.
+% --- This is an exceedingly simple domain.
+%
+% 5. Number of Instances: 150 (50 in each of three classes)
+%
+% 6. Number of Attributes: 4 numeric, predictive attributes and the class
+%
+% 7. Attribute Information:
+% 1. sepal length in cm
+% 2. sepal width in cm
+% 3. petal length in cm
+% 4. petal width in cm
+% 5. class:
+% -- Iris Setosa
+% -- Iris Versicolour
+% -- Iris Virginica
+%
+% 8. Missing Attribute Values: None
+%
+% Summary Statistics:
+% Min Max Mean SD Class Correlation
+% sepal length: 4.3 7.9 5.84 0.83 0.7826
+% sepal width: 2.0 4.4 3.05 0.43 -0.4194
+% petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)
+% petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)
+%
+% 9. Class Distribution: 33.3% for each of 3 classes.
+
+@RELATION iris
+
+@ATTRIBUTE sepallength REAL
+@ATTRIBUTE sepalwidth REAL
+@ATTRIBUTE petallength REAL
+@ATTRIBUTE petalwidth REAL
+@ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica}
+
+@DATA
+5.1,3.5,1.4,0.2,Iris-setosa
+4.9,3.0,1.4,0.2,Iris-setosa
+4.7,3.2,1.3,0.2,Iris-setosa
+4.6,3.1,1.5,0.2,Iris-setosa
+5.0,3.6,1.4,0.2,Iris-setosa
+5.4,3.9,1.7,0.4,Iris-setosa
+4.6,3.4,1.4,0.3,Iris-setosa
+5.0,3.4,1.5,0.2,Iris-setosa
+4.4,2.9,1.4,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+5.4,3.7,1.5,0.2,Iris-setosa
+4.8,3.4,1.6,0.2,Iris-setosa
+4.8,3.0,1.4,0.1,Iris-setosa
+4.3,3.0,1.1,0.1,Iris-setosa
+5.8,4.0,1.2,0.2,Iris-setosa
+5.7,4.4,1.5,0.4,Iris-setosa
+5.4,3.9,1.3,0.4,Iris-setosa
+5.1,3.5,1.4,0.3,Iris-setosa
+5.7,3.8,1.7,0.3,Iris-setosa
+5.1,3.8,1.5,0.3,Iris-setosa
+5.4,3.4,1.7,0.2,Iris-setosa
+5.1,3.7,1.5,0.4,Iris-setosa
+4.6,3.6,1.0,0.2,Iris-setosa
+5.1,3.3,1.7,0.5,Iris-setosa
+4.8,3.4,1.9,0.2,Iris-setosa
+5.0,3.0,1.6,0.2,Iris-setosa
+5.0,3.4,1.6,0.4,Iris-setosa
+5.2,3.5,1.5,0.2,Iris-setosa
+5.2,3.4,1.4,0.2,Iris-setosa
+4.7,3.2,1.6,0.2,Iris-setosa
+4.8,3.1,1.6,0.2,Iris-setosa
+5.4,3.4,1.5,0.4,Iris-setosa
+5.2,4.1,1.5,0.1,Iris-setosa
+5.5,4.2,1.4,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+5.0,3.2,1.2,0.2,Iris-setosa
+5.5,3.5,1.3,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+4.4,3.0,1.3,0.2,Iris-setosa
+5.1,3.4,1.5,0.2,Iris-setosa
+5.0,3.5,1.3,0.3,Iris-setosa
+4.5,2.3,1.3,0.3,Iris-setosa
+4.4,3.2,1.3,0.2,Iris-setosa
+5.0,3.5,1.6,0.6,Iris-setosa
+5.1,3.8,1.9,0.4,Iris-setosa
+4.8,3.0,1.4,0.3,Iris-setosa
+5.1,3.8,1.6,0.2,Iris-setosa
+4.6,3.2,1.4,0.2,Iris-setosa
+5.3,3.7,1.5,0.2,Iris-setosa
+5.0,3.3,1.4,0.2,Iris-setosa
+7.0,3.2,4.7,1.4,Iris-versicolor
+6.4,3.2,4.5,1.5,Iris-versicolor
+6.9,3.1,4.9,1.5,Iris-versicolor
+5.5,2.3,4.0,1.3,Iris-versicolor
+6.5,2.8,4.6,1.5,Iris-versicolor
+5.7,2.8,4.5,1.3,Iris-versicolor
+6.3,3.3,4.7,1.6,Iris-versicolor
+4.9,2.4,3.3,1.0,Iris-versicolor
+6.6,2.9,4.6,1.3,Iris-versicolor
+5.2,2.7,3.9,1.4,Iris-versicolor
+5.0,2.0,3.5,1.0,Iris-versicolor
+5.9,3.0,4.2,1.5,Iris-versicolor
+6.0,2.2,4.0,1.0,Iris-versicolor
+6.1,2.9,4.7,1.4,Iris-versicolor
+5.6,2.9,3.6,1.3,Iris-versicolor
+6.7,3.1,4.4,1.4,Iris-versicolor
+5.6,3.0,4.5,1.5,Iris-versicolor
+5.8,2.7,4.1,1.0,Iris-versicolor
+6.2,2.2,4.5,1.5,Iris-versicolor
+5.6,2.5,3.9,1.1,Iris-versicolor
+5.9,3.2,4.8,1.8,Iris-versicolor
+6.1,2.8,4.0,1.3,Iris-versicolor
+6.3,2.5,4.9,1.5,Iris-versicolor
+6.1,2.8,4.7,1.2,Iris-versicolor
+6.4,2.9,4.3,1.3,Iris-versicolor
+6.6,3.0,4.4,1.4,Iris-versicolor
+6.8,2.8,4.8,1.4,Iris-versicolor
+6.7,3.0,5.0,1.7,Iris-versicolor
+6.0,2.9,4.5,1.5,Iris-versicolor
+5.7,2.6,3.5,1.0,Iris-versicolor
+5.5,2.4,3.8,1.1,Iris-versicolor
+5.5,2.4,3.7,1.0,Iris-versicolor
+5.8,2.7,3.9,1.2,Iris-versicolor
+6.0,2.7,5.1,1.6,Iris-versicolor
+5.4,3.0,4.5,1.5,Iris-versicolor
+6.0,3.4,4.5,1.6,Iris-versicolor
+6.7,3.1,4.7,1.5,Iris-versicolor
+6.3,2.3,4.4,1.3,Iris-versicolor
+5.6,3.0,4.1,1.3,Iris-versicolor
+5.5,2.5,4.0,1.3,Iris-versicolor
+5.5,2.6,4.4,1.2,Iris-versicolor
+6.1,3.0,4.6,1.4,Iris-versicolor
+5.8,2.6,4.0,1.2,Iris-versicolor
+5.0,2.3,3.3,1.0,Iris-versicolor
+5.6,2.7,4.2,1.3,Iris-versicolor
+5.7,3.0,4.2,1.2,Iris-versicolor
+5.7,2.9,4.2,1.3,Iris-versicolor
+6.2,2.9,4.3,1.3,Iris-versicolor
+5.1,2.5,3.0,1.1,Iris-versicolor
+5.7,2.8,4.1,1.3,Iris-versicolor
+6.3,3.3,6.0,2.5,Iris-virginica
+5.8,2.7,5.1,1.9,Iris-virginica
+7.1,3.0,5.9,2.1,Iris-virginica
+6.3,2.9,5.6,1.8,Iris-virginica
+6.5,3.0,5.8,2.2,Iris-virginica
+7.6,3.0,6.6,2.1,Iris-virginica
+4.9,2.5,4.5,1.7,Iris-virginica
+7.3,2.9,6.3,1.8,Iris-virginica
+6.7,2.5,5.8,1.8,Iris-virginica
+7.2,3.6,6.1,2.5,Iris-virginica
+6.5,3.2,5.1,2.0,Iris-virginica
+6.4,2.7,5.3,1.9,Iris-virginica
+6.8,3.0,5.5,2.1,Iris-virginica
+5.7,2.5,5.0,2.0,Iris-virginica
+5.8,2.8,5.1,2.4,Iris-virginica
+6.4,3.2,5.3,2.3,Iris-virginica
+6.5,3.0,5.5,1.8,Iris-virginica
+7.7,3.8,6.7,2.2,Iris-virginica
+7.7,2.6,6.9,2.3,Iris-virginica
+6.0,2.2,5.0,1.5,Iris-virginica
+6.9,3.2,5.7,2.3,Iris-virginica
+5.6,2.8,4.9,2.0,Iris-virginica
+7.7,2.8,6.7,2.0,Iris-virginica
+6.3,2.7,4.9,1.8,Iris-virginica
+6.7,3.3,5.7,2.1,Iris-virginica
+7.2,3.2,6.0,1.8,Iris-virginica
+6.2,2.8,4.8,1.8,Iris-virginica
+6.1,3.0,4.9,1.8,Iris-virginica
+6.4,2.8,5.6,2.1,Iris-virginica
+7.2,3.0,5.8,1.6,Iris-virginica
+7.4,2.8,6.1,1.9,Iris-virginica
+7.9,3.8,6.4,2.0,Iris-virginica
+6.4,2.8,5.6,2.2,Iris-virginica
+6.3,2.8,5.1,1.5,Iris-virginica
+6.1,2.6,5.6,1.4,Iris-virginica
+7.7,3.0,6.1,2.3,Iris-virginica
+6.3,3.4,5.6,2.4,Iris-virginica
+6.4,3.1,5.5,1.8,Iris-virginica
+6.0,3.0,4.8,1.8,Iris-virginica
+6.9,3.1,5.4,2.1,Iris-virginica
+6.7,3.1,5.6,2.4,Iris-virginica
+6.9,3.1,5.1,2.3,Iris-virginica
+5.8,2.7,5.1,1.9,Iris-virginica
+6.8,3.2,5.9,2.3,Iris-virginica
+6.7,3.3,5.7,2.5,Iris-virginica
+6.7,3.0,5.2,2.3,Iris-virginica
+6.3,2.5,5.0,1.9,Iris-virginica
+6.5,3.0,5.2,2.0,Iris-virginica
+6.2,3.4,5.4,2.3,Iris-virginica
+5.9,3.0,5.1,1.8,Iris-virginica
+%
+%
+%
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/jobExample.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/jobExample.kf
new file mode 100644
index 00000000..7b2da596
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/jobExample.kf
@@ -0,0 +1,139 @@
+{
+ "flow_name" : "jobExample",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.SetVariables",
+ "properties" : {
+ "dynamicVarsInternalRep" : "fname@a@afiletoload@v@v@@vv@@",
+ "name" : "SetVariables",
+ "varsInternalRep" : ""
+ },
+ "connections" : {
+ "environment" : [
+ "StorePropertiesInEnvironment"
+ ]
+ },
+ "coordinates" : "266,220"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.DataGrid",
+ "properties" : {
+ "data" : "@relation DataGrid\n\n@attribute fname string\n@attribute config string\n@attribute repTree string\n\n@data\nweka/gui/knowledgeflow/templates/iris.arff,'weka.classifiers.bayes.NaiveBayes -D',?\nweka/gui/knowledgeflow/templates/credit-g.arff,'.Bagging -print',2",
+ "name" : "DataGrid"
+ },
+ "connections" : {
+ "instance" : [
+ "SetVariables"
+ ]
+ },
+ "coordinates" : "34,221"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Job",
+ "properties" : {
+ "flowFile" : "weka/gui/knowledgeflow/templates/jobSubFlow.kf",
+ "name" : "Job"
+ },
+ "connections" : {
+ "jobSuccess" : [
+ "GetDataFromResult"
+ ]
+ },
+ "coordinates" : "386,351"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.StorePropertiesInEnvironment",
+ "properties" : {
+ "name" : "StorePropertiesInEnvironment",
+ "propsInternalRep" : "config@a@aZeroR@a@a @a@a @@vv@@repTree@a@aZeroR@a@aclassifier.maxDepth@a@a @@vv@@"
+ },
+ "connections" : {
+ "environment" : [
+ "Job"
+ ]
+ },
+ "coordinates" : "465,218"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.GetDataFromResult",
+ "properties" : {
+ "name" : "GetDataFromResult"
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ]
+ },
+ "coordinates" : "197,352"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "21,353"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It processes ARFF files as resources loaded
from the classpath. It demonstrates how to dynamically parameterize a flow at runtime."
+ },
+ "connections" : {
+ },
+ "coordinates" : "222,4"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Define some data to \nparameterize the Job's\nsub-flow with. You could \nalso use a Loader step \nto load a file containing \nparamteter/variable values.\nEach instance output by this\nstep contains variable and\nparameter values that are\nset/stored by the SetVariables\nand StorePropertiesInEnvironment\nsteps respectively."
+ },
+ "connections" : {
+ },
+ "coordinates" : "12,25"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note7",
+ "noteText" : "Set environment variables based\non the values stored in attributes\nof the incoming instance objects."
+ },
+ "connections" : {
+ },
+ "coordinates" : "232,159"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note8",
+ "noteText" : "Store property values in the environment\nbased on the values stored in attributes\nof the incoming instance objects. These\nproperty values can be used to set option\nvalues for scheme-based steps in the\nsub-flow run by the Job step. This is \nparticularly useful as the schemes used\nin scheme-based steps typically do not\naccept environment variables. Click the\n\"About\" button in the step's editor dialog\nfor more information."
+ },
+ "connections" : {
+ },
+ "coordinates" : "535,96"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note9",
+ "noteText" : "Job executes another flow as\nan atomic unit. It passes in \nenvironment variables and property\nsettings for the sub-flow to use. Open\nthe editor dialog for Job and click\n\"Edit sub-flow\" to see the flow\nthat wil be executed."
+ },
+ "connections" : {
+ },
+ "coordinates" : "464,346"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note10",
+ "noteText" : "Get results stored by the\nWriteDataToResult step\nin the Job's sub-flow."
+ },
+ "connections" : {
+ },
+ "coordinates" : "166,446"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/jobSubFlow.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/jobSubFlow.kf
new file mode 100644
index 00000000..fe2ee58a
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/jobSubFlow.kf
@@ -0,0 +1,148 @@
+{
+ "flow_name" : "jobSubFlow",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "${filetoload}",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "TextViewer",
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "37,89"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ "text" : [
+ "WriteToWekaLog"
+ ]
+ },
+ "coordinates" : "237,89"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.WriteWekaLog",
+ "properties" : {
+ "incrementalLoggingFrequency" : "1000",
+ "loggingLevel" : {
+ "type" : "enumHelper",
+ "class" : "weka.knowledgeflow.LoggingLevel",
+ "value" : "Basic"
+ },
+ "name" : "WriteToWekaLog"
+ },
+ "connections" : {
+ },
+ "coordinates" : "437,89"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "/last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "TrainingSetMaker"
+ ]
+ },
+ "coordinates" : "37,209"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TrainingSetMaker",
+ "properties" : {
+ "name" : "TrainingSetMaker"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "ZeroR"
+ ]
+ },
+ "coordinates" : "237,209"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.rules.ZeroR",
+ "options" : ""
+ },
+ "loadClassifierFileName" : "",
+ "name" : "ZeroR",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "text" : [
+ "WriteToWekaLog",
+ "WriteDataToResult"
+ ]
+ },
+ "coordinates" : "437,209"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.SetPropertiesFromEnvironment",
+ "properties" : {
+ "name" : "SetPropertiesFromEnvironment"
+ },
+ "connections" : {
+ "info" : [
+ "ZeroR"
+ ]
+ },
+ "coordinates" : "317,329"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.WriteDataToResult",
+ "properties" : {
+ "name" : "WriteDataToResult"
+ },
+ "connections" : {
+ },
+ "coordinates" : "437,329"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "ArffLoader uses an environment\nvariable to define the file to load."
+ },
+ "connections" : {
+ },
+ "coordinates" : "40,40"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "We use a ZeroR classifier here,\nbut it actually becomes NaiveBayes\nand Bagging at runtime due to properties\nset by the StetPropertiesFromEnvironment\nstep."
+ },
+ "connections" : {
+ },
+ "coordinates" : "514,215"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "SetPropertiesFromEnvironment\nchecks the environment to see\nif there are any properties associated\nwith the name of the step it is connected\nto. It then sets these properties (if any)\non the connected step."
+ },
+ "connections" : {
+ },
+ "coordinates" : "50,324"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/learnAndSaveModel.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/learnAndSaveModel.kf
new file mode 100644
index 00000000..529e7334
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/learnAndSaveModel.kf
@@ -0,0 +1,163 @@
+{
+ "flow_name" : "learnAndSaveModel",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/beans/templates/credit-g.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "79,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "TrainingSetMaker"
+ ]
+ },
+ "coordinates" : "239,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click to configure me\nwith an ARFF file"
+ },
+ "connections" : {
+ },
+ "coordinates" : "26,178"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "Double click to\nspecify the class\nattribute"
+ },
+ "connections" : {
+ },
+ "coordinates" : "232,178"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.trees.J48",
+ "options" : "-C 0.25 -M 2"
+ },
+ "loadClassifierFileName" : "",
+ "name" : "J48",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "batchClassifier" : [
+ "SerializedModelSaver"
+ ],
+ "text" : [
+ "TextViewer"
+ ]
+ },
+ "coordinates" : "281,295"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TrainingSetMaker",
+ "properties" : {
+ "name" : "TrainingSetMaker"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "J48"
+ ]
+ },
+ "coordinates" : "439,80"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.SerializedModelSaver",
+ "properties" : {
+ "filenamePrefix" : "exampleModel",
+ "includeRelationNameInFilename" : false,
+ "incrementalSaveSchedule" : 0,
+ "name" : "SerializedModelSaver",
+ "outputDirectory" : "${user.home}"
+ },
+ "connections" : {
+ },
+ "coordinates" : "521,295"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "41,295"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "Make the dataset into\na training set"
+ },
+ "connections" : {
+ },
+ "coordinates" : "513,98"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note4",
+ "noteText" : "Learn a decision tree\n(double click to configure\noptions)"
+ },
+ "connections" : {
+ },
+ "coordinates" : "246,385"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note5",
+ "noteText" : "Double click to configure\na filename prefix and\ndirectory to save the\nmodel to"
+ },
+ "connections" : {
+ },
+ "coordinates" : "597,302"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "Collects the textual\ndescription of the\nmodel."
+ },
+ "connections" : {
+ },
+ "coordinates" : "26,381"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note7",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader. The model is saved as \"exampleModelJ48_1_1.model\" to your home directory\n(Java property \"user.home\")."
+ },
+ "connections" : {
+ },
+ "coordinates" : "31,6"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/predictionBoundaries.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/predictionBoundaries.kf
new file mode 100644
index 00000000..15f4f24a
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/predictionBoundaries.kf
@@ -0,0 +1,150 @@
+{
+ "flow_name" : "Prediction boundaries",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/knowledgeflow/templates/iris.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "104,60"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.BoundaryPlotter",
+ "properties" : {
+ "XAttName" : "petallength",
+ "YAttName" : "petalwidth",
+ "baseForSampling" : "2",
+ "computeMaxRowsInParallel" : 10,
+ "imageHeight" : 400,
+ "imageWidth" : 400,
+ "kernelBandwidth" : "3",
+ "name" : "BoundaryPlotter",
+ "numLocationsPerPixel" : "2",
+ "plotTrainingData" : true
+ },
+ "connections" : {
+ "image" : [
+ "ImageSaver"
+ ]
+ },
+ "coordinates" : "277,254"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "/last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "BoundaryPlotter"
+ ]
+ },
+ "coordinates" : "104,254"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.functions.Logistic",
+ "options" : "-R 1.0E-8 -M -1"
+ },
+ "loadClassifierFileName" : "",
+ "name" : "Logistic",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "info" : [
+ "BoundaryPlotter"
+ ]
+ },
+ "coordinates" : "446,62"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Clusterer",
+ "properties" : {
+ "clusterer" : {
+ "type" : "optionHandler",
+ "class" : "weka.clusterers.EM",
+ "options" : "-I 100 -N 5 -X 10 -max -1 -ll-cv 1.0E-6 -ll-iter 1.0E-6 -M 1.0E-6 -K 10 -num-slots 1 -S 100"
+ },
+ "loadClustererFileName" : "",
+ "name" : "EM"
+ },
+ "connections" : {
+ "info" : [
+ "BoundaryPlotter"
+ ]
+ },
+ "coordinates" : "277,60"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ImageSaver",
+ "properties" : {
+ "file" : "${user.home}/bp${image_count}.png",
+ "format" : {
+ "type" : "enumHelper",
+ "class" : "weka.knowledgeflow.steps.ImageSaver$ImageFormat",
+ "value" : "DEFAULT"
+ },
+ "name" : "ImageSaver"
+ },
+ "connections" : {
+ },
+ "coordinates" : "501,254"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader."
+ },
+ "connections" : {
+ },
+ "coordinates" : "23,11"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "Double click to\nspecify the class\nattribute"
+ },
+ "connections" : {
+ },
+ "coordinates" : "94,342"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click to configure\nboundary plotting options.\nRight click and select\n\"Show plots\" to see\nresults."
+ },
+ "connections" : {
+ },
+ "coordinates" : "240,346"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note7",
+ "noteText" : "Saves each rendered plot\nas a png file named\nbp${image_count}.png,\nwhere the variable image_count\nis incremented for each subsequent\nplot."
+ },
+ "connections" : {
+ },
+ "coordinates" : "465,338"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/saveCharts.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/saveCharts.kf
new file mode 100644
index 00000000..6fd02896
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/saveCharts.kf
@@ -0,0 +1,314 @@
+{
+ "flow_name" : "saveCharts",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/beans/templates/credit-g.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "DataVisualizer",
+ "AttributeSummarizer"
+ ]
+ },
+ "coordinates" : "94,97"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.DataVisualizer",
+ "properties" : {
+ "name" : "DataVisualizer",
+ "offscreenAdditionalOpts" : "-color=/last",
+ "offscreenHeight" : "400",
+ "offscreenRendererName" : "JFreeChart Chart Renderer",
+ "offscreenWidth" : "500",
+ "offscreenXAxis" : "age",
+ "offscreenYAxis" : ""
+ },
+ "connections" : {
+ "image" : [
+ "ImageSaver2"
+ ]
+ },
+ "coordinates" : "254,97"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.AttributeSummarizer",
+ "properties" : {
+ "name" : "AttributeSummarizer",
+ "offscreenAdditionalOpts" : "",
+ "offscreenHeight" : "400",
+ "offscreenRendererName" : "JFreeChart Chart Renderer",
+ "offscreenWidth" : "500",
+ "offscreenXAxis" : ""
+ },
+ "connections" : {
+ "image" : [
+ "ImageSaver"
+ ]
+ },
+ "coordinates" : "254,221"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ImageSaver",
+ "properties" : {
+ "file" : "${user.home}/chart2.png",
+ "format" : {
+ "type" : "enumHelper",
+ "class" : "weka.knowledgeflow.steps.ImageSaver$ImageFormat",
+ "value" : "DEFAULT"
+ },
+ "name" : "ImageSaver"
+ },
+ "connections" : {
+ },
+ "coordinates" : "414,221"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ImageSaver",
+ "properties" : {
+ "file" : "${user.home}/chart1.png",
+ "format" : {
+ "type" : "enumHelper",
+ "class" : "weka.knowledgeflow.steps.ImageSaver$ImageFormat",
+ "value" : "DEFAULT"
+ },
+ "name" : "ImageSaver2"
+ },
+ "connections" : {
+ },
+ "coordinates" : "414,97"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassValuePicker"
+ ]
+ },
+ "coordinates" : "14,353"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassValuePicker",
+ "properties" : {
+ "classValue" : "good",
+ "name" : "ClassValuePicker"
+ },
+ "connections" : {
+ "dataSet" : [
+ "CrossValidationFoldMaker"
+ ]
+ },
+ "coordinates" : "174,353"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.CrossValidationFoldMaker",
+ "properties" : {
+ "name" : "CrossValidationFoldMaker",
+ "numFolds" : "10",
+ "preserveOrder" : false,
+ "seed" : "1"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "NaiveBayes"
+ ],
+ "testSet" : [
+ "NaiveBayes"
+ ]
+ },
+ "coordinates" : "334,353"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Classifier",
+ "properties" : {
+ "classifier" : {
+ "type" : "optionHandler",
+ "class" : "weka.classifiers.bayes.NaiveBayes",
+ "options" : ""
+ },
+ "loadClassifierFileName" : "",
+ "name" : "NaiveBayes",
+ "resetIncrementalClassifier" : false,
+ "updateIncrementalClassifier" : true
+ },
+ "connections" : {
+ "batchClassifier" : [
+ "ClassifierPerformanceEvaluator"
+ ]
+ },
+ "coordinates" : "534,353"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassifierPerformanceEvaluator",
+ "properties" : {
+ "errorPlotPointSizeProportionalToMargin" : false,
+ "evaluationMetricsToOutput" : "Correct,Incorrect,Kappa,Total cost,Average cost,KB relative,KB information,Correlation,Complexity 0,Complexity scheme,Complexity improvement,MAE,RMSE,RAE,RRSE,Coverage,Region size,TP rate,FP rate,Precision,Recall,F-measure,MCC,ROC area,PRC area",
+ "name" : "ClassifierPerformanceEvaluator"
+ },
+ "connections" : {
+ "thresholdData" : [
+ "ModelPerformanceChart"
+ ],
+ "visualizableError" : [
+ "ModelPerformanceChart2"
+ ]
+ },
+ "coordinates" : "694,353"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ModelPerformanceChart",
+ "properties" : {
+ "name" : "ModelPerformanceChart",
+ "offscreenAdditionalOpts" : "",
+ "offscreenHeight" : "400",
+ "offscreenRendererName" : "JFreeChart Chart Renderer",
+ "offscreenWidth" : "500",
+ "offscreenXAxis" : "",
+ "offscreenYAxis" : ""
+ },
+ "connections" : {
+ "image" : [
+ "ImageSaver3"
+ ]
+ },
+ "coordinates" : "694,219"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ModelPerformanceChart",
+ "properties" : {
+ "name" : "ModelPerformanceChart2",
+ "offscreenAdditionalOpts" : "",
+ "offscreenHeight" : "400",
+ "offscreenRendererName" : "JFreeChart Chart Renderer",
+ "offscreenWidth" : "500",
+ "offscreenXAxis" : "age",
+ "offscreenYAxis" : "credit_amount"
+ },
+ "connections" : {
+ "image" : [
+ "ImageSaver4"
+ ]
+ },
+ "coordinates" : "519,221"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/beans/templates/credit-g.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader2"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "14,207"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ImageSaver",
+ "properties" : {
+ "file" : "${user.home}/chart3.png",
+ "format" : {
+ "type" : "enumHelper",
+ "class" : "weka.knowledgeflow.steps.ImageSaver$ImageFormat",
+ "value" : "DEFAULT"
+ },
+ "name" : "ImageSaver3"
+ },
+ "connections" : {
+ },
+ "coordinates" : "694,95"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ImageSaver",
+ "properties" : {
+ "file" : "${user.home}/chart4.png",
+ "format" : {
+ "type" : "enumHelper",
+ "class" : "weka.knowledgeflow.steps.ImageSaver$ImageFormat",
+ "value" : "DEFAULT"
+ },
+ "name" : "ImageSaver4"
+ },
+ "connections" : {
+ },
+ "coordinates" : "519,97"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Errors scatter plot"
+ },
+ "connections" : {
+ },
+ "coordinates" : "487,312"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "ROC curve"
+ },
+ "connections" : {
+ },
+ "coordinates" : "624,226"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "German credit\ndata"
+ },
+ "connections" : {
+ },
+ "coordinates" : "84,194"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note4",
+ "noteText" : "Bar chart for \"employment\""
+ },
+ "connections" : {
+ },
+ "coordinates" : "209,316"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note5",
+ "noteText" : "Scatter plot of\n\"age\" vs \"credit_amount\""
+ },
+ "connections" : {
+ },
+ "coordinates" : "254,183"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader and configure the chart components and image savers.Charts are saved to png files in your home directory using Weka's built-in chart rendering. For pretty charts install the\n\"jfreechartOffscreenChartRenderer\" package using the package manager."
+ },
+ "connections" : {
+ },
+ "coordinates" : "22,4"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/templates.props b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/templates.props
new file mode 100644
index 00000000..d6af17bf
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/templates.props
@@ -0,0 +1 @@
+*resources*=[weka.knowledgeflow.templates|Cross validation|weka/gui/knowledgeflow/templates/cvTemplate.kf],[weka.knowledgeflow.templates|Learn and save a model|weka/gui/knowledgeflow/templates/learnAndSaveModel.kf],[weka.knowledgeflow.templates|ROC curves for two classifiers|weka/gui/knowledgeflow/templates/ROCcurves.kf],[weka.knowledgeflow.templates|Learn and evaluate naive Bayes incrementally|weka/gui/knowledgeflow/templates/incrementalLearning.kf],[weka.knowledgeflow.templates|Compare two clusterers|weka/gui/knowledgeflow/templates/twoClusterers.kf],[weka.knowledgeflow.templates|Two attribute selection schemes|weka/gui/knowledgeflow/templates/twoAttSelSchemes.kf],[weka.knowledgeflow.templates|Save various charts to files|weka/gui/knowledgeflow/templates/saveCharts.kf],[weka.knowledgeflow.templates|Visualize prediction boundaries|weka/gui/knowledgeflow/templates/predictionBoundaries.kf],[weka.knowledgeflow.templates|Parameterizing a Job|weka/gui/knowledgeflow/templates/jobExample.kf]
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/twoAttSelSchemes.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/twoAttSelSchemes.kf
new file mode 100644
index 00000000..fc75ff34
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/twoAttSelSchemes.kf
@@ -0,0 +1,217 @@
+{
+ "flow_name" : "twoAttSelectionSchemes",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.ASEvaluator",
+ "properties" : {
+ "evaluator" : {
+ "type" : "optionHandler",
+ "class" : "weka.attributeSelection.CfsSubsetEval",
+ "options" : "-P 1 -E 1"
+ },
+ "name" : "CfsSubsetEval",
+ "treatXValFoldsSeparately" : false
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ],
+ "testSet" : [
+ "TextViewer2"
+ ]
+ },
+ "coordinates" : "507,85"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ASSearchStrategy",
+ "properties" : {
+ "name" : "GreedyStepwise",
+ "searchStrategy" : {
+ "type" : "optionHandler",
+ "class" : "weka.attributeSelection.GreedyStepwise",
+ "options" : "-T -1.7976931348623157E308 -N -1 -num-slots 1"
+ }
+ },
+ "connections" : {
+ "info" : [
+ "CfsSubsetEval"
+ ]
+ },
+ "coordinates" : "659,86"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/knowledgeflow/templates/iris.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "ClassAssigner"
+ ]
+ },
+ "coordinates" : "32,193"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "650,186"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.CrossValidationFoldMaker",
+ "properties" : {
+ "name" : "CrossValidationFoldMaker",
+ "numFolds" : "5",
+ "preserveOrder" : false,
+ "seed" : "1"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "CfsSubsetEval",
+ "InfoGainAttributeEval"
+ ],
+ "testSet" : [
+ "CfsSubsetEval",
+ "InfoGainAttributeEval"
+ ]
+ },
+ "coordinates" : "362,193"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer2"
+ },
+ "connections" : {
+ },
+ "coordinates" : "335,85"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClassAssigner",
+ "properties" : {
+ "classColumn" : "/last",
+ "name" : "ClassAssigner"
+ },
+ "connections" : {
+ "dataSet" : [
+ "CrossValidationFoldMaker"
+ ]
+ },
+ "coordinates" : "200,193"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ASEvaluator",
+ "properties" : {
+ "evaluator" : {
+ "type" : "optionHandler",
+ "class" : "weka.attributeSelection.InfoGainAttributeEval",
+ "options" : ""
+ },
+ "name" : "InfoGainAttributeEval",
+ "treatXValFoldsSeparately" : false
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ]
+ },
+ "coordinates" : "509,288"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ASSearchStrategy",
+ "properties" : {
+ "name" : "Ranker",
+ "searchStrategy" : {
+ "type" : "optionHandler",
+ "class" : "weka.attributeSelection.Ranker",
+ "options" : "-T -1.7976931348623157E308 -N -1"
+ }
+ },
+ "connections" : {
+ "info" : [
+ "InfoGainAttributeEval"
+ ]
+ },
+ "coordinates" : "659,288"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader."
+ },
+ "connections" : {
+ },
+ "coordinates" : "26,3"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click to \nconfigure me with\nan ARFF file"
+ },
+ "connections" : {
+ },
+ "coordinates" : "12,282"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "Double click to\nspecify the class\nattribute"
+ },
+ "connections" : {
+ },
+ "coordinates" : "184,283"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "5-fold CV. Double \nclick to alter the\nnumber of folds."
+ },
+ "connections" : {
+ },
+ "coordinates" : "323,285"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note7",
+ "noteText" : "View the reduced\ntest fold data."
+ },
+ "connections" : {
+ },
+ "coordinates" : "207,97"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note8",
+ "noteText" : "CFS evaluation with forward selection search"
+ },
+ "connections" : {
+ },
+ "coordinates" : "472,57"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note9",
+ "noteText" : "Information gain attribute ranking"
+ },
+ "connections" : {
+ },
+ "coordinates" : "517,386"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/twoClusterers.kf b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/twoClusterers.kf
new file mode 100644
index 00000000..55c0fd42
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/knowledgeflow/templates/twoClusterers.kf
@@ -0,0 +1,208 @@
+{
+ "flow_name" : "twoClusterers",
+ "steps" : [
+ {
+ "class" : "weka.knowledgeflow.steps.Loader",
+ "properties" : {
+ "loader" : {
+ "type" : "loader",
+ "class" : "weka.core.converters.ArffLoader",
+ "filePath" : "weka/gui/beans/templates/iris.arff",
+ "useRelativePath" : false
+ },
+ "name" : "ArffLoader"
+ },
+ "connections" : {
+ "dataSet" : [
+ "Remove"
+ ]
+ },
+ "coordinates" : "36,280"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Clusterer",
+ "properties" : {
+ "clusterer" : {
+ "type" : "optionHandler",
+ "class" : "weka.clusterers.EM",
+ "options" : "-I 100 -N -1 -X 10 -max -1 -ll-cv 1.0E-6 -ll-iter 1.0E-6 -M 1.0E-6 -K 10 -num-slots 1 -S 100"
+ },
+ "loadClustererFileName" : "",
+ "name" : "EM"
+ },
+ "connections" : {
+ "batchClusterer" : [
+ "ClustererPerformanceEvaluator"
+ ]
+ },
+ "coordinates" : "358,57"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClustererPerformanceEvaluator",
+ "properties" : {
+ "name" : "ClustererPerformanceEvaluator"
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ]
+ },
+ "coordinates" : "558,57"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TextViewer",
+ "properties" : {
+ "name" : "TextViewer"
+ },
+ "connections" : {
+ },
+ "coordinates" : "680,160"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.TrainTestSplitMaker",
+ "properties" : {
+ "name" : "TrainTestSplitMaker",
+ "seed" : "1",
+ "trainPercent" : "66.0"
+ },
+ "connections" : {
+ "trainingSet" : [
+ "EM",
+ "MakeDensityBasedClusterer"
+ ],
+ "testSet" : [
+ "EM",
+ "MakeDensityBasedClusterer"
+ ]
+ },
+ "coordinates" : "200,160"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Clusterer",
+ "properties" : {
+ "clusterer" : {
+ "type" : "optionHandler",
+ "class" : "weka.clusterers.MakeDensityBasedClusterer",
+ "options" : "-M 1.0E-6 -W weka.clusterers.SimpleKMeans -- -init 0 -max-candidates 100 -periodic-pruning 10000 -min-density 2.0 -t1 -1.25 -t2 -1.0 -N 3 -A \"weka.core.EuclideanDistance -R first-last\" -I 500 -num-slots 1 -S 10"
+ },
+ "loadClustererFileName" : "",
+ "name" : "MakeDensityBasedClusterer"
+ },
+ "connections" : {
+ "batchClusterer" : [
+ "ClustererPerformanceEvaluator2"
+ ]
+ },
+ "coordinates" : "360,280"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.ClustererPerformanceEvaluator",
+ "properties" : {
+ "name" : "ClustererPerformanceEvaluator2"
+ },
+ "connections" : {
+ "text" : [
+ "TextViewer"
+ ]
+ },
+ "coordinates" : "560,280"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note",
+ "noteText" : "Double click to \nconfigure with \nan ARFF dataset."
+ },
+ "connections" : {
+ },
+ "coordinates" : "12,374"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note2",
+ "noteText" : "2/3 - 1/3 train-test\nsplit. Double click\nto change split\npercentage."
+ },
+ "connections" : {
+ },
+ "coordinates" : "157,255"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note3",
+ "noteText" : "EM clustering with\ncross-validation to\nchoose the best\nnumber of clusters."
+ },
+ "connections" : {
+ },
+ "coordinates" : "358,147"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note4",
+ "noteText" : "Fits Gaussian distributions\nto the clusters found by\nk-means. Double click to\nconfigure."
+ },
+ "connections" : {
+ },
+ "coordinates" : "306,373"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note5",
+ "noteText" : "Computes evaluation\nresults."
+ },
+ "connections" : {
+ },
+ "coordinates" : "532,376"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note6",
+ "noteText" : "Right click and\nselect \"Show results\""
+ },
+ "connections" : {
+ },
+ "coordinates" : "652,263"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Filter",
+ "properties" : {
+ "filter" : {
+ "type" : "optionHandler",
+ "class" : "weka.filters.unsupervised.attribute.Remove",
+ "options" : "-R last"
+ },
+ "name" : "Remove"
+ },
+ "connections" : {
+ "dataSet" : [
+ "TrainTestSplitMaker"
+ ]
+ },
+ "coordinates" : "36,160"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note7",
+ "noteText" : "Remove the class column"
+ },
+ "connections" : {
+ },
+ "coordinates" : "9,136"
+ },
+ {
+ "class" : "weka.knowledgeflow.steps.Note",
+ "properties" : {
+ "name" : "Note8",
+ "noteText" : "NOTE: this flow is configured to run out of the box. It loads an ARFF file as a resource from the classpath. If you want \nto use your own data, edit the ArffLoader."
+ },
+ "connections" : {
+ },
+ "coordinates" : "20,8"
+ }
+ ]
+}
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$1.class
new file mode 100644
index 00000000..586aceda
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$AboutAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$AboutAction.class
new file mode 100644
index 00000000..a2471fc9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$AboutAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$BasicAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$BasicAction.class
new file mode 100644
index 00000000..1a7164e1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$BasicAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ClearOutputAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ClearOutputAction.class
new file mode 100644
index 00000000..237c1380
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ClearOutputAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$CommandlineArgsAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$CommandlineArgsAction.class
new file mode 100644
index 00000000..db133060
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$CommandlineArgsAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ExitAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ExitAction.class
new file mode 100644
index 00000000..5bb5cefd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ExitAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$NewAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$NewAction.class
new file mode 100644
index 00000000..01c07535
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$NewAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$OpenAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$OpenAction.class
new file mode 100644
index 00000000..4f9bc8c8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$OpenAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$PrintAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$PrintAction.class
new file mode 100644
index 00000000..c12dd12a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$PrintAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$RedoAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$RedoAction.class
new file mode 100644
index 00000000..845e3fae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$RedoAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$SaveAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$SaveAction.class
new file mode 100644
index 00000000..6cb8d4bb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$SaveAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ScriptUndoableEditListener.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ScriptUndoableEditListener.class
new file mode 100644
index 00000000..8e9c98a0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$ScriptUndoableEditListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$StartAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$StartAction.class
new file mode 100644
index 00000000..ee4e49fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$StartAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$StopAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$StopAction.class
new file mode 100644
index 00000000..bf181105
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$StopAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$UndoAction.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$UndoAction.class
new file mode 100644
index 00000000..943772b3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel$UndoAction.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel.class
new file mode 100644
index 00000000..cae45369
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/FileScriptingPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/Groovy.props b/workflow/apps/java/clustering/bin/weka/gui/scripting/Groovy.props
new file mode 100644
index 00000000..b7992f2b
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/scripting/Groovy.props
@@ -0,0 +1,146 @@
+# Defines the syntax highlighting for Groovy
+#
+# Author: FracPete (fracpete at waikato dot ac dot nz)
+# Version: $Revision: 5293 $
+
+########
+# Font #
+########
+
+# the font name
+FontName=monospaced
+
+# the font size
+FontSize=12
+
+#############################################
+# Colors (R,G,B format can be used as well) #
+#############################################
+
+# the font color
+ForegroundColor=black
+
+# the background color
+BackgroundColor=white
+
+# the color for keywords
+KeywordColor=blue
+
+# the color for comments
+CommentColor=gray
+
+# the color for strings
+StringColor=red
+
+##########
+# Syntax #
+##########
+
+# whether the syntax highlighting etc is on or not (true|false)
+Syntax=true
+
+# the number of spaces to use for indentation
+Indentation=2
+
+# the number of characters that a single tab represents
+Tabs=2
+
+# whether to use blanks instead of tabs (true|false)
+UseBlanks=true
+
+# word delimiters
+Delimiters=;:{}()[]+-/%<=>!&|^~*
+
+# delimiter for quoted strings/characters
+QuoteDelimiters="'
+
+# the character to escape quotes
+QuoteEscape=\\
+
+# whether multi-line comments are enabled (true|false)
+MultiLineComment=true
+
+# the start delimiter of a multi-line comment
+MultiLineCommentStart=/*
+
+# the end delimiter of a multi-line comment
+MultiLineCommentEnd=*/
+
+# the start delimiter of a single-line comment
+SingleLineCommentStart=//
+
+# whether to add matching block ends (true|false)
+AddMatchingBlockEnd=true
+
+# the start of a block (e.g., "opening bracket")
+BlockStart={
+
+# the end of a block (e.g., "closing bracket")
+BlockEnd=}
+
+# whether the keywords are case-sensitive (true|false)
+CaseSensitive=true
+
+# the keywords
+Keywords=\
+ abstract,\
+ assert,\
+ boolean,\
+ break,\
+ byte,\
+ byvalue,\
+ case,\
+ cast,\
+ catch,\
+ char,\
+ class,\
+ const,\
+ continue,\
+ def,\
+ default,\
+ do,\
+ double,\
+ else,\
+ extends,\
+ false,\
+ final,\
+ finally,\
+ float,\
+ for,\
+ future,\
+ generic,\
+ goto,\
+ if,\
+ implements,\
+ import,\
+ inner,\
+ instanceof,\
+ int,\
+ interface,\
+ long,\
+ native,\
+ new,\
+ null,\
+ operator,\
+ outer,\
+ package,\
+ private,\
+ protected,\
+ public,\
+ rest,\
+ return,\
+ short,\
+ static,\
+ super,\
+ switch,\
+ synchronized,\
+ this,\
+ throw,\
+ throws,\
+ transient,\
+ true,\
+ try,\
+ var,\
+ void,\
+ volatile,\
+ while
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyPanel.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyPanel.class
new file mode 100644
index 00000000..046056b9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyScript$GroovyThread.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyScript$GroovyThread.class
new file mode 100644
index 00000000..fe3662a4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyScript$GroovyThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyScript.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyScript.class
new file mode 100644
index 00000000..38916735
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/GroovyScript.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/Jython.props b/workflow/apps/java/clustering/bin/weka/gui/scripting/Jython.props
new file mode 100644
index 00000000..e4cb8791
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/scripting/Jython.props
@@ -0,0 +1,113 @@
+# Defines the syntax highlighting for Jython
+#
+# Author: FracPete (fracpete at waikato dot ac dot nz)
+# Version: $Revision: 5293 $
+
+########
+# Font #
+########
+
+# the font name
+FontName=monospaced
+
+# the font size
+FontSize=12
+
+#############################################
+# Colors (R,G,B format can be used as well) #
+#############################################
+
+# the font color
+ForegroundColor=black
+
+# the background color
+BackgroundColor=white
+
+# the color for keywords
+KeywordColor=blue
+
+# the color for comments
+CommentColor=gray
+
+# the color for strings
+StringColor=red
+
+##########
+# Syntax #
+##########
+
+# whether the syntax highlighting etc is on or not (true|false)
+Syntax=true
+
+# the number of spaces to use for indentation instead of TAB
+Indentation=4
+
+# the number of characters that a single tab represents
+Tabs=4
+
+# whether to use blanks instead of tabs (true|false)
+UseBlanks=true
+
+# word delimiters
+Delimiters=;:{}()[]+-/%<=>!&|^~*
+
+# delimiter for quoted strings/characters
+QuoteDelimiters="'
+
+# the character to escape quotes
+QuoteEscape=\\
+
+# whether multi-line comments are enabled (true|false)
+MultiLineComment=true
+
+# the start delimiter of a multi-line comment
+MultiLineCommentStart="""
+
+# the end delimiter of a multi-line comment
+MultiLineCommentEnd="""
+
+# the start delimiter of a single-line comment
+SingleLineCommentStart=#
+
+# whether to add matching block end (true|false)
+AddMatchingBlockEnd=false
+
+# the start of a block (e.g., "opening bracket")
+BlockStart=
+
+# the end of a block (e.g., "closing bracket")
+BlockEnd=
+
+# whether the keywords are case-sensitive (true|false)
+CaseSensitive=true
+
+# the keywords
+Keywords=\
+ and,\
+ assert,\
+ break,\
+ class,\
+ continue,\
+ def,\
+ del,\
+ elif,\
+ else,\
+ except,\
+ exec,\
+ finally,\
+ for,\
+ from,\
+ global,\
+ if,\
+ import,\
+ in,\
+ is,\
+ lambda,\
+ not,\
+ or,\
+ pass,\
+ print,\
+ raise,\
+ return,\
+ try,\
+ while,\
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonPanel.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonPanel.class
new file mode 100644
index 00000000..b36bb2a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonScript$JythonThread.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonScript$JythonThread.class
new file mode 100644
index 00000000..b608a786
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonScript$JythonThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonScript.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonScript.class
new file mode 100644
index 00000000..26d21fcd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/JythonScript.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/Script$1.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/Script$1.class
new file mode 100644
index 00000000..4fc9567c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/Script$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/Script$ScriptThread.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/Script$ScriptThread.class
new file mode 100644
index 00000000..57cd7589
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/Script$ScriptThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/Script.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/Script.class
new file mode 100644
index 00000000..fe8c0de3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/Script.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/ScriptUtils.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/ScriptUtils.class
new file mode 100644
index 00000000..4bc2b7f7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/ScriptUtils.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/ScriptingPanel.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/ScriptingPanel.class
new file mode 100644
index 00000000..09b75ddf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/ScriptingPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/SyntaxDocument$ATTR_TYPE.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/SyntaxDocument$ATTR_TYPE.class
new file mode 100644
index 00000000..8292673a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/SyntaxDocument$ATTR_TYPE.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/SyntaxDocument.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/SyntaxDocument.class
new file mode 100644
index 00000000..0442378d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/SyntaxDocument.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionEvent$Type.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionEvent$Type.class
new file mode 100644
index 00000000..abec901d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionEvent$Type.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionEvent.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionEvent.class
new file mode 100644
index 00000000..dc4eb350
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionListener.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionListener.class
new file mode 100644
index 00000000..36a8db27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/ScriptExecutionListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/event/TitleUpdatedEvent.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/TitleUpdatedEvent.class
new file mode 100644
index 00000000..541966ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/TitleUpdatedEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/event/TitleUpdatedListener.class b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/TitleUpdatedListener.class
new file mode 100644
index 00000000..092d9d62
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/event/TitleUpdatedListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/images/groovy_medium.png b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/groovy_medium.png
new file mode 100644
index 00000000..bb5e214e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/groovy_medium.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/images/groovy_small.png b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/groovy_small.png
new file mode 100644
index 00000000..a6f4395e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/groovy_small.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/images/jython_medium.png b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/jython_medium.png
new file mode 100644
index 00000000..960bb865
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/jython_medium.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/scripting/images/jython_small.png b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/jython_small.png
new file mode 100644
index 00000000..e65a7f18
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/scripting/images/jython_small.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/AbstractCommand.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/AbstractCommand.class
new file mode 100644
index 00000000..753aae4c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/AbstractCommand.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Capabilities.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Capabilities.class
new file mode 100644
index 00000000..2ddcbe75
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Capabilities.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Cls.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Cls.class
new file mode 100644
index 00000000..e36ce84f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Cls.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Echo.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Echo.class
new file mode 100644
index 00000000..66b8a25d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Echo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Exit.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Exit.class
new file mode 100644
index 00000000..65cc2ddd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Exit.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Help.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Help.class
new file mode 100644
index 00000000..38f0edcb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Help.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/History.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/History.class
new file mode 100644
index 00000000..ae1689bd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/History.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Java.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Java.class
new file mode 100644
index 00000000..a350ffac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Java.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Kill.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Kill.class
new file mode 100644
index 00000000..ad1aad74
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Kill.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Script.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Script.class
new file mode 100644
index 00000000..c378120f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Script.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Set.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Set.class
new file mode 100644
index 00000000..f6b99ab4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Set.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/simplecli/Unset.class b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Unset.class
new file mode 100644
index 00000000..e97c07d1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/simplecli/Unset.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$1.class
new file mode 100644
index 00000000..734f7598
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$2.class
new file mode 100644
index 00000000..7348b124
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$3.class
new file mode 100644
index 00000000..0ae7912b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$4.class
new file mode 100644
index 00000000..555f07d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel.class
new file mode 100644
index 00000000..e26f40b3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ConnectionPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/DbUtils.class b/workflow/apps/java/clustering/bin/weka/gui/sql/DbUtils.class
new file mode 100644
index 00000000..945a7307
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/DbUtils.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$1.class
new file mode 100644
index 00000000..e24d12fd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$2.class
new file mode 100644
index 00000000..71b379fb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$3.class
new file mode 100644
index 00000000..17863654
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel.class b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel.class
new file mode 100644
index 00000000..40c368a2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanelCellRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanelCellRenderer.class
new file mode 100644
index 00000000..e7c73b0f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/InfoPanelCellRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$1.class
new file mode 100644
index 00000000..6e4e7fdb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$2.class
new file mode 100644
index 00000000..357106ff
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$3.class
new file mode 100644
index 00000000..e5dd615b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel.class b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel.class
new file mode 100644
index 00000000..080def58
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/QueryPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$1.class
new file mode 100644
index 00000000..bd5b2b78
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$2.class
new file mode 100644
index 00000000..e4d2f4a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$3.class
new file mode 100644
index 00000000..6a7cf230
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$4.class
new file mode 100644
index 00000000..e864780f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel.class
new file mode 100644
index 00000000..ac192560
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetHelper.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetHelper.class
new file mode 100644
index 00000000..5d77ebd4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetHelper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTable$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTable$1.class
new file mode 100644
index 00000000..4f2c88bd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTable$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTable.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTable.class
new file mode 100644
index 00000000..d9de98ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTable.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTableCellRenderer.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTableCellRenderer.class
new file mode 100644
index 00000000..ea76d58d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTableCellRenderer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTableModel.class b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTableModel.class
new file mode 100644
index 00000000..fdbbfd36
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/ResultSetTableModel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer$1.class
new file mode 100644
index 00000000..2ab4cd80
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer$2.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer$2.class
new file mode 100644
index 00000000..187351bc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer.class
new file mode 100644
index 00000000..38d3eb5d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$1.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$1.class
new file mode 100644
index 00000000..7f897874
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$2.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$2.class
new file mode 100644
index 00000000..b66e9b85
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$3.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$3.class
new file mode 100644
index 00000000..69e2b692
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog.class b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog.class
new file mode 100644
index 00000000..2791bdae
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/SqlViewerDialog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/ConnectionEvent.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ConnectionEvent.class
new file mode 100644
index 00000000..613aec47
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ConnectionEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/ConnectionListener.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ConnectionListener.class
new file mode 100644
index 00000000..0c3c6dc9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ConnectionListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/HistoryChangedEvent.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/HistoryChangedEvent.class
new file mode 100644
index 00000000..e547310a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/HistoryChangedEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/HistoryChangedListener.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/HistoryChangedListener.class
new file mode 100644
index 00000000..463ebc6b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/HistoryChangedListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/QueryExecuteEvent.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/QueryExecuteEvent.class
new file mode 100644
index 00000000..86e43a1e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/QueryExecuteEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/QueryExecuteListener.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/QueryExecuteListener.class
new file mode 100644
index 00000000..530e7617
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/QueryExecuteListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/ResultChangedEvent.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ResultChangedEvent.class
new file mode 100644
index 00000000..d964e7ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ResultChangedEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/sql/event/ResultChangedListener.class b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ResultChangedListener.class
new file mode 100644
index 00000000..ccb05b71
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/sql/event/ResultChangedListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceCounter.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceCounter.class
new file mode 100644
index 00000000..3ea81669
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceCounter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceEvent.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceEvent.class
new file mode 100644
index 00000000..45b1f958
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceJoiner.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceJoiner.class
new file mode 100644
index 00000000..dec0948b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceJoiner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceListener.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceListener.class
new file mode 100644
index 00000000..fa79c5b5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceLoader$LoadThread.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceLoader$LoadThread.class
new file mode 100644
index 00000000..6d56c620
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceLoader$LoadThread.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceLoader.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceLoader.class
new file mode 100644
index 00000000..6bc55da9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceLoader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceProducer.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceProducer.class
new file mode 100644
index 00000000..b7df1a78
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceProducer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceSavePanel.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceSavePanel.class
new file mode 100644
index 00000000..131d119c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceSavePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceTable$1.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceTable$1.class
new file mode 100644
index 00000000..ce86b1cc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceTable$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceTable.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceTable.class
new file mode 100644
index 00000000..379b1596
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceTable.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceViewer.class b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceViewer.class
new file mode 100644
index 00000000..e4ce605c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/InstanceViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/streams/SerialInstanceListener.class b/workflow/apps/java/clustering/bin/weka/gui/streams/SerialInstanceListener.class
new file mode 100644
index 00000000..a4d4cdc5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/streams/SerialInstanceListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Colors.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Colors.class
new file mode 100644
index 00000000..6d59096e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Colors.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Edge.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Edge.class
new file mode 100644
index 00000000..195d91cc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Edge.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/NamedColor.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/NamedColor.class
new file mode 100644
index 00000000..cfc0fdb3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/NamedColor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Node.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Node.class
new file mode 100644
index 00000000..8c06b44a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/Node.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/NodePlace.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/NodePlace.class
new file mode 100644
index 00000000..fc6e5f9f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/NodePlace.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode1.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode1.class
new file mode 100644
index 00000000..6ac8340b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$1.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$1.class
new file mode 100644
index 00000000..b38bd9eb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Ease.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Ease.class
new file mode 100644
index 00000000..da8dbe87
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Ease.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Group.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Group.class
new file mode 100644
index 00000000..480ba2d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Group.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Level.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Level.class
new file mode 100644
index 00000000..1143f624
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2$Level.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2.class
new file mode 100644
index 00000000..f4f0f20e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/PlaceNode2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeBuild$InfoObject.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeBuild$InfoObject.class
new file mode 100644
index 00000000..ac0b3758
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeBuild$InfoObject.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeBuild.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeBuild.class
new file mode 100644
index 00000000..f0ffa839
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeBuild.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeDisplayEvent.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeDisplayEvent.class
new file mode 100644
index 00000000..b4f496f5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeDisplayEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeDisplayListener.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeDisplayListener.class
new file mode 100644
index 00000000..de7482a9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeDisplayListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$1.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$1.class
new file mode 100644
index 00000000..49404a18
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$EdgeInfo.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$EdgeInfo.class
new file mode 100644
index 00000000..15975625
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$EdgeInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$NodeInfo.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$NodeInfo.class
new file mode 100644
index 00000000..439ae11a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer$NodeInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer.class b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer.class
new file mode 100644
index 00000000..526dfc68
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer.props b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer.props
new file mode 100644
index 00000000..d7a6605f
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/treevisualizer/TreeVisualizer.props
@@ -0,0 +1,29 @@
+# A properties file for customizing the Weka's TreeVisualizer.
+#
+# Author: FracPete (fracpete at waikato dot ac dot nz)
+# Version: $Revision: 14490 $
+
+# the font color (can use R,G,B format)
+FontColor=black
+
+# the background color (can use R,G,B format)
+# leaving this empty uses the platform's default background
+# Note: on Mac OS X, using the default background results in a black background when
+# saving the tree to a file! See the following thread on the Weka mailing list:
+# https://list.scms.waikato.ac.nz/mailman/htdig/wekalist/2009-January/015661.html
+BackgroundColor=
+
+# the node color (can use R,G,B format)
+NodeColor=lightGray
+
+# the line color (can use R,G,B format)
+LineColor=black
+
+# the color of the zoombox (can use R,G,B format)
+ZoomBoxColor=black
+
+# the XOR mode color for the zoombox (can use R,G,B format)
+ZoomBoxXORColor=white
+
+# whether to show the border or not
+ShowBorder=true
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$1.class
new file mode 100644
index 00000000..4a4152de
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$2.class
new file mode 100644
index 00000000..34c77309
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$3.class
new file mode 100644
index 00000000..269a1f2c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$AttributeSpacing$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$AttributeSpacing$1.class
new file mode 100644
index 00000000..82f50957
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$AttributeSpacing$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$AttributeSpacing.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$AttributeSpacing.class
new file mode 100644
index 00000000..9ab53f07
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel$AttributeSpacing.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel.class
new file mode 100644
index 00000000..299a09c4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanelEvent.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanelEvent.class
new file mode 100644
index 00000000..1bf3f9db
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanelEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanelListener.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanelListener.class
new file mode 100644
index 00000000..2ce896ea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/AttributePanelListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/BMPWriter.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/BMPWriter.class
new file mode 100644
index 00000000..bafa497a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/BMPWriter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$1.class
new file mode 100644
index 00000000..71c9ffe2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$NomLabel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$NomLabel$1.class
new file mode 100644
index 00000000..fc941d8a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$NomLabel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$NomLabel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$NomLabel.class
new file mode 100644
index 00000000..3b549ac6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel$NomLabel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel.class
new file mode 100644
index 00000000..d447510c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ClassPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/InstanceInfo.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/InstanceInfo.class
new file mode 100644
index 00000000..af80414a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/InstanceInfo.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/InstanceInfoFrame.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/InstanceInfoFrame.class
new file mode 100644
index 00000000..6f0104fc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/InstanceInfoFrame.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/JComponentWriter.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/JComponentWriter.class
new file mode 100644
index 00000000..0b1a2ec8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/JComponentWriter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/JPEGWriter.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/JPEGWriter.class
new file mode 100644
index 00000000..7bdac9c4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/JPEGWriter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$1.class
new file mode 100644
index 00000000..65363a27
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry$1.class
new file mode 100644
index 00000000..f9ed2743
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry$2.class
new file mode 100644
index 00000000..6d66c2c5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry.class
new file mode 100644
index 00000000..3491579a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel$LegendEntry.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel.class
new file mode 100644
index 00000000..4675cce0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/LegendPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$1.class
new file mode 100644
index 00000000..fe2fd423
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$2.class
new file mode 100644
index 00000000..d2e56b3e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$3.class
new file mode 100644
index 00000000..4a91d0f4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1.class
new file mode 100644
index 00000000..87af9001
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$2.class
new file mode 100644
index 00000000..64e34e1d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$3.class
new file mode 100644
index 00000000..79db9d4b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$4.class
new file mode 100644
index 00000000..0aa33878
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$5.class
new file mode 100644
index 00000000..31747748
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6$1.class
new file mode 100644
index 00000000..61ce4f8f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6$2.class
new file mode 100644
index 00000000..af55aa42
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6.class
new file mode 100644
index 00000000..a72a03d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$7.class
new file mode 100644
index 00000000..30e58f4f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$8.class
new file mode 100644
index 00000000..448d043b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$9.class
new file mode 100644
index 00000000..8843db40
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$1.class
new file mode 100644
index 00000000..e7a98057
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$2.class
new file mode 100644
index 00000000..f15b6abb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$3.class
new file mode 100644
index 00000000..d4a93216
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot.class
new file mode 100644
index 00000000..5f9efa1f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel$Plot.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel.class
new file mode 100644
index 00000000..9d64ff4e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/MatrixPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PNGWriter.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PNGWriter.class
new file mode 100644
index 00000000..4e11eaa3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PNGWriter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$1.class
new file mode 100644
index 00000000..7e560cb4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$2.class
new file mode 100644
index 00000000..b14bb3d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$3.class
new file mode 100644
index 00000000..bb5013ab
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D.class
new file mode 100644
index 00000000..e5647299
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2D.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2DCompanion.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2DCompanion.class
new file mode 100644
index 00000000..959ffd19
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/Plot2DCompanion.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PlotData2D.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PlotData2D.class
new file mode 100644
index 00000000..84bb6eca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PlotData2D.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptGraphics$GraphicsState.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptGraphics$GraphicsState.class
new file mode 100644
index 00000000..fe610f44
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptGraphics$GraphicsState.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptGraphics.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptGraphics.class
new file mode 100644
index 00000000..64adf824
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptGraphics.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptWriter.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptWriter.class
new file mode 100644
index 00000000..095916f3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PostscriptWriter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$1.class
new file mode 100644
index 00000000..8fafdc10
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$2.class
new file mode 100644
index 00000000..60c33ef6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$3.class
new file mode 100644
index 00000000..393fb05f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$4.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$4.class
new file mode 100644
index 00000000..695592d2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$JComponentWriterFileFilter.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$JComponentWriterFileFilter.class
new file mode 100644
index 00000000..c5c9a4fe
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$JComponentWriterFileFilter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$PrintMouseListener.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$PrintMouseListener.class
new file mode 100644
index 00000000..0550c405
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent$PrintMouseListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent.class
new file mode 100644
index 00000000..c8fc5327
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableComponent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableHandler.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableHandler.class
new file mode 100644
index 00000000..49ce44ff
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintableHandler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintablePanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintablePanel.class
new file mode 100644
index 00000000..6782420c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/PrintablePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$1.class
new file mode 100644
index 00000000..86128cd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$2.class
new file mode 100644
index 00000000..8f2e5b8d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$3.class
new file mode 100644
index 00000000..9c8013f1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel.class
new file mode 100644
index 00000000..03e4e461
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/ThresholdVisualizePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/Visualize.props b/workflow/apps/java/clustering/bin/weka/gui/visualize/Visualize.props
new file mode 100644
index 00000000..c7ab5063
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/gui/visualize/Visualize.props
@@ -0,0 +1,48 @@
+# Properties for visualization
+#
+# Version: $Revision: 14589 $
+
+# Maximum precision for numeric values
+weka.gui.visualize.precision=10
+
+# Colour for the axis in the 2D plot (can use R,G,B format)
+weka.gui.visualize.Plot2D.axisColour=black
+
+# Colour for the background of the 2D plot (can use R,G,B format)
+weka.gui.visualize.Plot2D.backgroundColour=white
+
+# The JFrame (needs to implement the interface weka.gui.visualize.InstanceInfo)
+# for displaying Instance information.
+weka.gui.visualize.Plot2D.instanceInfoFrame=weka.gui.visualize.InstanceInfoFrame
+
+# Display the list of one dimensional attribute visualizations
+weka.gui.visualize.VisualizePanel.displayAttributeBars=true
+
+# Colour for the background of the attribute bars in the
+# AttributePanel (can use R,G,B format)
+weka.gui.visualize.AttributePanel.barColour=white
+
+# If you regularly visualize certain datasets with the same structure
+# you might want to define default x, y and colour dimensions (attributes)
+# to visualize on.
+# Just uncomment and set up the following
+# weka.gui.visualize.VisualizePanel..XDimension=
+# weka.gui.visualize.VisualizePanel..YDimension=
+# weka.gui.visualize.VisualizePanel..ColourDimension=
+# NOTE: spaces in relation names can be handled by using
+# escape characters (java 1.2), eg. my\ first\ relation\ name
+
+# Defaults for threshold curve plots
+weka.gui.visualize.ThresholdVisualizePanel.ThresholdCurve.XDimension=False\ Positive\ Rate
+weka.gui.visualize.ThresholdVisualizePanel.ThresholdCurve.YDimension=True\ Positive\ Rate
+weka.gui.visualize.ThresholdVisualizePanel.ThresholdCurve.ColourDimension=Threshold
+
+#Defaults for cost curve plots
+weka.gui.visualize.VisualizePanel.CostCurve.XDimension=Probability\ Cost\ Function
+weka.gui.visualize.VisualizePanel.CostCurve.YDimension=Normalized\ Expected\ Cost
+weka.gui.visualize.VisualizePanel.CostCurve.ColourDimension=Threshold
+
+# Defaults for margin curve plots
+weka.gui.visualize.VisualizePanel.MarginCurve.XDimension=Margin
+weka.gui.visualize.VisualizePanel.MarginCurve.YDimension=Cumulative
+weka.gui.visualize.VisualizePanel.MarginCurve.ColourDimension=Margin
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$1.class
new file mode 100644
index 00000000..3a0dc8d1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$2.class
new file mode 100644
index 00000000..9ea73f52
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$3.class
new file mode 100644
index 00000000..23caf9ad
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$4.class
new file mode 100644
index 00000000..c9314b06
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$5.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$5.class
new file mode 100644
index 00000000..83ae113b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$6.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$6.class
new file mode 100644
index 00000000..4bd4eb70
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$7.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$7.class
new file mode 100644
index 00000000..fd3d3e7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$8.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$8.class
new file mode 100644
index 00000000..4daa72a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$9.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$9.class
new file mode 100644
index 00000000..66b81d45
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$1.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$1.class
new file mode 100644
index 00000000..8db8a0d4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$2.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$2.class
new file mode 100644
index 00000000..08ab24aa
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$3.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$3.class
new file mode 100644
index 00000000..6ed5696a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$4.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$4.class
new file mode 100644
index 00000000..f42bafbd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel.class
new file mode 100644
index 00000000..b813c9a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel$PlotPanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel.class
new file mode 100644
index 00000000..7bca89c0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanelEvent.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanelEvent.class
new file mode 100644
index 00000000..71eb6af1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanelEvent.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanelListener.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanelListener.class
new file mode 100644
index 00000000..c0871b1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizePanelListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizeUtils$VisualizeDefaults.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizeUtils$VisualizeDefaults.class
new file mode 100644
index 00000000..13e328d0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizeUtils$VisualizeDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizeUtils.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizeUtils.class
new file mode 100644
index 00000000..28e74f3b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/VisualizeUtils.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/AssociationRuleVisualizePlugin.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/AssociationRuleVisualizePlugin.class
new file mode 100644
index 00000000..4d76eee3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/AssociationRuleVisualizePlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/ErrorVisualizePlugin.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/ErrorVisualizePlugin.class
new file mode 100644
index 00000000..a8771c35
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/ErrorVisualizePlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/GraphVisualizePlugin.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/GraphVisualizePlugin.class
new file mode 100644
index 00000000..e761ee51
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/GraphVisualizePlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/TreeVisualizePlugin.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/TreeVisualizePlugin.class
new file mode 100644
index 00000000..eba113b7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/TreeVisualizePlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/VisualizePlugin.class b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/VisualizePlugin.class
new file mode 100644
index 00000000..026c95e4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/visualize/plugins/VisualizePlugin.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka3.gif b/workflow/apps/java/clustering/bin/weka/gui/weka3.gif
new file mode 100644
index 00000000..fd99fe0c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka3.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_animated.gif b/workflow/apps/java/clustering/bin/weka/gui/weka_animated.gif
new file mode 100644
index 00000000..a5941426
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_animated.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon.gif b/workflow/apps/java/clustering/bin/weka/gui/weka_icon.gif
new file mode 100644
index 00000000..693bea7e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon.jpg b/workflow/apps/java/clustering/bin/weka/gui/weka_icon.jpg
new file mode 100644
index 00000000..2cedca41
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon.jpg differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon.png b/workflow/apps/java/clustering/bin/weka/gui/weka_icon.png
new file mode 100644
index 00000000..19a74c8d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new.png b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new.png
new file mode 100644
index 00000000..1bf5eed3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_1024x1024.png b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_1024x1024.png
new file mode 100644
index 00000000..d230fe95
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_1024x1024.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_48.png b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_48.png
new file mode 100644
index 00000000..8840f1e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_48.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_small.png b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_small.png
new file mode 100644
index 00000000..35264e90
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_icon_new_small.png differ
diff --git a/workflow/apps/java/clustering/bin/weka/gui/weka_stationary.gif b/workflow/apps/java/clustering/bin/weka/gui/weka_stationary.gif
new file mode 100644
index 00000000..f5891a68
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/gui/weka_stationary.gif differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$1.class
new file mode 100644
index 00000000..45d53c12
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$2.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$2.class
new file mode 100644
index 00000000..c3ea89e4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$3.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$3.class
new file mode 100644
index 00000000..ef134b14
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$4.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$4.class
new file mode 100644
index 00000000..396f86e0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$5.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$5.class
new file mode 100644
index 00000000..4ae5bf30
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$6.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$6.class
new file mode 100644
index 00000000..2fe1d08d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$BaseExecutionEnvironmentDefaults.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$BaseExecutionEnvironmentDefaults.class
new file mode 100644
index 00000000..a4091325
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment$BaseExecutionEnvironmentDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment.class
new file mode 100644
index 00000000..f831ce7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/BaseExecutionEnvironment.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/CallbackNotifierDelegate.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/CallbackNotifierDelegate.class
new file mode 100644
index 00000000..2ac94e7b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/CallbackNotifierDelegate.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/Data.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/Data.class
new file mode 100644
index 00000000..2a316d82
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/Data.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/DefaultCallbackNotifierDelegate.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/DefaultCallbackNotifierDelegate.class
new file mode 100644
index 00000000..67265dac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/DefaultCallbackNotifierDelegate.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/DelayedCallbackNotifierDelegate.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/DelayedCallbackNotifierDelegate.class
new file mode 100644
index 00000000..67394172
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/DelayedCallbackNotifierDelegate.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionEnvironment.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionEnvironment.class
new file mode 100644
index 00000000..d8679980
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionEnvironment.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionFinishedCallback.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionFinishedCallback.class
new file mode 100644
index 00000000..97710f5b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionFinishedCallback.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionResult.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionResult.class
new file mode 100644
index 00000000..d2bd6c5e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/ExecutionResult.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/Flow.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/Flow.class
new file mode 100644
index 00000000..0c3a3998
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/Flow.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowExecutor.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowExecutor.class
new file mode 100644
index 00000000..db4d4bb1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowExecutor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowLoader.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowLoader.class
new file mode 100644
index 00000000..65bcfb0c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowLoader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner$1.class
new file mode 100644
index 00000000..0e701c21
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner$SimpleLogger.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner$SimpleLogger.class
new file mode 100644
index 00000000..228e7b19
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner$SimpleLogger.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner.class
new file mode 100644
index 00000000..26b304fd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/FlowRunner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/JSONFlowLoader.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/JSONFlowLoader.class
new file mode 100644
index 00000000..ba69acde
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/JSONFlowLoader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/JSONFlowUtils.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/JSONFlowUtils.class
new file mode 100644
index 00000000..3e20f736
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/JSONFlowUtils.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/JobEnvironment.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/JobEnvironment.class
new file mode 100644
index 00000000..ab4f82b6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/JobEnvironment.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/KFDefaults.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/KFDefaults.class
new file mode 100644
index 00000000..36cc870a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/KFDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/LegacyFlowLoader.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/LegacyFlowLoader.class
new file mode 100644
index 00000000..eabb5fac
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/LegacyFlowLoader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/LogManager.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/LogManager.class
new file mode 100644
index 00000000..79d60cca
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/LogManager.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/LoggingLevel.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/LoggingLevel.class
new file mode 100644
index 00000000..92cb153e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/LoggingLevel.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/SingleThreadedExecution.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/SingleThreadedExecution.class
new file mode 100644
index 00000000..cdabbec0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/SingleThreadedExecution.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepInjectorFlowRunner$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepInjectorFlowRunner$1.class
new file mode 100644
index 00000000..563226e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepInjectorFlowRunner$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepInjectorFlowRunner.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepInjectorFlowRunner.class
new file mode 100644
index 00000000..2b9ab423
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepInjectorFlowRunner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepManager.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepManager.class
new file mode 100644
index 00000000..5f3d52e9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepManager.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepManagerImpl.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepManagerImpl.class
new file mode 100644
index 00000000..0bcf6759
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepManagerImpl.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepOutputListener.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepOutputListener.class
new file mode 100644
index 00000000..d94f4e9e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepOutputListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepTask.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepTask.class
new file mode 100644
index 00000000..9110255a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepTaskCallback.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepTaskCallback.class
new file mode 100644
index 00000000..89c98792
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/StepTaskCallback.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ASEvaluator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ASEvaluator.class
new file mode 100644
index 00000000..e20994a4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ASEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ASSearchStrategy.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ASSearchStrategy.class
new file mode 100644
index 00000000..ce77353f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ASSearchStrategy.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName$1.class
new file mode 100644
index 00000000..be38e88f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName$ModType.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName$ModType.class
new file mode 100644
index 00000000..e64da04c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName$ModType.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName.class
new file mode 100644
index 00000000..f2511202
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AlterRelationName.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Appender.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Appender.class
new file mode 100644
index 00000000..25bf5461
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Appender.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Associator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Associator.class
new file mode 100644
index 00000000..56720575
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Associator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AttributeSummarizer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AttributeSummarizer.class
new file mode 100644
index 00000000..7f1c1bdf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/AttributeSummarizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseSimpleDataVisualizer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseSimpleDataVisualizer.class
new file mode 100644
index 00000000..d433cedd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseSimpleDataVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseStep.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseStep.class
new file mode 100644
index 00000000..59f83dd1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseStep.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseStepExtender.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseStepExtender.class
new file mode 100644
index 00000000..a0bb429d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BaseStepExtender.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Block.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Block.class
new file mode 100644
index 00000000..c072efec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Block.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$RenderingUpdateListener.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$RenderingUpdateListener.class
new file mode 100644
index 00000000..5017ba1b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$RenderingUpdateListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$RowResult.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$RowResult.class
new file mode 100644
index 00000000..f4eef4d6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$RowResult.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$SchemeRowTask.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$SchemeRowTask.class
new file mode 100644
index 00000000..51360454
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter$SchemeRowTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter.class
new file mode 100644
index 00000000..855981cc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/BoundaryPlotter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassAssigner.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassAssigner.class
new file mode 100644
index 00000000..28f15c5d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassAssigner.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassValuePicker.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassValuePicker.class
new file mode 100644
index 00000000..c2836b52
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassValuePicker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Classifier.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Classifier.class
new file mode 100644
index 00000000..b1ed56e5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Classifier.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$AggregateableClassifierErrorsPlotInstances.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$AggregateableClassifierErrorsPlotInstances.class
new file mode 100644
index 00000000..ae608ba0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$AggregateableClassifierErrorsPlotInstances.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$EvaluationCallback.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$EvaluationCallback.class
new file mode 100644
index 00000000..bca936c3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$EvaluationCallback.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$EvaluationTask.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$EvaluationTask.class
new file mode 100644
index 00000000..0762edb2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator$EvaluationTask.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator.class
new file mode 100644
index 00000000..48934530
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClassifierPerformanceEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Clusterer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Clusterer.class
new file mode 100644
index 00000000..af556271
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Clusterer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClustererPerformanceEvaluator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClustererPerformanceEvaluator.class
new file mode 100644
index 00000000..44aaf086
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ClustererPerformanceEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/CostBenefitAnalysis.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/CostBenefitAnalysis.class
new file mode 100644
index 00000000..0d6b86ec
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/CostBenefitAnalysis.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/CrossValidationFoldMaker.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/CrossValidationFoldMaker.class
new file mode 100644
index 00000000..32328236
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/CrossValidationFoldMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataCollector.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataCollector.class
new file mode 100644
index 00000000..1070adbd
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataCollector.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataGenerator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataGenerator.class
new file mode 100644
index 00000000..23aa08ba
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataGenerator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataGrid.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataGrid.class
new file mode 100644
index 00000000..b8349b87
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataGrid.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataVisualizer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataVisualizer.class
new file mode 100644
index 00000000..6b12c38a
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/DataVisualizer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Dummy.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Dummy.class
new file mode 100644
index 00000000..ca4ba4e8
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Dummy.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ExecuteProcess.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ExecuteProcess.class
new file mode 100644
index 00000000..6e52bb5d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ExecuteProcess.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Filter.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Filter.class
new file mode 100644
index 00000000..63128696
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Filter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$1.class
new file mode 100644
index 00000000..379df8a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$BracketNode.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$BracketNode.class
new file mode 100644
index 00000000..68578c8c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$BracketNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$1.class
new file mode 100644
index 00000000..908d497d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$10.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$10.class
new file mode 100644
index 00000000..47e85241
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$10.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$11.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$11.class
new file mode 100644
index 00000000..ad78ac60
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$11.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$2.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$2.class
new file mode 100644
index 00000000..032d6f92
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$2.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$3.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$3.class
new file mode 100644
index 00000000..c573da89
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$3.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$4.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$4.class
new file mode 100644
index 00000000..0d3bb56b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$4.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$5.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$5.class
new file mode 100644
index 00000000..fb9729ef
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$5.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$6.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$6.class
new file mode 100644
index 00000000..f1a7aa5c
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$6.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$7.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$7.class
new file mode 100644
index 00000000..02b13569
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$7.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$8.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$8.class
new file mode 100644
index 00000000..47605a28
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$8.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$9.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$9.class
new file mode 100644
index 00000000..ad8b9400
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType$9.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType.class
new file mode 100644
index 00000000..5b0ce279
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause$ExpressionType.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause.class
new file mode 100644
index 00000000..a11cc252
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionClause.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionNode.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionNode.class
new file mode 100644
index 00000000..397c5729
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression$ExpressionNode.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression.class
new file mode 100644
index 00000000..950266b6
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/FlowByExpression.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/GetDataFromResult.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/GetDataFromResult.class
new file mode 100644
index 00000000..be1113bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/GetDataFromResult.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/GraphViewer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/GraphViewer.class
new file mode 100644
index 00000000..ab3b00a3
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/GraphViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver$ImageFormat.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver$ImageFormat.class
new file mode 100644
index 00000000..90de33e0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver$ImageFormat.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver$ImageSaverDefaults.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver$ImageSaverDefaults.class
new file mode 100644
index 00000000..0bb75350
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver$ImageSaverDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver.class
new file mode 100644
index 00000000..28d225e0
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageSaver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageViewer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageViewer.class
new file mode 100644
index 00000000..767793f4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ImageViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/IncrementalClassifierEvaluator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/IncrementalClassifierEvaluator.class
new file mode 100644
index 00000000..7dc4a175
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/IncrementalClassifierEvaluator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/InstanceStreamToBatchMaker.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/InstanceStreamToBatchMaker.class
new file mode 100644
index 00000000..dc5d1ecc
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/InstanceStreamToBatchMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Job$1.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Job$1.class
new file mode 100644
index 00000000..963ef5bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Job$1.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Job.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Job.class
new file mode 100644
index 00000000..dc80bc95
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Job.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Join.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Join.class
new file mode 100644
index 00000000..d842c865
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Join.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/KFStep.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/KFStep.class
new file mode 100644
index 00000000..a344dfb9
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/KFStep.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Loader.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Loader.class
new file mode 100644
index 00000000..010381c5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Loader.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/MakeResourceIntensive.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/MakeResourceIntensive.class
new file mode 100644
index 00000000..842043e7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/MakeResourceIntensive.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/MemoryBasedDataSource.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/MemoryBasedDataSource.class
new file mode 100644
index 00000000..85b01b26
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/MemoryBasedDataSource.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ModelPerformanceChart.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ModelPerformanceChart.class
new file mode 100644
index 00000000..c4d6a74d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ModelPerformanceChart.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/NotPersistable.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/NotPersistable.class
new file mode 100644
index 00000000..127fb07e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/NotPersistable.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Note.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Note.class
new file mode 100644
index 00000000..e593c789
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Note.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PairedDataHelper$PairedProcessor.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PairedDataHelper$PairedProcessor.class
new file mode 100644
index 00000000..42f83577
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PairedDataHelper$PairedProcessor.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PairedDataHelper.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PairedDataHelper.class
new file mode 100644
index 00000000..6a0b7ab7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PairedDataHelper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PredictionAppender.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PredictionAppender.class
new file mode 100644
index 00000000..8cbdb9b2
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/PredictionAppender.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Saver.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Saver.class
new file mode 100644
index 00000000..fc1c997b
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Saver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ScatterPlotMatrix.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ScatterPlotMatrix.class
new file mode 100644
index 00000000..15b55c87
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/ScatterPlotMatrix.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SendToPerspective.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SendToPerspective.class
new file mode 100644
index 00000000..9538e1a1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SendToPerspective.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SerializedModelSaver.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SerializedModelSaver.class
new file mode 100644
index 00000000..3a3dc2bf
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SerializedModelSaver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SetPropertiesFromEnvironment.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SetPropertiesFromEnvironment.class
new file mode 100644
index 00000000..e4d20ade
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SetPropertiesFromEnvironment.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SetVariables.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SetVariables.class
new file mode 100644
index 00000000..2c378de4
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SetVariables.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$InstanceHolder.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$InstanceHolder.class
new file mode 100644
index 00000000..cea13992
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$InstanceHolder.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$SortComparator.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$SortComparator.class
new file mode 100644
index 00000000..cdb1c1ea
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$SortComparator.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$SortRule.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$SortRule.class
new file mode 100644
index 00000000..df27bc17
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter$SortRule.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter.class
new file mode 100644
index 00000000..69ceb606
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Sorter.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Step.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Step.class
new file mode 100644
index 00000000..c1106ad5
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/Step.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StorePropertiesInEnvironment.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StorePropertiesInEnvironment.class
new file mode 100644
index 00000000..5c016323
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StorePropertiesInEnvironment.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StripChart$PlotNotificationListener.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StripChart$PlotNotificationListener.class
new file mode 100644
index 00000000..cd8dc64f
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StripChart$PlotNotificationListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StripChart.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StripChart.class
new file mode 100644
index 00000000..15d7820e
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/StripChart.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SubstringLabeler.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SubstringLabeler.class
new file mode 100644
index 00000000..b4ef1491
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SubstringLabeler.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SubstringReplacer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SubstringReplacer.class
new file mode 100644
index 00000000..50bf37ed
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/SubstringReplacer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TestSetMaker.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TestSetMaker.class
new file mode 100644
index 00000000..b3abd427
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TestSetMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextSaver$TextSaverDefaults.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextSaver$TextSaverDefaults.class
new file mode 100644
index 00000000..9d17955d
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextSaver$TextSaverDefaults.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextSaver.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextSaver.class
new file mode 100644
index 00000000..b8c7aca1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextSaver.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextViewer$TextNotificationListener.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextViewer$TextNotificationListener.class
new file mode 100644
index 00000000..93b81b53
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextViewer$TextNotificationListener.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextViewer.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextViewer.class
new file mode 100644
index 00000000..dff1c7a7
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TextViewer.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TrainTestSplitMaker.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TrainTestSplitMaker.class
new file mode 100644
index 00000000..84c74b64
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TrainTestSplitMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TrainingSetMaker.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TrainingSetMaker.class
new file mode 100644
index 00000000..f4defcdb
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/TrainingSetMaker.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WekaAlgorithmWrapper.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WekaAlgorithmWrapper.class
new file mode 100644
index 00000000..d92753d1
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WekaAlgorithmWrapper.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WriteDataToResult.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WriteDataToResult.class
new file mode 100644
index 00000000..55150938
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WriteDataToResult.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WriteWekaLog.class b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WriteWekaLog.class
new file mode 100644
index 00000000..05610380
Binary files /dev/null and b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/WriteWekaLog.class differ
diff --git a/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/steps.props b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/steps.props
new file mode 100644
index 00000000..145d23ab
--- /dev/null
+++ b/workflow/apps/java/clustering/bin/weka/knowledgeflow/steps/steps.props
@@ -0,0 +1,28 @@
+weka.knowledgeflow.steps.Step=weka.knowledgeflow.steps.Loader,weka.knowledgeflow.steps.Saver,\
+weka.knowledgeflow.steps.DataGenerator,weka.knowledgeflow.steps.Filter,\
+weka.knowledgeflow.steps.Classifier,weka.knowledgeflow.steps.Clusterer,\
+weka.knowledgeflow.steps.Associator,weka.knowledgeflow.steps.ASEvaluator,\
+weka.knowledgeflow.steps.ASSearchStrategy,\
+weka.knowledgeflow.steps.TrainingSetMaker,weka.knowledgeflow.steps.TestSetMaker,\
+weka.knowledgeflow.steps.TrainTestSplitMaker,weka.knowledgeflow.steps.ClassAssigner,\
+weka.knowledgeflow.steps.ClassValuePicker,weka.knowledgeflow.steps.ClassifierPerformanceEvaluator,\
+weka.knowledgeflow.steps.ClustererPerformanceEvaluator,\
+weka.knowledgeflow.steps.CrossValidationFoldMaker,weka.knowledgeflow.steps.Dummy,\
+weka.knowledgeflow.steps.PredictionAppender,weka.knowledgeflow.steps.TextSaver,\
+weka.knowledgeflow.steps.ImageSaver,\
+weka.knowledgeflow.steps.TextViewer,weka.knowledgeflow.steps.ImageViewer,\
+weka.knowledgeflow.steps.AttributeSummarizer,\
+weka.knowledgeflow.steps.IncrementalClassifierEvaluator,weka.knowledgeflow.steps.StripChart,\
+weka.knowledgeflow.steps.ModelPerformanceChart,weka.knowledgeflow.steps.DataVisualizer,\
+weka.knowledgeflow.steps.BoundaryPlotter,\
+weka.knowledgeflow.steps.ScatterPlotMatrix,weka.knowledgeflow.steps.GraphViewer,\
+weka.knowledgeflow.steps.CostBenefitAnalysis,weka.knowledgeflow.steps.SerializedModelSaver,\
+weka.knowledgeflow.steps.SetVariables,weka.knowledgeflow.steps.MakeResourceIntensive,\
+weka.knowledgeflow.steps.Block,weka.knowledgeflow.steps.AlterRelationName,\
+weka.knowledgeflow.steps.Sorter,weka.knowledgeflow.steps.SubstringReplacer,\
+weka.knowledgeflow.steps.SubstringLabeler,weka.knowledgeflow.steps.Appender,\
+weka.knowledgeflow.steps.FlowByExpression,weka.knowledgeflow.steps.InstanceStreamToBatchMaker,\
+weka.knowledgeflow.steps.Join,weka.knowledgeflow.steps.DataGrid,weka.knowledgeflow.steps.SendToPerspective,\
+weka.knowledgeflow.steps.WriteWekaLog,weka.knowledgeflow.steps.Job,weka.knowledgeflow.steps.StorePropertiesInEnvironment,\
+weka.knowledgeflow.steps.SetPropertiesFromEnvironment,weka.knowledgeflow.steps.WriteDataToResult,\
+weka.knowledgeflow.steps.GetDataFromResult,weka.knowledgeflow.steps.ExecuteProcess
diff --git a/workflow/apps/java/clustering/build b/workflow/apps/java/clustering/build
new file mode 100755
index 00000000..960e4708
--- /dev/null
+++ b/workflow/apps/java/clustering/build
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+#
+# On rpm, you'll need:
+#
+# * java-devel
+# * javapackages-tools
+# * ecj
+#
+
+dirs=(bin lib src)
+name="weka-clustering.jar"
+weka_version="3.8.6"
+weka_version_hyphen="3-8-6"
+
+[[ -f $name ]] && mv "$name" "$name.bk"
+
+[[ -d src ]] || (echo "This script requires the input java files in src"; exit)
+
+rm -rf bin
+
+for d in "${dirs[@]}"; do
+ [[ -d $d ]] || mkdir "$d"
+done
+
+# Download and extract weka.jar to the lib dir
+wget -qO temp.zip "https://sourceforge.net/projects/weka/files/weka-${weka_version_hyphen%-*}/$weka_version/weka-$weka_version_hyphen.zip/download" &&
+unzip -o -j temp.zip weka-$weka_version_hyphen/weka.jar -d lib &&
+rm temp.zip
+
+# Build the classes from source java
+ecj -17 -classpath lib/weka.jar -d bin src &&
+
+# Add weka classes to the bin
+unzip -o lib/weka.jar -d bin &&
+
+# Create the jar file from the classes
+jar cf "$name" -C bin .
diff --git a/workflow/apps/java/clustering/lib/weka.jar b/workflow/apps/java/clustering/lib/weka.jar
new file mode 100644
index 00000000..0bf8f244
Binary files /dev/null and b/workflow/apps/java/clustering/lib/weka.jar differ
diff --git a/workflow/apps/java/clustering/src/ExecMain.java b/workflow/apps/java/clustering/src/ExecMain.java
new file mode 100755
index 00000000..89da1a11
--- /dev/null
+++ b/workflow/apps/java/clustering/src/ExecMain.java
@@ -0,0 +1,102 @@
+/*
+ * This is the main class to execute the computation and get the GOID.
+ */
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.OutputStreamWriter;
+import java.util.Vector;
+import weka.core.Instances;
+
+/**
+ *
+ * @author DTian
+ */
+public class ExecMain {
+
+ public static void main(String[] args) {
+
+// SGD2AttrTable sgd = new SGD2AttrTable();
+// Get clusters
+
+ try {
+ // Check the input arguments
+ checkParameters(args.length);
+ GetClusters myGetClusters = new GetClusters();
+
+ // To get the input file type
+ Instances oriData = myGetClusters.input(args[0]);
+
+ // Get the output files name
+ String outputWholeCluster = args[0] + "-WholeTree.txt";
+ String outputFinalTable = args[0] + "-finalTable.csv";
+ String outputSummary = args[0] + "-summary.csv";
+ boolean fromFunction = true?false:args[4].trim().compareToIgnoreCase("true") == 0;
+
+ // Create the root cluster name
+ int round = 1; //for tree level
+ int position = 0; // for node position in same level
+ String rootName = (round-1)+"-"+position+"-"+0;
+
+ // System.out.println("root cluster is:" + rootName);
+ myGetClusters.printRootName(outputWholeCluster,rootName);
+
+ // Create a vector for fianl table
+ Vector vecFinalTable = new Vector();
+ Vector vecSummary = new Vector();
+
+ //get the variable name
+ vecFinalTable.addElement(myGetClusters.printTableHead(oriData));
+
+ // Create the root node
+ TreeNode root = new TreeNode(rootName,0.0,oriData,null);
+ OutputStreamWriter xmlWriter = new OutputStreamWriter(
+ new FileOutputStream(new File("tree.xml"), true));
+ xmlWriter.write(" \n \n \n \n");
+ xmlWriter.write(" \n \n");
+ xmlWriter.flush();
+
+ // Recursive clustering the data
+ myGetClusters.clustering(
+ root,
+ round,
+ ""+position,
+ vecFinalTable,
+ vecSummary,
+ outputWholeCluster,
+ xmlWriter,
+ args[1],
+ args[2],
+ args[3],
+ fromFunction
+ );
+
+ xmlWriter.write(" \n");
+ xmlWriter.write("\n");
+ xmlWriter.close();
+
+ // Output final result
+ myGetClusters.printVector(vecFinalTable,outputFinalTable);
+ myGetClusters.printVector(vecSummary,outputSummary);
+ } catch (Exception e) {
+ e.printStackTrace();
+ System.exit(1);
+ }
+ }
+
+ /**
+ * check the number of the arguments:
+ * java GetCluster arg1 arg2 ...
+ *
+ * @param length the length of the arguments
+ * in this program, length should be 1
+ */
+ private static void checkParameters(int length) {
+ if(length != 5) {
+ // there are 5 parameters, 1,file for clustering; 2, lookup table file;
+ // 3, backgroud file; 4, repeat counts(an integer) 5, GoIDfromFunction (boolean)
+ System.out.println("Usage: java ExecMain clusterFileName GoMatrixFilename backGroundFilename repeatTime true|false");
+ System.exit(1);
+ }
+ }
+}
diff --git a/workflow/apps/java/clustering/src/GetClusters.java b/workflow/apps/java/clustering/src/GetClusters.java
new file mode 100755
index 00000000..9d387bd9
--- /dev/null
+++ b/workflow/apps/java/clustering/src/GetClusters.java
@@ -0,0 +1,532 @@
+
+/**
+ * This program will take an input file(either in arff format or csv format).
+ * outout 3 files: one is the tree structure. another is the final table with
+ * all information, the last one is the summary information
+ *
+ */
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.FileReader;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.util.Vector;
+
+import weka.clusterers.ClusterEvaluation;
+import weka.clusterers.EM;
+import weka.core.Instances;
+
+public class GetClusters {
+
+ public GetClusters() {
+ }
+
+ /**
+ *
+ * @param root the tree node we need to cluster
+ * @param generation the depth of the tree
+ * @param position the breadth of the tree
+ * @param vecFinalTable contain the final table
+ */
+ public int clustering(TreeNode root, int generation,
+ String position, Vector vecFinalTable,
+ Vector vecSummary, String outputFilename, OutputStreamWriter xmlWriter,
+ String lookupFile, String backgroundFile, String count, boolean fromFunction) {
+ int result = 0;
+ try {
+
+ FileOutputStream stream;// provides file access
+ OutputStreamWriter writer;// writes to the file
+ stream = new FileOutputStream(new File(outputFilename), true);
+ writer = new OutputStreamWriter(stream);
+
+ // ***** 1 create a copy of original data *****
+ Instances oriData = root.getData();
+ Instances data = new Instances(oriData);
+
+ // ***** 2 remove attribute: orf_name(string attribute) *****
+// data.deleteAttributeAt(0);
+ data.deleteStringAttributes();
+
+ // ***** 3 clustering *****
+ EM clusterer = new EM(); // new instance of clusterer
+ clusterer.buildClusterer(data); // build the clusterer
+
+ // evaluate cluster
+ ClusterEvaluation eval = new ClusterEvaluation();
+ eval.setClusterer(clusterer); // the cluster to evaluate
+ eval.evaluateClusterer(data); // data to evaluate the clusterer on
+
+ //get the rawGoID and zScore for the
+ //to be continued. AAA
+ String[] clusterNames = getClusterNames(oriData);
+ double[] goID = null;
+ if(fromFunction){
+ goID = this.getGoID(clusterNames, lookupFile, backgroundFile,count);
+ }else{
+ goID = this.getGoIDFromFunc(clusterNames, lookupFile, backgroundFile,count);
+ }
+
+ double logLikelihood = eval.getLogLikelihood();
+ writer.write("logLikelihood is: " + logLikelihood + "\n");
+ writer.write("GoID is: " + goID[0] + "\n");
+ writer.write("zScore is: " + goID[1] + "\n\n");
+ writer.flush();
+
+ // ***** 4 get the sub clusters *****
+ int numberOfSubCluster = eval.getNumClusters();
+ if (numberOfSubCluster > 1) {// not an end node
+
+ // create numberOfSubCluster instances array to store sub
+ // clusters
+ Instances[] subData = new Instances[numberOfSubCluster];
+ TreeNode[] subNode = new TreeNode[numberOfSubCluster];
+ for (int i = 0; i < numberOfSubCluster; i++) {
+ subData[i] = new Instances(oriData);
+ subData[i].delete();// keep only data head(attributes part)
+ }
+ // //System.out.println("\nlength is: " + data.numInstances());
+ // //System.out.println("number of clusters: " +
+ // numberOfSubCluster);
+
+ // //System.out.println(eval.clusterResultsToString());
+ double[] dArray = eval.getClusterAssignments();
+ for (int i = 0; i < dArray.length; i++) {
+ int clusterNumber = (int) dArray[i];
+ // //System.out.println("\ngene " + i + " is in cluster: "
+ // + clusterNumber + ",\tlog likelihood is:"
+ // + eval.getLogLikelihood());
+ // //System.out.println("***************");
+
+ // assign each gene to according cluster
+ for (int j = 0; j < subData.length; j++) {
+ if (j == clusterNumber) {
+ subData[j].add(oriData.instance(i));
+ }
+ }// end of inner j loop
+ }// end of outter i loop
+
+
+ // ***** 5 recursive call *****
+ String uniName = "";
+// for (int i = 0; i <= generation; i++) {
+// uniName += "0";
+// }
+ uniName += generation + "-" + position;
+ generation++;
+ for (int i = 0; i < numberOfSubCluster; i++) {
+ String name = uniName + "-" + i;
+ //System.out.println("\n******************************");
+ //System.out.println("cluster name: " + name);
+ writer.write("\n******************************\n");
+ writer.write("cluster name: " + name + "\n");
+ writer.flush();
+ xmlWriter.write(" \n \n");
+ xmlWriter.flush();
+
+ subNode[i] = new TreeNode(name, eval.getLogLikelihood(),
+ subData[i], root);
+ result += clustering(subNode[i], generation,
+ position + "." + i, vecFinalTable, vecSummary, outputFilename,
+ xmlWriter,lookupFile,backgroundFile,count,fromFunction);
+ xmlWriter.write(" \n");
+ xmlWriter.flush();
+ }// end of for loop
+ } else { //for leaf node
+ //System.out.println("leaf node");
+ result = 1;
+ int temp = 1;
+ if (!vecSummary.isEmpty()) {
+ String strT = (vecSummary.lastElement().toString()).split(",")[1];
+ temp = Integer.parseInt(strT.trim()) + 1;
+ }
+ writer.write("leaf node\n");
+ writer.flush();
+
+ for (int i = 0; i < root.getData().numInstances(); i++) {
+ String strTemp = eval.getLogLikelihood() + "," + root.getData().instance(i) + "," + getAncestor(root, false) + "," + temp;
+ //System.out.println( strTemp);
+ writer.write(strTemp + "\n");
+ writer.flush();
+ xmlWriter.write("\n \n\n");
+ xmlWriter.flush();
+ vecFinalTable.addElement(strTemp);
+ }
+
+ vecSummary.addElement(getAncestor(root, false).toString() + "," + temp + "," + root.getData().numInstances() + "," + logLikelihood);
+ //System.out.println("******************************\n");
+ writer.write("******************************\n");
+ writer.flush();
+ generation--;
+ }//end of else
+
+
+ writer.close();
+ stream.close();
+
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return result;
+ }//end of method "clustering"
+
+ /**
+ * output the root cluster name to file
+ * @param fileName output file name
+ * @param rootName thr root cluster name
+ */
+ public void printRootName(String fileName, String rootName) {
+ try {
+ FileOutputStream stream;// provides file access
+ OutputStreamWriter writer;// writes to the file
+ stream = new FileOutputStream(new File(fileName), true);
+ writer = new OutputStreamWriter(stream);
+ writer.write("root cluster is:" + rootName + "\n");
+ writer.flush();
+ writer.close();
+ stream.close();
+ } catch (FileNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * print out the instance part of the data into a CSV formated table.
+ *
+ * @param data: the printed data set
+ */
+ public String printTableHead(Instances data) {
+ String strResult = "likelihood";
+ for (int i = 0; i < data.numAttributes(); i++) {
+ String strTemp = "";
+ String[] strArr = data.attribute(i).toString().split("\\ ");
+ for (int j = 1; j < strArr.length - 1; j++) {
+ strTemp += strArr[j];
+ }
+ strResult += "," + strTemp;
+ }
+
+ return strResult + ",cluster origin,cluster ID";
+ }//end of method "printTalbe"
+
+ /**
+ * print the vector
+ * @param vec
+ */
+ public void printVector(Vector vec, String outputFilename) {
+ //System.out.println("\n***************************");
+ //System.out.println("*** final result ***");
+ //System.out.println("***************************");
+
+ try {
+ FileOutputStream stream;// provides file access
+ OutputStreamWriter writer;// writes to the file
+ stream = new FileOutputStream(new File(outputFilename), false);
+ writer = new OutputStreamWriter(stream);
+
+ for (int i = 0; i < vec.size(); i++) {
+ //System.out.println(vec.elementAt(i));
+ writer.write(vec.elementAt(i).toString() + "\n");
+ }
+
+ writer.close();
+ stream.close();
+ } catch (FileNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ //System.out.println("\n***************************");
+ //System.out.println("*** end of final result ***");
+ //System.out.println("***************************");
+ }
+
+ /**
+ *
+ * @param endNode an leaf node
+ * @return a string contains all the ancestor's name of the node
+ */
+ public String getAncestor(TreeNode endNode, boolean fromLeafNode) {
+ String strResult = endNode.getStrName();
+ TreeNode tempNode = endNode;
+ while (tempNode.getParent() != null) {
+ tempNode = tempNode.getParent();
+ strResult += "; " + tempNode.getStrName();
+ }
+ if (fromLeafNode) {
+ return strResult;
+ } else {
+ String newResult = "";
+ String[] history = strResult.split("\\;");
+ for (int i = history.length; i > 0; i--) {
+ newResult += history[i - 1] + "; ";
+ }
+ return newResult;
+ }
+ }
+
+ /**
+ * check the number of the arguments:
+ * java GetCluster arg1 arg2 ...
+ *
+ * @param length the length of the arguments
+ * in this program, length should be 1
+ */
+ public void checkParameters(int length) {
+ if (length != 1) {
+ System.out.println("Usage: java GetCluster inputFileName");
+ System.exit(1);
+ }
+ }
+
+ /**
+ *
+ * @param inputFileName the name of the input file name
+ * @return an Instances of Weka Instances
+ */
+ public Instances input(String inputFileName) {
+ String[] inputName = inputFileName.split("\\.");
+ Instances oriData = null;
+ try {
+ if (inputName[inputName.length - 1].compareToIgnoreCase("csv") == 0) {
+// read from csv file
+ readCSV(inputFileName);
+ FileReader f = new FileReader(inputFileName + ".arff");
+ BufferedReader b = new BufferedReader(f);
+ oriData = new Instances(b);
+ } else if (inputName[inputName.length - 1].compareToIgnoreCase("arff") == 0) {
+ // read from arff data
+ FileReader f = new FileReader(inputFileName);
+ BufferedReader b = new BufferedReader(f);
+ oriData = new Instances(b);
+ } else {
+ System.out.println("only .arff or .csv format allowed!");
+ System.exit(1);
+ }
+ } catch (FileNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return oriData;
+ }
+
+ /**
+ * read a csv file and convert to a arff file
+ * @param inputName the name of the csv file
+ */
+ public void readCSV(String inputName) {
+
+ try {
+ FileReader fr = new FileReader(inputName);
+ BufferedReader br = new BufferedReader(fr);
+ FileOutputStream stream;// provides file access
+ OutputStreamWriter writer;// writes to the file
+ stream = new FileOutputStream(new File(inputName + ".arff"), false);
+ writer = new OutputStreamWriter(stream);
+
+ String strLine = br.readLine();
+ String[] varNameArray = strLine.split("\\,");
+
+ writer.write("@RELATION dataset" + "\n\n");
+ for (int i = 0; i < varNameArray.length; i++) {
+ if (i < 2) {
+ writer.write("@ATTRIBUTE" + " " + "\"" + varNameArray[i] + "\"" + " " + "string" + "\n");
+ } else {
+ writer.write("@ATTRIBUTE" + " " + "\"" + varNameArray[i] + "\"" + " " + "numeric" + "\n");
+ }
+ }
+ writer.write("\n@DATA\n");
+ while ((strLine = br.readLine()) != null) {
+ writer.write(strLine + "\n");
+ }
+
+ writer.close();
+ stream.close();
+ fr.close();
+ br.close();
+
+ } catch (FileNotFoundException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ }
+
+ /**
+ *
+ * @param data
+ * @return an array contains the first element
+ * of each instance of input data
+ */
+ private String[] getClusterNames(Instances data) {
+ String[] result = new String[data.numInstances()];
+ for (int i = 0; i < result.length; i++) {
+ String[] strArray = data.instance(i).toString().split("\\,");
+ result[i] = strArray[0];
+ }
+ return result;
+ }
+
+ private double[] getGoID(String[] clusterNames, String lookupFile, String backgroundFile, String count) {
+ //********************************
+ // part 2, calculate RawGoID
+ //********************************
+ double[] result = new double[2];
+
+ //initialize local variables:
+ RawGoID myRawGoID = new RawGoID(clusterNames, lookupFile, backgroundFile);
+ double clusterGoid = myRawGoID.getRawGoID();
+ double randomAve = 0.0;
+ double randomStd = 0.0;
+ double zScore = 0.0;
+
+ // System.out.println("real cluster raw GOid =" + clusterGoid);
+
+ // get 'repeat time' random rawGoIDs
+ double[] randomGoid = new double[Integer.parseInt(count)];
+ for (int i = 0; i < Integer.parseInt(count); i++) {
+ randomGoid[i] = myRawGoID.getRandomRawGoID();
+// System.out.println("now is in loop :" + (i + 1));
+// System.out.println("randomGOid = " + randomGoid[i]);
+ }
+
+ //calculate
+ randomAve = Stats.getMean(randomGoid);
+ randomStd = Stats.getStdDev(randomGoid);
+ zScore = Stats.getZscore(randomAve, randomStd, clusterGoid);
+ result[0] = clusterGoid;
+ result[1] = zScore;
+ return result;
+
+ }
+
+ private double[] getGoIDFromFunc(String[] clusterNames, String lookupFile, String backgroundFile, String count) {
+ //********************************
+ // part 2, calculate RawGoID
+ //********************************
+ double[] result = new double[2];
+
+ //initialize local variables:
+ RawGoID myRawGoID = new RawGoID(clusterNames, lookupFile, backgroundFile);
+ double clusterGoid = myRawGoID.getRawGoID();
+ double randomAve = 0.0;
+ double randomStd = 0.0;
+ double zScore = 0.0;
+
+ // System.out.println("real cluster raw GOid =" + clusterGoid);
+
+ // get 'repeat time' random rawGoIDs
+ double[] randomGoid = new double[Integer.parseInt(count)];
+ for (int i = 0; i < Integer.parseInt(count); i++) {
+ randomGoid[i] = myRawGoID.getRandomRawGoID();
+// System.out.println("now is in loop :" + (i + 1));
+// System.out.println("randomGOid = " + randomGoid[i]);
+ }
+
+ //calculate
+ randomAve = Stats.getMeanFromFunc(myRawGoID.getOriClusterSize());
+ randomStd = Stats.getStdDevFromFunc(myRawGoID.getOriClusterSize());
+ zScore = Stats.getZscore(randomAve, randomStd, clusterGoid);
+ result[0] = clusterGoid;
+ result[1] = zScore;
+ return result;
+
+ }
+}//end of class
+
+
+
+final class TreeNode {
+
+ private String strName;
+ private double dLikelihood;
+ private Instances data;
+ private TreeNode parent;
+// TreeNode child;
+
+ /**
+ * @param strName name of node
+ * @param likelihood likelihood of the data
+ * @param data data set
+ * @param parent point to its parent node
+ * @param child point to its child node
+ */
+ public TreeNode(String strName, double likelihood, Instances data, TreeNode parent) {
+ this.strName = strName;
+ dLikelihood = likelihood;
+ this.data = data;
+ this.parent = parent;
+ }
+
+ /**
+ * @return the data
+ */
+ public Instances getData() {
+ return data;
+ }
+
+ /**
+ * @param data the data to set
+ */
+ public void setData(Instances data) {
+ this.data = data;
+ }
+
+ /**
+ * @return the dLikelihood
+ */
+ public double getDLikelihood() {
+ return dLikelihood;
+ }
+
+ /**
+ * @param likelihood the dLikelihood to set
+ */
+ public void setDLikelihood(double likelihood) {
+ dLikelihood = likelihood;
+ }
+
+ /**
+ * @return the parent
+ */
+ public TreeNode getParent() {
+ return parent;
+ }
+
+ /**
+ * @param parent the parent to set
+ */
+ public void setParent(TreeNode parent) {
+ this.parent = parent;
+ }
+
+ /**
+ * @return the strName
+ */
+ public String getStrName() {
+ return strName;
+ }
+
+ /**
+ * @param strName the strName to set
+ */
+ public void setStrName(String strName) {
+ this.strName = strName;
+ }
+}
diff --git a/workflow/apps/java/clustering/src/Information.java b/workflow/apps/java/clustering/src/Information.java
new file mode 100755
index 00000000..8fdeb7ff
--- /dev/null
+++ b/workflow/apps/java/clustering/src/Information.java
@@ -0,0 +1,165 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+import java.io.BufferedWriter;
+import java.io.FileWriter;
+import java.util.HashMap;
+import java.util.Iterator;
+
+/**
+ *
+ * @author DTian
+ */
+public class Information {
+
+ /**
+ *
+ * @param key the key of the dictionary
+ * @return the entropy
+ */
+ public static double entropy(String [] data ) {
+ double entropy = 0;
+
+ // Frequency table
+ HashMap freqDict = new HashMap();
+ int one = 1;
+
+ for(int i=0; i probDict1 = new HashMap();
+ HashMap probDict2 = new HashMap();
+ Iterator it = freqDict1.keySet().iterator();
+ while (it.hasNext()) {
+ Object newkey = it.next();
+ double value = 0;
+ value = Double.parseDouble((String) freqDict1.get(newkey)) / data1.length;
+ probDict1.put(newkey, value + "");
+ }
+
+ it = freqDict2.keySet().iterator();
+ while (it.hasNext()) {
+ Object newkey = it.next();
+ double value = 0;
+ value = Double.parseDouble((String) freqDict2.get(newkey)) / data2.length;
+ probDict2.put(newkey, value + "");
+ }
+
+ // Calculate the relative entropy
+ it = probDict1.keySet().iterator();
+ while (it.hasNext()) {
+ Object newkey = it.next();
+ Object value1 = probDict1.get(newkey);
+ //Object value2 = probDict2.get(newkey);
+ double dValue1 = Double.parseDouble(probDict1.get(newkey).toString());
+ double dValue2 = Double.parseDouble(probDict2.get(newkey).toString());
+ if ( value1.toString().trim().compareToIgnoreCase("1.0") == 0) {
+ result = result + dValue1 * (Math.log(dValue1/dValue2) / Math.log(2));
+ } else if (value1.toString().trim().compareToIgnoreCase("0") == 0){
+ result = result + (1-dValue1) * (Math.log((1-dValue1)/(1-dValue2)) / Math.log(2));
+ } else {
+ result = result + dValue1 * (Math.log(dValue1/dValue2) / Math.log(2));
+ result = result + (1-dValue1) * (Math.log((1-dValue1)/(1-dValue2)) / Math.log(2));
+ }
+ // toFile(result+"", "probDict1.txt");
+ // toFile(result, "resultsOfresult.txt");//check point by Jingyu
+ }
+ //toFile(probDict1.size()+ "*******************", "probDict1.txt");
+ //System.out.println("relative entropy = " + result);
+ return result;
+ }
+
+ private static void toFile(String data, String filename) {
+
+ // Output to file
+ try {
+ BufferedWriter writer = new BufferedWriter(new FileWriter(filename,true));
+ writer.write(data + "\n");
+ writer.close();
+ } catch (Exception e) {
+ System.err.println(e.getStackTrace());
+ }
+ }
+
+ private static void toFileHM(HashMap data, String filename) {
+
+ // Output to file
+ try {
+ BufferedWriter writer = new BufferedWriter(new FileWriter(filename, true));
+ for (Object key : data.keySet()) {
+ writer.write(key.toString() +":"+ data.get(key)+"\n");
+ }
+ writer.close();
+ } catch (Exception e) {
+ System.err.println(e.getStackTrace());
+ }
+ }
+}
diff --git a/workflow/apps/java/clustering/src/Matrix.java b/workflow/apps/java/clustering/src/Matrix.java
new file mode 100755
index 00000000..b1f30ab9
--- /dev/null
+++ b/workflow/apps/java/clustering/src/Matrix.java
@@ -0,0 +1,130 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+import java.io.BufferedReader;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Iterator;
+
+/**
+ *
+ * @author DTian
+ */
+public class Matrix {
+
+ private HashMap matrix; // store data
+ private int rowSize; // row size of matrix
+ private int colSize; // column size of value array
+ private final int lookupTableSize = 9000; //size of look up table
+
+ public int getColSize() {
+ return colSize;
+ }
+
+ public void setColSize(int colSize) {
+ this.colSize = colSize;
+ }
+
+ public HashMap getMatrix() {
+ return matrix;
+ }
+
+ public void setMatrix(HashMap matrix) {
+ this.matrix = matrix;
+ }
+
+ public int getRowSize() {
+ return rowSize;
+ }
+
+ public void setRowSize(int rowSize) {
+ this.rowSize = rowSize;
+ }
+
+ public Matrix() {
+ rowSize = 0;
+ colSize = 0;
+ matrix = new HashMap();
+ }
+
+ /**
+ * constructor with 1 String parameter
+ *
+ * @param filename : the name of the input file
+ *
+ * @result: create a matrix from a input file
+ *
+ */
+ public Matrix(String filename) {
+
+ // Initialize variables
+ this.setRowSize(0);
+ this.setColSize(0);
+ matrix = new HashMap(lookupTableSize);
+
+ try {
+
+ FileReader fr = new FileReader(filename);
+ BufferedReader br = new BufferedReader(fr);
+
+ // strRow is used to read line from file(skip first row)
+ String strRow = br.readLine();
+
+ // The while loop read the data from data file to vvf
+ while ((strRow = br.readLine()) != null) {
+
+ // strArray was used to store the float value from data file in
+ // string format
+ String delimiter = "";
+ if (strRow.indexOf(",") >= 0) { //for CSV file
+ delimiter = "\\,";
+ } else { // for whitespace delimited file
+ delimiter = "\\s";
+ }
+
+ String[] strArray = strRow.trim().split(delimiter);
+ String[] strArrValue = Arrays.copyOfRange(strArray, 1, strArray.length);
+ // strArray[0] is the orf name, others are value
+ matrix.put(strArray[0].trim().toLowerCase(), strArrValue);
+ rowSize++;
+ colSize = strArrValue.length;
+ }
+
+ br.close();
+ fr.close();
+ } catch (IOException e) {
+ // catch possible io errors from readLine()
+ System.out.println("IOException error in 'class Matrix, constructor'");
+ }
+ }
+
+ /**
+ *
+ * @param index, the specifed key
+ * @return: the string array of the value
+ */
+ public String[] getSpecifiedValue(Object key) {
+ return (String[]) matrix.get(key);
+ }
+
+ /**
+ * @return the list of orf names
+ */
+ public ArrayList getOrfNames() {
+ ArrayList result = new ArrayList(this.getRowSize());
+ Iterator it = matrix.keySet().iterator();
+ while (it.hasNext()) {
+ result.add(it.next());
+ }
+ return result;
+ }
+
+ public void addValue(Object key, Object value) {
+ matrix.put(key, value);
+ }
+}
diff --git a/workflow/apps/java/clustering/src/RawGoID.java b/workflow/apps/java/clustering/src/RawGoID.java
new file mode 100755
index 00000000..648c541f
--- /dev/null
+++ b/workflow/apps/java/clustering/src/RawGoID.java
@@ -0,0 +1,375 @@
+/*
+ * the input: 3 files, 1 is cluster file, 2 is Go matrix file (lookup table)
+ * 3 is back ground file(pool)
+ *
+ *
+ */
+
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Random;
+
+/**
+ *
+ * @author DTian
+ */
+public class RawGoID {
+
+ private ArrayList clusterGeneList; // for the input cluster file
+ private Matrix poolTable; //for the filtered gene pool list
+ private Matrix lookupTable; // for the lookup attribute table
+ private int oriClusterSize; //for the original cluster size
+ private ArrayList oriPoolOrfsName;//for the complete list of pool table
+ // private String randomFilename;
+
+ public Matrix getLookupTable() {
+ return lookupTable;
+ }
+
+ public void setLookupTable(Matrix lookupTable) {
+ this.lookupTable = lookupTable;
+ }
+
+ public Matrix getPoolTable() {
+ return poolTable;
+ }
+
+ public void setPoolTable(Matrix poolTable) {
+ this.poolTable = poolTable;
+ }
+
+ public ArrayList getClusterGeneList() {
+ return clusterGeneList;
+ }
+
+ public void setClusterGeneList(ArrayList clusterGeneList) {
+ this.clusterGeneList = clusterGeneList;
+ }
+
+ public RawGoID() {
+ clusterGeneList = new ArrayList();
+ poolTable = new Matrix();
+ lookupTable = new Matrix();
+ // randomFilename ="";
+ }
+
+ public void setOriClusterSize(int oriClusterSize) {
+ this.oriClusterSize = oriClusterSize;
+ }
+
+ public int getOriClusterSize () {
+ return oriClusterSize;
+ }
+
+ public void setOriPoolOrfsName(ArrayList oriPoolOrfsName) {
+ this.oriPoolOrfsName = oriPoolOrfsName;
+ }
+
+ public ArrayList getOriPoolOrfsName() {
+ return oriPoolOrfsName;
+ }
+
+ /**
+ *
+ * @param clusterFilename : cluster Filename
+ * @param GoMatrixFilename : GoMatrix Filename
+ * @param backGroundFilename : backGround Filename
+ */
+ public RawGoID(String clusterFilename, String GoMatrixFilename, String backGroundFilename) {
+ try {
+ clusterGeneList = new ArrayList(200);
+ ArrayList refClusterGeneList = new ArrayList (200);
+
+ // Get the smallGeneList (a cluster )
+ BufferedReader br = new BufferedReader(new FileReader(clusterFilename));
+
+ // strRow is used to read line from file
+ String strRow = "";
+ while ((strRow = br.readLine()) != null) {
+ clusterGeneList.add(strRow.trim().toLowerCase());
+ }
+ // System.out.println(clusterGeneList.size());
+ setOriClusterSize(clusterGeneList.size());
+ // System.out.println("original cluster size =" + clusterGeneList.size());
+
+ // Get the mtrix (lookup table)
+ lookupTable = new Matrix(GoMatrixFilename);
+
+ // Get the bigGeneList (pool or back ground file)
+ br = new BufferedReader(new FileReader(backGroundFilename));
+
+ ArrayList poolOrfsName = new ArrayList(5000);
+ while ((strRow = br.readLine()) != null) {
+ poolOrfsName.add(strRow.trim().toLowerCase());
+ }
+ this.setOriPoolOrfsName(poolOrfsName);
+ poolTable = new Matrix();
+ for (int i = 0; i < poolOrfsName.size(); i++) {
+ Object tempKey = poolOrfsName.get(i);
+ if (lookupTable.getMatrix().containsKey(tempKey)) {
+ poolTable.addValue(tempKey, lookupTable.getMatrix().get(tempKey));
+ }
+ }
+ poolTable.setRowSize(poolTable.getMatrix().size());
+ poolTable.setColSize(lookupTable.getColSize());
+ br.close();
+
+ // This loop is to take out any ORF from the cluster gene list if not exist in pool table
+ // not necessary if all cluster ORFs are from pool table
+ for (int i=0;i= 0) {
+ result = result + Information.relativeEntropy(
+ ((String[]) attrByOrfSubMatrix.get(i)),
+ (String[]) (attrByOrfFullMatrix.get(i)));
+ }
+ // System.out.println(Information.relativeEntropy(
+ // ((String[]) attrByOrfSubMatrix.get(i)), (String[]) (attrByOrfFullMatrix.get(i))));
+ }
+ // System.out.println("result =" + result);
+ return result;
+ }
+
+ private ArrayList transpose(ArrayList data) {
+ ArrayList result = new ArrayList(data.size());
+ // Do transpose here
+ int rowSize = data.size();
+ int colSize = ((String[]) data.get(0)).length;
+
+ String[][] matrix = new String[colSize][rowSize];
+ for (int i = 0; i < rowSize; i++) {
+ String[] temp = (String[]) data.get(i);
+ for (int j = 0; j < colSize; j++) {
+ // System.out.println("j is : " + j);
+ matrix[j][i] = temp[j];
+ }
+ }
+
+ // Convert to ArrayList
+ for (int i = 0; i < matrix.length; i++) {
+ result.add(matrix[i]);
+ }
+ return result;
+ }
+
+ public double getRandomRawGoID() {
+ double result = 0.0;
+ this.setClusterGeneList(this.getRandomCluster(this.getOriClusterSize()));
+ result = this.getRawGoID();
+ if (Double.isNaN(result)) {
+ return getRandomRawGoID();
+ } else {
+ return result;
+ }
+ }
+
+ private void toFile(HashMap data, String filename) {
+
+ // Output to a file
+ try {
+ BufferedWriter writer = new BufferedWriter(new FileWriter(filename));
+ for (Object key : data.keySet()) {
+ writer.write(key.toString() + "\n");
+ }
+ writer.close();
+ } catch (Exception e) {
+ System.err.println(e.getStackTrace());
+ }
+
+ }
+ private static void toFileString(String data, String filename) {
+
+ // Output to a file
+ try {
+ BufferedWriter writer = new BufferedWriter(new FileWriter(filename,true));
+ writer.write(data + "\n");
+ writer.close();
+ } catch (Exception e) {
+ System.err.println(e.getStackTrace());
+ }
+ }
+
+ private ArrayList getRandomCluster(int clusterSize) {
+ ArrayList result = new ArrayList(clusterSize);
+
+ // Jingyu: The following segment of code, which is deactivated, is designed to get the random cluster list from a lookuptable-filtered pooltable
+ // Jingyu: To do so may cause a bias in average of random raw GOid score by using a smaller pool list
+ // get a random cluster with same size of the cluster file and then calculate the Goid
+ // 1, get the random orf names to a ArrayList
+
+ // HashMap hm = new HashMap(this.getClusterGeneList().size());
+ // while (hm.keySet().size() < clusterSize) {
+ // hm.put(this.getPoolTable().getOrfNames().get(randInt(this.getPoolTable().getOrfNames().size())), "0");
+ // }
+ // result.addAll(hm.keySet());
+
+ // Get a random cluster with same size of the cluster file from the original ORF pool
+ // Extra step added by Jingyu to remove the ORFs not existing in pooltable;
+ ArrayList localOriPoolTable = new ArrayList();
+ localOriPoolTable = this.getOriPoolOrfsName();
+
+ // Checkpoint
+ // System.out.println(localOriPoolTable.size());
+ for (int i=0;i1) {
+ return Math.sqrt(result/(data.length-1));
+ } else {
+ return Math.sqrt(result/1);
+ }
+ }
+
+ /**
+ *
+ * @param data the double array
+ * @return the mean of the double array.
+ */
+ public static double getMean(double[] data) {
+ double result = 0.0;
+ for (double d : data) {
+ result += d;
+ }
+ return (result/data.length);
+ }
+
+ /**
+ *
+ * @param size the size of ori cluster File
+ * @return the mean of the double array.
+ */
+ public static double getMeanFromFunc(int size) {
+ return ( -4.8616 + 71.1806/Math.pow(size, 0.33511));
+ }
+
+ /**
+ *
+ * @param size the size of ori cluster File
+ * @return the mean of the double array.
+ */
+ public static double getStdDevFromFunc(int size) {
+ return ( -0.04943 + 56.634/Math.pow(size, 0.89384));
+ }
+
+ public static double getZscore(double popMean, double popStd, double rawGoid) {
+ return (rawGoid - popMean)/popStd;
+ }
+}
diff --git a/workflow/apps/java/clustering/weka-clustering.jar b/workflow/apps/java/clustering/weka-clustering.jar
new file mode 100644
index 00000000..bd7bd245
Binary files /dev/null and b/workflow/apps/java/clustering/weka-clustering.jar differ
diff --git a/workflow/apps/matlab/easy/DgenResults.m b/workflow/apps/matlab/easy/DgenResults.m
index 99096a82..310a9b87 100755
--- a/workflow/apps/matlab/easy/DgenResults.m
+++ b/workflow/apps/matlab/easy/DgenResults.m
@@ -50,9 +50,6 @@ end
% localprojectScansDir=projectScansDir;
% end
-% TODO this seems weird
-drivePos=min(strfind(projectScansDir,'/'));
-drive=projectScansDir(1:(drivePos-1));
% DBupload=fullfile(drive,'EZdbFiles','DBupLOADfiles');
resultsFilename=fullfile(printResultsDir, 'results_elr.txt');
@@ -106,7 +103,7 @@ for s=1:size(scan,2)
clear outCmat
outCmat=scan(s).plate(p).CFout;
- %Print Time Point HEADER for each plate for newly added intensity data
+ % Print Time Point HEADER for each plate for newly added intensity data
if isequal(opt,'Res')||isequal(opt,'Both')
fprintf(fid, '\n');
ln=ln+1;
@@ -125,7 +122,7 @@ for s=1:size(scan,2)
fprintf(fid, '\triseTm\tK\tr\tl\tR-squared\tK-lower\tK-upper\tr-lower\tr-upper\tl-lower\tl-upper\tArea\tLastInten\tSplineMaxRateTm\tLastFitTm\t1stFitTm\tMedianBase\tFitBase\tMinTm\tThreshTm');
if size(outCmat,2)==27
- fprintf(fid, '\ttc11Cut\ttc12Cut\ttc21Cut\ttc22Cut'); %'\tEarly1\tEarly2\tLate1\tLate2'); 17_0629 MinBaseIntens update for MedianBase label
+ fprintf(fid, '\ttc11Cut\ttc12Cut\ttc21Cut\ttc22Cut'); % '\tEarly1\tEarly2\tLate1\tLate2'); 17_0629 MinBaseIntens update for MedianBase label
end
fprintf(fid, '\tTotFitPts\tPostThreshFitPts\t1stBackgrd\tLstBackgrd\t1stMeanTotBackgrd\tLstMeanTotBackgrd');
end
@@ -152,9 +149,9 @@ for s=1:size(scan,2)
end
end
- numBlkCol=(maxNumIntens - dataLength); %size(outTseries,1));
+ numBlkCol=(maxNumIntens - dataLength); % size(outTseries,1));
if isequal(opt,'Res')||isequal(opt,'Both')
- for nn=1:numBlkCol %extend to col beyond longest rawDataSet
+ for nn=1:numBlkCol % extend to col beyond longest rawDataSet
fprintf(fid, '\t');
end
fprintf(fid,'\tOrfRep');
@@ -179,8 +176,8 @@ for s=1:size(scan,2)
if rSq<.97 && rSq>0, selcode=strcat(selcode,' rSqLo');end
if lval>(0.85*(max(outTseries))), selcode=strcat(selcode,' late');end
if isnan(outCmat(n,7))||isnan(outCmat(n,8))||isnan(outCmat(n,9))...
- ||isnan(outCmat(n,10))||isnan(outCmat(n,11))...
- ||isnan(outCmat(n,12)), selcode=strcat(selcode,' NaN');
+ || isnan(outCmat(n,10))||isnan(outCmat(n,11))...
+ || isnan(outCmat(n,12)), selcode=strcat(selcode,' NaN');
end
% RiseTime Calculation
@@ -318,7 +315,7 @@ for s=1:size(scan,2)
fprintf(fid,'%d\t',ln);
end
- %DB Raw Intensities and Timepoints
+ % DB Raw Intensities and Timepoints
if isequal(opt,'DB')||isequal(opt,'Both')
fprintf(fid2, '\t%s\t%s',intensBlob,tmBlob );
% Masterplate sheet
@@ -339,11 +336,11 @@ for s=1:size(scan,2)
end
fprintf(fid2, '\n');
end
- end %if ~isempty(outCmat)
- end %c
- end %r
- end %p
-end %s
+ end
+ end
+ end
+ end
+end
if isequal(opt,'Res')||isequal(opt,'Both')
fclose(fid);
@@ -604,7 +601,6 @@ try
fprintf(fid,'%d\t',ln);
end
-
% Raw Intensities and Timepoints
if isequal(opt,'DB')||isequal(opt,'Both')
fprintf(fid2, '\t%s\t%s',intensBlob,tmBlob );
diff --git a/workflow/apps/r/PairwiseLK.R b/workflow/apps/r/PairwiseLK.R
index 93ecf5ef..3026a3c3 100644
--- a/workflow/apps/r/PairwiseLK.R
+++ b/workflow/apps/r/PairwiseLK.R
@@ -39,8 +39,8 @@ Name2 <- Labels[expNumber2, 2]
go_terms_file <- "Average_GOTerms_All.csv"
input_file1 <- file.path(output_dir, exp_name, go_terms_file)
input_file2 <- file.path(output_dir, exp_name2, go_terms_file)
-pairDirL <- file.path(output_dir, paste("PairwiseCompareL_", exp_name, "-", exp_name2, sep = ""))
-pairDirK <- file.path(output_dir, paste("PairwiseCompareK_", exp_name, "-", exp_name2, sep = ""))
+pairDirL <- file.path(output_dir, paste0("PairwiseCompareL_", exp_name, "-", exp_name2))
+pairDirK <- file.path(output_dir, paste0("PairwiseCompareK_", exp_name, "-", exp_name2))
# Pairwise L
# outputPlotly <- "../GTAresults/PairwiseCompareL/" #"/GTAresults/PairwiseCompareL/"
@@ -146,7 +146,7 @@ gg <- ggplot(data = X, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(
aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
color = "grey20",
@@ -156,12 +156,12 @@ gg <- ggplot(data = X, aes(
fill = NA
) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, " vs. ", Name2) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOntology.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOntology.pdf")),
width = 12,
height = 8
)
@@ -169,7 +169,7 @@ pdf(
gg
dev.off()
pgg <- ggplotly(gg)
-fname <- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOntology.html", sep = ""))
+fname <- file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOntology.html"))
htmlwidgets::saveWidget(pgg, fname)
# ID aggravators and alleviators, regardless of whether they meet 2SD threshold
@@ -209,7 +209,7 @@ gg <- ggplot(data = X, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(
aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
color = "grey20",
@@ -219,12 +219,12 @@ gg <- ggplot(data = X, aes(
fill = NA
) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, " vs. ", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap.pdf")),
width = 12,
height = 8
)
@@ -232,7 +232,7 @@ pdf(
gg
dev.off()
pgg <- ggplotly(gg)
-fname <- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap.html", sep = ""))
+fname <- file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap.html"))
htmlwidgets::saveWidget(pgg, fname)
x_rem2_gene <- X[X$NumGenes_Avg_X1 >= 2 & X$NumGenes_Avg_X2 >= 2, ]
@@ -249,15 +249,15 @@ gg <- ggplot(data = x_rem2_gene, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_above2genes.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_above2genes.pdf")),
width = 12,
height = 8
)
@@ -266,7 +266,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap_above2genes.html", sep = ""))
+fname <- file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap_above2genes.html"))
htmlwidgets::saveWidget(pgg, fname)
#4
@@ -282,15 +282,15 @@ gg <- ggplot(data = X_overlap_nothresold, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.pdf")),
width = 12,
height = 8
)
@@ -299,7 +299,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.html", sep = ""))
+fname <- file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.html"))
htmlwidgets::saveWidget(pgg, fname)
# Only output GTA terms where average score is still above 2 after subtracting the SD
@@ -345,15 +345,15 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, " vs. ", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.pdf")),
width = 12,
height = 8
)
@@ -362,7 +362,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.html", sep = ""))
+fname <- file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.html"))
htmlwidgets::saveWidget(pgg, fname)
#6
@@ -377,16 +377,16 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_text(aes(label = Term_Avg), nudge_y = 0.25, size = 2) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3, size = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.pdf")),
width = 20,
height = 20
)
@@ -395,7 +395,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.html", sep = ""))
+fname <- file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.html"))
htmlwidgets::saveWidget(pgg, fname)
X_abovethreshold$X1_Rank <- NA
@@ -415,16 +415,16 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_text(aes(label = X1_Rank), nudge_y = 0.25, size = 4) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3, size = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.pdf")),
width = 15,
height = 15
)
@@ -435,7 +435,7 @@ pgg <- ggplotly(gg)
#pgg
fname <-
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.html", sep = ""))
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.html"))
htmlwidgets::saveWidget(pgg, fname)
#8
@@ -450,16 +450,16 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_L_SD_X1,
SD_2 = Z_lm_L_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_text(aes(label = X2_Rank), nudge_y = 0.25, size = 4) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3, size = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.pdf", sep = "")),
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.pdf")),
width = 15,
height = 15
)
@@ -469,18 +469,18 @@ dev.off()
pgg <- ggplotly(gg)
#pgg
fname <-
- file.path(pairDirL, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.html", sep = ""))
+ file.path(pairDirL, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.html"))
htmlwidgets::saveWidget(pgg, fname)
write.csv(
x = X,
- file.path(pairDirL, paste("All_GTA_Avg_Scores_", Name1, "_vs_", Name2, ".csv", sep = "")),
+ file.path(pairDirL, paste0("All_GTA_Avg_Scores_", Name1, "_vs_", Name2, ".csv")),
row.names = FALSE
)
write.csv(
x = X_abovethreshold,
- file = file.path(pairDirL, paste("AboveThreshold_GTA_Avg_Scores_", Name1, "_vs_", Name2, ".csv", sep = "")),
+ file = file.path(pairDirL, paste0("AboveThreshold_GTA_Avg_Scores_", Name1, "_vs_", Name2, ".csv")),
row.names = FALSE
)
@@ -599,15 +599,15 @@ gg <- ggplot(data = X, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOntology.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOntology.pdf")),
width = 12,
height = 8
)
@@ -616,7 +616,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOntology.html", sep = ""))
+fname <- file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOntology.html"))
htmlwidgets::saveWidget(pgg, fname)
#2
@@ -648,7 +648,7 @@ try(X[X$Term_Avg %in% X2_Specific_Aggravators_X1_Alleviatiors$Term_Avg, ]$Overla
try(X[X$Term_Avg %in% X2_Specific_Alleviators_X1_Aggravators$Term_Avg, ]$Overlap_Avg <-
paste(Name2, "Deletion_Enhancers", Name1, "Deletion_Suppressors", sep = "_"))
-plotly_path <- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_byOverlap.html", sep = ""))
+plotly_path <- file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_byOverlap.html"))
gg <- ggplot(data = X, aes(
x = Z_lm_K_Avg_X1,
y = Z_lm_K_Avg_X2,
@@ -660,15 +660,15 @@ gg <- ggplot(data = X, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap.pdf")),
width = 12,
height = 8
)
@@ -678,12 +678,12 @@ dev.off()
pgg <- ggplotly(gg)
#2
-fname <- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap.html", sep = ""))
+fname <- file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap.html"))
htmlwidgets::saveWidget(pgg, fname)
#3
x_rem2_gene <- X[X$NumGenes_Avg_X1 >= 2 & X$NumGenes_Avg_X2 >= 2, ]
-plotly_path <- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_byOverlap_above2genes.html", sep = ""))
+plotly_path <- file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_byOverlap_above2genes.html"))
gg <- ggplot(data = x_rem2_gene, aes(
x = Z_lm_K_Avg_X1,
y = Z_lm_K_Avg_X2,
@@ -695,15 +695,15 @@ gg <- ggplot(data = x_rem2_gene, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_above2genes.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_above2genes.pdf")),
width = 12,
height = 8
)
@@ -712,7 +712,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap_above2genes.html", sep = ""))
+fname <- file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_byOverlap_above2genes.html"))
htmlwidgets::saveWidget(pgg, fname)
#4
@@ -728,15 +728,15 @@ gg <- ggplot(data = X_overlap_nothresold, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.pdf")),
width = 12,
height = 8
)
@@ -746,7 +746,7 @@ dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.html", sep = ""))
+fname <- file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_Above2SD_ByOverlap.html"))
htmlwidgets::saveWidget(pgg, fname)
#5
@@ -797,15 +797,15 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.pdf")),
width = 12,
height = 8
)
@@ -814,7 +814,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.html", sep = ""))
+fname <- file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold.html"))
htmlwidgets::saveWidget(pgg, fname)
#6
@@ -829,16 +829,16 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_text(aes(label = Term_Avg), nudge_y = 0.25, size = 2) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3, size = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, " vs. ", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.pdf")),
width = 20,
height = 20
)
@@ -846,7 +846,7 @@ gg
dev.off()
pgg <- ggplotly(gg)
#pgg
-fname <- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.html", sep = ""))
+fname <- file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_names.html"))
htmlwidgets::saveWidget(pgg, fname)
#7
@@ -866,16 +866,16 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_text(aes(label = X1_Rank), nudge_y = 0.25, size = 4) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3, size = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.pdf")),
width = 15,
height = 15
)
@@ -885,7 +885,7 @@ dev.off()
pgg <- ggplotly(gg)
#pgg
fname <-
- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.html", sep = ""))
+ file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX1.html"))
htmlwidgets::saveWidget(pgg, fname)
#8
@@ -900,16 +900,16 @@ gg <- ggplot(data = X_abovethreshold, aes(
SD_1 = Z_lm_K_SD_X1,
SD_2 = Z_lm_K_SD_X2
)) +
- xlab(paste("GO Term Avg lm Z for ", Name1, sep = "")) +
+ xlab(paste("GO Term Avg lm Z for", Name1)) +
geom_text(aes(label = X2_Rank), nudge_y = 0.25, size = 4) +
geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
geom_point(shape = 3, size = 3) +
- ylab(paste("GO Term Avg lm Z for ", Name2, sep = "")) +
- ggtitle(paste("Comparing Average GO Term Z lm for ", Name1, " vs. ", Name2, sep = "")) +
+ ylab(paste("GO Term Avg lm Z for", Name2)) +
+ ggtitle(paste("Comparing Average GO Term Z lm for", Name1, "vs.", Name2)) +
theme_Publication_legend_right()
pdf(
- file.path(pairDirK, paste("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.pdf", sep = "")),
+ file.path(pairDirK, paste0("Scatter_lm_GTF_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.pdf")),
width = 15,
height = 15
)
@@ -919,17 +919,17 @@ dev.off()
pgg <- ggplotly(gg)
#pgg
fname <-
- file.path(pairDirK, paste("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.html", sep = ""))
+ file.path(pairDirK, paste0("Scatter_lm_GTA_Averages_", Name1, "_vs_", Name2, "_All_ByOverlap_AboveThreshold_numberedX2.html"))
htmlwidgets::saveWidget(pgg, fname)
write.csv(
x = X,
- file = file.path(pairDirK, paste("All_GTF_Avg_Scores_", Name1, "_vs_", Name2, ".csv", sep = "")),
+ file = file.path(pairDirK, paste0("All_GTF_Avg_Scores_", Name1, "_vs_", Name2, ".csv")),
row.names = FALSE
)
write.csv(
x = X_abovethreshold,
- file = file.path(pairDirK, paste("AboveThreshold_GTF_Avg_Scores_", Name1, "_vs_", Name2, ".csv", sep = "")),
+ file = file.path(pairDirK, paste0("AboveThreshold_GTF_Avg_Scores_", Name1, "_vs_", Name2, ".csv")),
row.names = FALSE
)
diff --git a/workflow/apps/r/TSHeatmaps5dev2.R b/workflow/apps/r/TSHeatmaps5dev2.R
index 2bf6349a..b76ad9aa 100644
--- a/workflow/apps/r/TSHeatmaps5dev2.R
+++ b/workflow/apps/r/TSHeatmaps5dev2.R
@@ -44,7 +44,7 @@ Terms <- read.delim(file = sgd_terms_tfile,
col.names = c("GO_ID", "GO_Term", "GO_Aspect", "GO_Term_Definition")
)
XX3 <- read.csv(file = all_sgd_terms_csv, stringsAsFactors = FALSE, header = TRUE)
-XX3[, 1] <- paste("GO:", formatC(XX3[, 1], width = 7, flag = "0"), sep = "")
+XX3[, 1] <- paste0("GO:", formatC(XX3[, 1], width = 7, flag = "0"))
XX3[, 2] <- gsub(pattern = " ", replacement = "_", x = XX3[, 2])
XX3[, 2] <- gsub(pattern = "/", replacement = "_", x = XX3[, 2])
@@ -84,7 +84,7 @@ if (length(study_nums) > 0) {
X1$Rank_L <- rank(X1$Z_lm_L)
X1$Rank_K <- rank(X1$Z_lm_K)
X1 <- X1[order(X1$OrfRep, decreasing = FALSE), ]
- colnames(X1) <- paste(colnames(X1), "_X1", sep = "")
+ colnames(X1) <- paste0(colnames(X1), "_X1")
}
if (length(study_nums) > 1) {
@@ -111,7 +111,7 @@ if (length(study_nums) > 1) {
X2$Rank_K <- rank(X2$Z_lm_K)
X2 <- X2[order(X2$OrfRep, decreasing = FALSE), ]
- colnames(X2) <- paste(colnames(X2), "_X2", sep = "")
+ colnames(X2) <- paste0(colnames(X2), "_X2")
X <- cbind(X1, X2)
}
@@ -138,7 +138,7 @@ if (length(study_nums) > 2) {
X3$Rank_L <- rank(X3$Z_lm_L)
X3$Rank_K <- rank(X3$Z_lm_K)
X3 <- X3[order(X3$OrfRep, decreasing = FALSE), ]
- colnames(X3) <- paste(colnames(X3), "_X3", sep = "")
+ colnames(X3) <- paste0(colnames(X3), "_X3")
X <- cbind(X, X3)
}
@@ -165,7 +165,7 @@ if (length(study_nums) > 3) {
X4$Rank_L <- rank(X4$Z_lm_L)
X4$Rank_K <- rank(X4$Z_lm_K)
X4 <- X4[order(X4$OrfRep, decreasing = FALSE), ]
- colnames(X4) <- paste(colnames(X4), "_X4", sep = "")
+ colnames(X4) <- paste0(colnames(X4), "_X4")
X <- cbind(X, X4)
}
@@ -192,7 +192,7 @@ if (length(study_nums) > 4) {
X5$Rank_L <- rank(X5$Z_lm_L)
X5$Rank_K <- rank(X5$Z_lm_K)
X5 <- X5[order(X5$OrfRep, decreasing = FALSE), ]
- colnames(X5) <- paste(colnames(X5), "_X5", sep = "")
+ colnames(X5) <- paste0(colnames(X5), "_X5")
X <- cbind(X, X5)
}
@@ -441,7 +441,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size > 2000) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 45,
onefile = TRUE
@@ -477,7 +477,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 1000 && Parent_Size <= 2000) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 35,
onefile = TRUE
@@ -513,7 +513,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 500 && Parent_Size <= 1000) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 30,
onefile = TRUE
@@ -549,7 +549,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 200 && Parent_Size <= 500) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 25,
onefile = TRUE
@@ -585,7 +585,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 100 && Parent_Size <= 200) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 20,
onefile = TRUE
@@ -621,7 +621,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 60 && Parent_Size <= 100) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 15,
onefile = TRUE
@@ -657,7 +657,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 30 && Parent_Size <= 60) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 10,
onefile = TRUE
@@ -709,7 +709,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size >= 3 && Parent_Size <= 30) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 7,
onefile = TRUE
@@ -760,7 +760,7 @@ for (s in 1:dim(XX3)[1]) {
if (Parent_Size == 2) {
pdf(
- file = file.path(output_dir, paste(XX3[s, 2], ".pdf", sep = "")),
+ file = file.path(output_dir, paste0(XX3[s, 2], ".pdf")),
width = 12,
height = 7,
onefile = TRUE
diff --git a/workflow/apps/r/createHeatMaps.R b/workflow/apps/r/createHeatMaps.R
index dcb3d4c2..435afaa9 100644
--- a/workflow/apps/r/createHeatMaps.R
+++ b/workflow/apps/r/createHeatMaps.R
@@ -171,7 +171,7 @@ for (i in 1:num_unique_clusts) {
if (cluster_length != 1) {
X0 <- as.matrix(cluster_data[, 4:(length(hmapfile[1, ]) - 2)])
if (cluster_length >= 2001) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 20, width = 15)
heatmap.2(
x = X0,
@@ -191,7 +191,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 201 && cluster_length <= 2000) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 15, width = 12)
heatmap.2(
x = X0,
@@ -210,7 +210,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 150 && cluster_length <= 200) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 12, width = 12)
heatmap.2(
x = X0,
@@ -228,7 +228,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 101 && cluster_length <= 149) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, mypath, height = 12, width = 12)
heatmap.2(
x = X0,
@@ -246,7 +246,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 60 && cluster_length <= 100) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 12, width = 12)
heatmap.2(
x = X0,
@@ -264,7 +264,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length <= 59 && cluster_length >= 30) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 9, width = 12)
heatmap.2(
x = X0,
@@ -282,7 +282,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length <= 29) {
- mypath <- file.path(outDir, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(outDir, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 7, width = 12)
heatmap.2(
x = X0,
diff --git a/workflow/apps/r/createHeatMapsHomology.R b/workflow/apps/r/createHeatMapsHomology.R
index 3d22c90a..e33f9c37 100644
--- a/workflow/apps/r/createHeatMapsHomology.R
+++ b/workflow/apps/r/createHeatMapsHomology.R
@@ -45,11 +45,11 @@ hmapfile_w_homolog <- full_join(hmapfile_map, mapping, by = c("ORFMatch" = "ense
hmapfile_w_homolog <- hmapfile_w_homolog[is.na(hmapfile_w_homolog$likelihood) == FASLE, ]
# Write csv with all info from mapping file
-write.csv(hmapfile_w_homolog, file.path(output_path, paste(final_table, "_WithHomologAll.csv", sep = "")), row.names = FALSE)
+write.csv(hmapfile_w_homolog, file.path(output_path, paste0(final_table, "_WithHomologAll.csv")), row.names = FALSE)
# Remove the non matches and output another mapping file - this is also one used to make heatmaps
hmapfile_w_homolog <- hmapfile_w_homolog[is.na(hmapfile_w_homolog$external_gene_name_Human) == FALSE, ]
-write.csv(hmapfile_w_homolog, file.path(output_path, paste(final_table, "_WithHomologMatchesOnly.csv", sep = ""), row.names = FALSE))
+write.csv(hmapfile_w_homolog, file.path(output_path, paste0(final_table, "_WithHomologMatchesOnly.csv"), row.names = FALSE))
# Add human gene name to the Gene column
hmapfile_w_homolog$Gene <- paste(hmapfile_w_homolog$Gene, hmapfile_w_homolog$external_gene_name_Human, sep = "/")
@@ -230,7 +230,7 @@ for (i in 1:num_unique_clusts) {
if (cluster_length != 1) {
X0 <- as.matrix(cluster_data[, 4:(length(hmapfile[1, ]) - 6)])
if (cluster_length >= 2001) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 20, width = 15)
heatmap.2(
x = X0,
@@ -250,7 +250,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 201 && cluster_length <= 2000) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 15, width = 12)
heatmap.2(
x = X0,
@@ -269,7 +269,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 150 && cluster_length <= 200) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 12, width = 12)
heatmap.2(
x = X0,
@@ -287,7 +287,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 101 && cluster_length <= 149) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 12, width = 12)
heatmap.2(
x = X0,
@@ -305,7 +305,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length >= 60 && cluster_length <= 100) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 12, width = 12)
heatmap.2(
x = X0,
@@ -323,7 +323,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length <= 59 && cluster_length >= 30) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 9, width = 12)
heatmap.2(
x = X0,
@@ -341,7 +341,7 @@ for (i in 1:num_unique_clusts) {
dev.off()
}
if (cluster_length <= 29) {
- mypath <- file.path(output_path, paste("cluster_", gsub(" ", "", cluster), ".pdf", sep = ""))
+ mypath <- file.path(output_path, paste0("cluster_", gsub(" ", "", cluster), ".pdf"))
pdf(file = mypath, height = 7, width = 12)
heatmap.2(
x = X0,
diff --git a/workflow/apps/r/interactions.R b/workflow/apps/r/interactions.R
index 4b298358..665362d9 100644
--- a/workflow/apps/r/interactions.R
+++ b/workflow/apps/r/interactions.R
@@ -1,22 +1,23 @@
#!/usr/bin/env Rscript
-# NOTE: The script now has 6 optional arguments:
-# 1. Path to input easy results file
-# 2. /output/ directory
-# 3. Path to StudyInfo.csv
-# 4. Path to sgd_gene_list
-# 5. The experiment number (Exp# directory)
-# 6. Standard deviation value
-library("ggplot2")
-library("plyr")
-library("extrafont")
-library("gridExtra")
-library("gplots")
-library("RColorBrewer")
-library("stringr")
-library("gdata")
-library("plotly")
-library("htmlwidgets")
+suppressMessages(library("ggplot2"))
+suppressMessages(library("plyr"))
+suppressMessages(library("extrafont"))
+suppressMessages(library("gridExtra"))
+suppressMessages(library("gplots"))
+suppressMessages(library("RColorBrewer"))
+suppressMessages(library("stringr"))
+suppressMessages(library("gdata"))
+suppressMessages(library("plotly"))
+suppressMessages(library("htmlwidgets"))
+
+# Print extra debugging during development
+options(error = quote({
+ dump.frames(to.file = TRUE, dumpto = "last.dump")
+ load("last.dump.rda")
+ print(last.dump)
+ q()
+}))
# Parse arguments
args <- commandArgs(TRUE)
@@ -66,10 +67,10 @@ df <- df[!(df[[1]] %in% c("", "Scan")), ]
df$col <- as.numeric(df$Col)
df$row <- as.numeric(df$Row)
df$l <- as.numeric(df$l)
-df$k <- as.numeric(df$K)
+df$K <- as.numeric(df$K)
df$r <- as.numeric(df$r)
-df$scan <- as.numeric(df$Scan)
-df$auc <- as.numeric(df$AUC)
+df$Scan <- as.numeric(df$Scan)
+df$AUC <- as.numeric(df$AUC)
df$last_bg <- as.numeric(df$LstBackgrd)
df$first_bg <- as.numeric(df$X1stBackgrd)
@@ -129,7 +130,7 @@ df <- df[df$Gene != "blank", ]
# Use sgd_gene_list to update orfs and replace empty geneName cells with ORF name (adapted from Sean's Merge script).
# This is to 'fix' the naming for everything that follows (REMc, Heatmaps ... et.al) rather than do it piece meal later
# Sean's Match Script( which was adapted here) was fixed 2022_0608 so as not to overwrite the RF1&RF2 geneNames
-# in the z_lm_l, k, r&auc output values. Values correlated well but were off by a multiplier factor.
+# in the z_lm_l, K, r&AUC output values. Values correlated well but were off by a multiplier factor.
genes <- data.frame(read.delim(
file = sgd_gene_list, quote = "", header = FALSE, colClasses = c(rep("NULL", 3), rep("character", 2), rep("NULL", 11))))
for (i in 1:length(df[, 14])) {
@@ -186,17 +187,6 @@ theme_publication <- function(base_size = 14, base_family = "sans") {
)
}
-scale_fill_publication <- function(...) {
- library(scales)
- discrete_scale("fill", "Publication", manual_pal(
- values = c("#386cb0", "#fdb462", "#7fc97f", "#ef3b2c", "#662506", "#a6cee3", "#fb9a99", "#984ea3", "#ffff33")), ...)
-}
-
-scale_colour_publication <- function(...) {
- discrete_scale("colour", "Publication", manual_pal(
- values = c("#386cb0", "#fdb462", "#7fc97f", "#ef3b2c", "#662506", "#a6cee3", "#fb9a99", "#984ea3", "#ffff33")), ...)
-}
-
theme_publication_legend_right <- function(base_size = 14, base_family = "sans") {
(theme_foundation(base_size = base_size, base_family = base_family) +
theme(plot.title = element_text(face = "bold", size = rel(1.2), hjust = 0.5),
@@ -226,17 +216,25 @@ theme_publication_legend_right <- function(base_size = 14, base_family = "sans")
}
scale_fill_publication <- function(...) {
- discrete_scale("fill", "Publication", manual_pal(
- values = c("#386cb0", "#fdb462", "#7fc97f", "#ef3b2c", "#662506", "#a6cee3", "#fb9a99", "#984ea3", "#ffff33")), ...)
+ discrete_scale(
+ "fill",
+ "Publication",
+ manual_pal(values = c("#386cb0", "#fdb462", "#7fc97f", "#ef3b2c",
+ "#662506", "#a6cee3", "#fb9a99", "#984ea3", "#ffff33")),
+ ...
+ )
}
scale_colour_publication <- function(...) {
- discrete_scale("colour", "Publication", manual_pal(
- values = c("#386cb0", "#fdb462", "#7fc97f", "#ef3b2c", "#662506", "#a6cee3", "#fb9a99", "#984ea3", "#ffff33")), ...)
+ discrete_scale(
+ "colour",
+ "Publication",
+ manual_pal(values = c("#386cb0", "#fdb462", "#7fc97f", "#ef3b2c",
+ "#662506", "#a6cee3", "#fb9a99", "#984ea3", "#ffff33")),
+ ...
+ )
}
-# Print timestamp for initial time the code starts
-timestamp()
# Begin QC Section
# Part 2 - Quality control
@@ -253,22 +251,22 @@ plate_analysis_l <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(fun = mean, geom = "point", size = 0.6) +
- ggtitle("Plate analysis by Drug Conc for L before quality control") + theme_publication()
+ ggtitle("Plate analysis by Drug Conc for L before quality control") +
+ theme_publication()
plate_analysis_k <-
- ggplot(df, aes(Scan, k, color = as.factor(conc_num))) +
+ ggplot(df, aes(Scan, K, color = as.factor(conc_num))) +
geom_point(shape = 3, size = 0.2) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(fun = mean, geom = "point", size = 0.6) +
- ggtitle("Plate analysis by Drug Conc for K before quality control") + theme_publication()
+ ggtitle("Plate analysis by Drug Conc for K before quality control") +
+ theme_publication()
plate_analysis_r <-
ggplot(df, aes(Scan, r, color = as.factor(conc_num))) +
@@ -277,22 +275,22 @@ plate_analysis_r <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(fun = mean, geom = "point", size = 0.6) +
- ggtitle("Plate analysis by Drug Conc for r before quality control") + theme_publication()
+ ggtitle("Plate analysis by Drug Conc for r before quality control") +
+ theme_publication()
plate_analysis_auc <-
- ggplot(df, aes(Scan, auc, color = as.factor(conc_num))) +
+ ggplot(df, aes(Scan, AUC, color = as.factor(conc_num))) +
geom_point(shape = 3, size = 0.2) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(fun = mean, geom = "point", size = 0.6) +
- ggtitle("Plate analysis by Drug Conc for auc before quality control") + theme_publication()
+ ggtitle("Plate analysis by Drug Conc for AUC before quality control") +
+ theme_publication()
plate_analysis_l_box <-
ggplot(df, aes(as.factor(Scan), l, color = as.factor(conc_num))) +
@@ -301,7 +299,7 @@ plate_analysis_l_box <-
theme_publication()
plate_analysis_k_box <-
- ggplot(df, aes(as.factor(Scan), k, color = as.factor(conc_num))) +
+ ggplot(df, aes(as.factor(Scan), K, color = as.factor(conc_num))) +
geom_boxplot() +
ggtitle("Plate analysis by Drug Conc for K before quality control") +
theme_publication()
@@ -313,9 +311,9 @@ plate_analysis_r_box <-
theme_publication()
plate_analysis_auc_box <-
- ggplot(df, aes(as.factor(Scan), auc, color = as.factor(conc_num))) +
+ ggplot(df, aes(as.factor(Scan), AUC, color = as.factor(conc_num))) +
geom_boxplot() +
- ggtitle("Plate analysis by Drug Conc for auc before quality control") +
+ ggtitle("Plate analysis by Drug Conc for AUC before quality control") +
theme_publication()
# Quality control - values with a high delta background likely have heavy contamination
@@ -326,7 +324,7 @@ df$delta_bg <- df$last_bg - df$first_bg
# Raw l vs k before QC
raw_l_vs_k_before_qc <-
- ggplot(df, aes(l, k, color = as.factor(conc_num))) +
+ ggplot(df, aes(l, K, color = as.factor(conc_num))) +
geom_point(aes(ORF = ORF, Gene = Gene, delta_bg = delta_bg), shape = 3) +
ggtitle("Raw L vs K before QC") +
theme_publication_legend_right()
@@ -334,7 +332,7 @@ raw_l_vs_k_before_qc <-
pdf(file.path(out_dir_qc, "raw_l_vs_k_before_qc.pdf"), width = 12, height = 8)
raw_l_vs_k_before_qc
-dev.off()
+invisible(dev.off())
pgg <- ggplotly(raw_l_vs_k_before_qc)
plotly_path <- file.path(out_dir_qc, "raw_l_vs_k_before_qc.html")
@@ -352,8 +350,7 @@ plate_analysis_delta_bg <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(fun = mean, geom = "point", size = 0.6) +
ggtitle("Plate analysis by Drug Conc for delta_bg before quality control") +
theme_publication()
@@ -367,42 +364,49 @@ plate_analysis_delta_bg_box <-
x_delta_bg_above_tolerance <-
df[df$delta_bg >= delta_background_tolerance, ]
x_delta_bg_above_tolerance_k_halfmedian <-
- (median(x_delta_bg_above_tolerance$k, na.rm = TRUE)) / 2
+ (median(x_delta_bg_above_tolerance$K, na.rm = TRUE)) / 2
x_delta_bg_above_tolerance_l_halfmedian <-
(median(x_delta_bg_above_tolerance$l, na.rm = TRUE)) / 2
x_delta_bg_above_tolerance_to_remove <-
dim(x_delta_bg_above_tolerance)[1]
x_delta_bg_above_tolerance_l_vs_k <-
- ggplot(x_delta_bg_above_tolerance, aes(l, k, color = as.factor(conc_num))) +
+ ggplot(x_delta_bg_above_tolerance, aes(l, K, color = as.factor(conc_num))) +
geom_point(aes(ORF = ORF, Gene = Gene, delta_bg = delta_bg), shape = 3) +
ggtitle(paste("Raw L vs K for strains above delta background threshold of", delta_background_tolerance, "or above")) +
- annotate("text", x = x_delta_bg_above_tolerance_l_halfmedian, y = x_delta_bg_above_tolerance_k_halfmedian,
- label = paste("Strains above delta background tolerance = ", x_delta_bg_above_tolerance_to_remove)
- ) +
+ annotate("text",
+ x = x_delta_bg_above_tolerance_l_halfmedian,
+ y = x_delta_bg_above_tolerance_k_halfmedian,
+ label = paste("Strains above delta background tolerance = ", x_delta_bg_above_tolerance_to_remove)) +
theme_publication_legend_right()
pdf(file.path(out_dir_qc, "raw_l_vs_k_for_strains_above_delta_background_threshold.pdf"), width = 12, height = 8)
x_delta_bg_above_tolerance_l_vs_k
-dev.off()
+invisible(dev.off())
pgg <- ggplotly(x_delta_bg_above_tolerance_l_vs_k)
plotly_path <- file.path(out_dir_qc, "raw_l_vs_k_for_strains_above_delta_background_threshold.html")
saveWidget(pgg, file = plotly_path, selfcontained = TRUE)
# Frequency plot for all data vs. the delta_background
-delta_bg_frequency_plot <- ggplot(df, aes(delta_bg, color = as.factor(conc_num))) + geom_density() +
- ggtitle("Density plot for Delta Background by Conc All Data") + theme_publication_legend_right()
+delta_bg_frequency_plot <-
+ ggplot(df, aes(delta_bg, color = as.factor(conc_num))) +
+ geom_density() +
+ ggtitle("Density plot for Delta Background by Conc All Data") +
+ theme_publication_legend_right()
# Bar plot for all data vs. the delta_background
-delta_bg_bar_plot <- ggplot(df, aes(delta_bg, color = as.factor(conc_num))) + geom_bar() +
- ggtitle("Bar plot for Delta Background by Conc All Data") + theme_publication_legend_right()
+delta_bg_bar_plot <-
+ ggplot(df, aes(delta_bg, color = as.factor(conc_num))) +
+ geom_bar() +
+ ggtitle("Bar plot for Delta Background by Conc All Data") +
+ theme_publication_legend_right()
pdf(file.path(out_dir_qc, "frequency_delta_background.pdf"), width = 12, height = 8)
-print(delta_bg_frequency_plot)
-print(delta_bg_bar_plot)
-dev.off()
+# print(delta_bg_frequency_plot)
+# print(delta_bg_bar_plot)
+invisible(dev.off())
# Need to identify missing data, and differentiate between this data and removed data
# so the removed data can get set to NA and the missing data can get set to max theoretical values
@@ -416,42 +420,42 @@ try(df[df$l == 0 & !is.na(df$l), ]$NG <- 1)
df$DB <- 0
try(df[df$delta_bg >= delta_background_tolerance, ]$DB <- 1)
-# Replace the CPPs for l, r, auc and k (must be last!) for removed data
+# Replace the CPPs for l, r, AUC and k (must be last!) for removed data
try(df[df$delta_bg >= delta_background_tolerance, ]$l <- NA)
try(df[df$delta_bg >= delta_background_tolerance, ]$r <- NA)
-try(df[df$delta_bg >= delta_background_tolerance, ]$auc <- NA)
-try(df[df$delta_bg >= delta_background_tolerance, ]$k <- NA)
+try(df[df$delta_bg >= delta_background_tolerance, ]$AUC <- NA)
+try(df[df$delta_bg >= delta_background_tolerance, ]$K <- NA)
# QC Plots
-plate_analysis_l_after_qc <- ggplot(df, aes(Scan, l, color = as.factor(conc_num))) + geom_point(shape = 3, size = 0.2) +
- stat_summary(
- fun = mean,
- fun.min = function(x) mean(x) - sd(x),
- fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
- stat_summary(
- fun = mean,
- geom = "point",
- size = 0.6
- ) +
- ggtitle("Plate analysis by Drug Conc for L after quality control") + theme_publication()
-
-plate_analysis_k_after_qc <-
- ggplot(df, aes(Scan, k, color = as.factor(conc_num))) +
+plate_analysis_l_after_qc <-
+ ggplot(df, aes(Scan, l, color = as.factor(conc_num))) +
geom_point(shape = 3, size = 0.2) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
- ggtitle("Plate analysis by Drug Conc for k after quality control") + theme_publication()
+ size = 0.6) +
+ ggtitle("Plate analysis by Drug Conc for L after quality control") +
+ theme_publication()
+
+plate_analysis_k_after_qc <-
+ ggplot(df, aes(Scan, K, color = as.factor(conc_num))) +
+ geom_point(shape = 3, size = 0.2) +
+ stat_summary(
+ fun = mean,
+ fun.min = function(x) mean(x) - sd(x),
+ fun.max = function(x) mean(x) + sd(x),
+ geom = "errorbar") +
+ stat_summary(
+ fun = mean,
+ geom = "point",
+ size = 0.6) +
+ ggtitle("Plate analysis by Drug Conc for k after quality control") +
+ theme_publication()
plate_analysis_r_after_qc <-
ggplot(df, aes(Scan, r, color = as.factor(conc_num))) +
@@ -460,30 +464,28 @@ plate_analysis_r_after_qc <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
- ggtitle("Plate analysis by Drug Conc for r after quality control") + theme_publication()
+ size = 0.6) +
+ ggtitle("Plate analysis by Drug Conc for r after quality control") +
+ theme_publication()
plate_analysis_auc_after_qc <-
- ggplot(df, aes(Scan, auc, color = as.factor(conc_num))) +
+ ggplot(df, aes(Scan, AUC, color = as.factor(conc_num))) +
geom_point(shape = 3, size = 0.2) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
- ggtitle("Plate analysis by Drug Conc for auc after quality control") + theme_publication()
+ size = 0.6) +
+ ggtitle("Plate analysis by Drug Conc for AUC after quality control") +
+ theme_publication()
plate_analysis_delta_bg_after_qc <-
ggplot(df, aes(Scan, delta_bg, color = as.factor(conc_num))) +
@@ -492,13 +494,11 @@ plate_analysis_delta_bg_after_qc <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
+ size = 0.6) +
ggtitle("Plate analysis by Drug Conc for delta_bg after quality control") +
theme_publication()
@@ -509,7 +509,7 @@ plate_analysis_l_box_after_qc <-
theme_publication()
plate_analysis_k_box_after_qc <-
- ggplot(df, aes(as.factor(Scan), k, color = as.factor(conc_num))) +
+ ggplot(df, aes(as.factor(Scan), K, color = as.factor(conc_num))) +
geom_boxplot() +
ggtitle("Plate analysis by Drug Conc for K after quality control") +
theme_publication()
@@ -521,9 +521,9 @@ plate_analysis_r_box_after_qc <-
theme_publication()
plate_analysis_auc_box_after_qc <-
- ggplot(df, aes(as.factor(Scan), auc, color = as.factor(conc_num))) +
+ ggplot(df, aes(as.factor(Scan), AUC, color = as.factor(conc_num))) +
geom_boxplot() +
- ggtitle("Plate analysis by Drug Conc for auc after quality control") +
+ ggtitle("Plate analysis by Drug Conc for AUC after quality control") +
theme_publication()
plate_analysis_delta_bg_box_after_qc <-
@@ -544,7 +544,7 @@ plate_analysis_auc
plate_analysis_auc_after_qc
plate_analysis_delta_bg
plate_analysis_delta_bg_after_qc
-dev.off()
+invisible(dev.off())
# Print the plate analysis data before and after QC
pdf(file.path(out_dir_qc, "plate_analysis_boxplots.pdf"), width = 18, height = 9)
@@ -558,7 +558,7 @@ plate_analysis_auc_box
plate_analysis_auc_box_after_qc
plate_analysis_delta_bg_box
plate_analysis_delta_bg_box_after_qc
-dev.off()
+invisible(dev.off())
# Remove the zero values and print plate analysis
x_no_zero <- df[which(df$l > 0), ]
@@ -569,30 +569,26 @@ plate_analysis_l_after_qc_z <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
+ size = 0.6) +
ggtitle("Plate analysis by Drug Conc for L after quality control") +
theme_publication()
plate_analysis_k_after_qc_z <-
- ggplot(x_no_zero, aes(Scan, k, color = as.factor(conc_num))) +
+ ggplot(x_no_zero, aes(Scan, K, color = as.factor(conc_num))) +
geom_point(shape = 3, size = 0.2) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
+ size = 0.6) +
ggtitle("Plate analysis by Drug Conc for K after quality control") +
theme_publication()
@@ -603,31 +599,27 @@ plate_analysis_r_after_qc_z <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
+ size = 0.6) +
ggtitle("Plate analysis by Drug Conc for r after quality control") +
theme_publication()
plate_analysis_auc_after_qc_z <-
- ggplot(x_no_zero, aes(Scan, auc, color = as.factor(conc_num))) +
+ ggplot(x_no_zero, aes(Scan, AUC, color = as.factor(conc_num))) +
geom_point(shape = 3, size = 0.2) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
- ggtitle("Plate analysis by Drug Conc for auc after quality control") +
+ size = 0.6) +
+ ggtitle("Plate analysis by Drug Conc for AUC after quality control") +
theme_publication()
plate_analysis_delta_bg_after_qc_z <-
@@ -637,13 +629,11 @@ plate_analysis_delta_bg_after_qc_z <-
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar"
- ) +
+ geom = "errorbar") +
stat_summary(
fun = mean,
geom = "point",
- size = 0.6
- ) +
+ size = 0.6) +
ggtitle("Plate analysis by Drug Conc for delta_bg after quality control") +
theme_publication()
@@ -654,7 +644,7 @@ plate_analysis_l_box_after_qc_z <-
theme_publication()
plate_analysis_k_box_after_qc_z <-
- ggplot(x_no_zero, aes(as.factor(Scan), k, color = as.factor(conc_num))) +
+ ggplot(x_no_zero, aes(as.factor(Scan), K, color = as.factor(conc_num))) +
geom_boxplot() +
ggtitle("Plate analysis by Drug Conc for K after quality control") +
theme_publication()
@@ -666,9 +656,9 @@ plate_analysis_r_box_after_qc_z <-
theme_publication()
plate_analysis_auc_box_after_qc_z <-
- ggplot(x_no_zero, aes(as.factor(Scan), auc, color = as.factor(conc_num))) +
+ ggplot(x_no_zero, aes(as.factor(Scan), AUC, color = as.factor(conc_num))) +
geom_boxplot() +
- ggtitle("Plate analysis by Drug Conc for auc after quality control") +
+ ggtitle("Plate analysis by Drug Conc for AUC after quality control") +
theme_publication()
plate_analysis_delta_bg_box_after_qc_z <-
@@ -684,7 +674,7 @@ plate_analysis_k_after_qc_z
plate_analysis_r_after_qc_z
plate_analysis_auc_after_qc_z
plate_analysis_delta_bg_after_qc_z
-dev.off()
+invisible(dev.off())
# Print the plate analysis data before and after QC
pdf(file.path(out_dir_qc, "plate_analysis_no_zeros_boxplots.pdf"), width = 18, height = 9)
@@ -693,7 +683,7 @@ plate_analysis_k_box_after_qc_z
plate_analysis_r_box_after_qc_z
plate_analysis_auc_box_after_qc_z
plate_analysis_delta_bg_box_after_qc_z
-dev.off()
+invisible(dev.off())
# Remove dataset with zeros removed
rm(x_no_zero)
@@ -712,11 +702,11 @@ x_stats_all <- ddply(
min_l = min(l, na.rm = TRUE),
sd_l = sd(l, na.rm = TRUE),
se_l = sd_l / sqrt(N - 1),
- mean_k = mean(k, na.rm = TRUE),
- median_k = median(k, na.rm = TRUE),
- max_k = max(k, na.rm = TRUE),
- min_k = min(k, na.rm = TRUE),
- sd_k = sd(k, na.rm = TRUE),
+ mean_k = mean(K, na.rm = TRUE),
+ median_k = median(K, na.rm = TRUE),
+ max_k = max(K, na.rm = TRUE),
+ min_k = min(K, na.rm = TRUE),
+ sd_k = sd(K, na.rm = TRUE),
se_k = sd_k / sqrt(N - 1),
mean_r = mean(r, na.rm = TRUE),
median_r = median(r, na.rm = TRUE),
@@ -724,11 +714,11 @@ x_stats_all <- ddply(
min_r = min(r, na.rm = TRUE),
sd_r = sd(r, na.rm = TRUE),
se_r = sd_r / sqrt(N - 1),
- mean_auc = mean(auc, na.rm = TRUE),
- median_auc = median(auc, na.rm = TRUE),
- max_auc = max(auc, na.rm = TRUE),
- min_auc = min(auc, na.rm = TRUE),
- sd_auc = sd(auc, na.rm = TRUE),
+ mean_auc = mean(AUC, na.rm = TRUE),
+ median_auc = median(AUC, na.rm = TRUE),
+ max_auc = max(AUC, na.rm = TRUE),
+ min_auc = min(AUC, na.rm = TRUE),
+ sd_auc = sd(AUC, na.rm = TRUE),
se_auc = sd_auc / sqrt(N - 1)
)
@@ -750,14 +740,14 @@ for (s in background_strains) {
# we may want to consider in some cases giving the max high value to L depending on the data type
if (table(x_background$l)[1] == 0) {
x_background[x_background$l == 0, ]$l <- NA
- x_background[x_background$k == 0, ]$k <- NA
+ x_background[x_background$K == 0, ]$K <- NA
x_background[x_background$r == 0, ]$r <- NA
- x_background[x_background$auc == 0, ]$auc <- NA
+ x_background[x_background$AUC == 0, ]$AUC <- NA
}
x_background <- x_background[!is.na(x_background$l), ]
- # Get summary stats for L, k, R, auc
+ # Get summary stats for L, K, R, AUC
x_stats_by_l <- ddply(
x_background,
c("OrfRep", "conc_num", "conc_num_factor"),
@@ -771,19 +761,19 @@ for (s in background_strains) {
se = sd / sqrt(N - 1)
)
- print(x_stats_by_l)
+ # print(x_stats_by_l)
x1_sd <- max(x_stats_by_l$sd)
x_stats_by_k <- ddply(
x_background,
c("OrfRep", "conc_num", "conc_num_factor"),
summarise,
- N = (length(k)),
- mean = mean(k, na.rm = TRUE),
- median = median(k, na.rm = TRUE),
- max = max(k, na.rm = TRUE),
- min = min(k, na.rm = TRUE),
- sd = sd(k, na.rm = TRUE),
+ N = (length(K)),
+ mean = mean(K, na.rm = TRUE),
+ median = median(K, na.rm = TRUE),
+ max = max(K, na.rm = TRUE),
+ min = min(K, na.rm = TRUE),
+ sd = sd(K, na.rm = TRUE),
se = sd / sqrt(N - 1)
)
@@ -808,12 +798,12 @@ for (s in background_strains) {
x_background,
c("OrfRep", "conc_num", "conc_num_factor"),
summarise,
- N = length(auc),
- mean = mean(auc, na.rm = TRUE),
- median = median(auc, na.rm = TRUE),
- max = max(auc, na.rm = TRUE),
- min = min(auc, na.rm = TRUE),
- sd = sd(auc, na.rm = TRUE),
+ N = length(AUC),
+ mean = mean(AUC, na.rm = TRUE),
+ median = median(AUC, na.rm = TRUE),
+ max = max(AUC, na.rm = TRUE),
+ min = min(AUC, na.rm = TRUE),
+ sd = sd(AUC, na.rm = TRUE),
se = sd / sqrt(N - 1)
)
@@ -830,11 +820,11 @@ for (s in background_strains) {
min_l = min(l, na.rm = TRUE),
sd_l = sd(l, na.rm = TRUE),
se_l = sd_l / sqrt(N - 1),
- mean_k = mean(k, na.rm = TRUE),
- median_k = median(k, na.rm = TRUE),
- max_k = max(k, na.rm = TRUE),
- min_k = min(k, na.rm = TRUE),
- sd_k = sd(k, na.rm = TRUE),
+ mean_k = mean(K, na.rm = TRUE),
+ median_k = median(K, na.rm = TRUE),
+ max_k = max(K, na.rm = TRUE),
+ min_k = min(K, na.rm = TRUE),
+ sd_k = sd(K, na.rm = TRUE),
se_k = sd_k / sqrt(N - 1),
mean_r = mean(r, na.rm = TRUE),
median_r = median(r, na.rm = TRUE),
@@ -842,18 +832,18 @@ for (s in background_strains) {
min_r = min(r, na.rm = TRUE),
sd_r = sd(r, na.rm = TRUE),
se_r = sd_r / sqrt(N - 1),
- mean_auc = mean(auc, na.rm = TRUE),
- median_auc = median(auc, na.rm = TRUE),
- max_auc = max(auc, na.rm = TRUE),
- min_l = min(auc, na.rm = TRUE),
- sd_auc = sd(auc, na.rm = TRUE),
+ mean_auc = mean(AUC, na.rm = TRUE),
+ median_auc = median(AUC, na.rm = TRUE),
+ max_auc = max(AUC, na.rm = TRUE),
+ min_l = min(AUC, na.rm = TRUE),
+ sd_auc = sd(AUC, na.rm = TRUE),
se_auc = sd_auc / sqrt(N - 1)
)
write.csv(x_stats_by, file.path(out_dir, "summary_stats_background_strains.csv"), row.names = FALSE)
# Calculate the max theoretical L values
- # Only look for max values when k is within 2sd of the ref strain
+ # Only look for max values when K is within 2sd of the ref strain
for (q in unique(df$conc_num_factor)) {
if (q == 0) {
x_within_2sd_k <-
@@ -863,9 +853,9 @@ for (s in background_strains) {
x_stats_temp_k <-
x_stats_by_k[x_stats_by_k$conc_num_factor == q, ]
x_within_2sd_k <-
- x_within_2sd_k[x_within_2sd_k$k >= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])), ]
+ x_within_2sd_k[x_within_2sd_k$K >= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])), ]
x_within_2sd_k <-
- x_within_2sd_k[x_within_2sd_k$k <= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
+ x_within_2sd_k[x_within_2sd_k$K <= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
x_outside_2sd_k <-
df[df$conc_num_factor == q, ]
x_outside_2sd_k <-
@@ -874,10 +864,10 @@ for (s in background_strains) {
# x_stats_by_k[x_stats_by_k$conc_num_factor == q, ]
x_outside_2sd_k <-
x_outside_2sd_k[
- x_outside_2sd_k$k <= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])) |
- x_outside_2sd_k$k >= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
+ x_outside_2sd_k$K <= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])) |
+ x_outside_2sd_k$K >= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
# x_outside_2sd_k <-
- # x_outside_2sd_k[x_outside_2sd_k$k >= (x_stats_temp_k$mean[1] + (2*x_stats_temp_k$sd[1])), ]
+ # x_outside_2sd_k[x_outside_2sd_k$K >= (x_stats_temp_k$mean[1] + (2*x_stats_temp_k$sd[1])), ]
}
if (q > 0) {
x_within_2sd_k_temp <-
@@ -887,9 +877,9 @@ for (s in background_strains) {
x_stats_temp_k <-
x_stats_by_k[x_stats_by_k$conc_num_factor == q, ]
x_within_2sd_k_temp <-
- x_within_2sd_k_temp[x_within_2sd_k_temp$k >= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])), ]
+ x_within_2sd_k_temp[x_within_2sd_k_temp$K >= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])), ]
x_within_2sd_k_temp <-
- x_within_2sd_k_temp[x_within_2sd_k_temp$k <= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
+ x_within_2sd_k_temp[x_within_2sd_k_temp$K <= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
x_within_2sd_k <-
rbind(x_within_2sd_k, x_within_2sd_k_temp)
x_outside_2sd_k_temp <-
@@ -900,10 +890,10 @@ for (s in background_strains) {
# x_stats_by_k[x_stats_by_k$conc_num_factor == q, ]
x_outside_2sd_k_temp <-
x_outside_2sd_k_temp[
- x_outside_2sd_k_temp$k <= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])) |
- x_outside_2sd_k_temp$k >= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
+ x_outside_2sd_k_temp$K <= (x_stats_temp_k$mean[1] - (2 * x_stats_temp_k$sd[1])) |
+ x_outside_2sd_k_temp$K >= (x_stats_temp_k$mean[1] + (2 * x_stats_temp_k$sd[1])), ]
# x_outside_2sd_k_temp <-
- # x_outside_2sd_k_temp[x_outside_2sd_k_temp$k >= (x_stats_temp_k$mean[1] + (2*x_stats_temp_k$sd[1])) , ]
+ # x_outside_2sd_k_temp[x_outside_2sd_k_temp$K >= (x_stats_temp_k$mean[1] + (2*x_stats_temp_k$sd[1])) , ]
x_outside_2sd_k <-
rbind(x_outside_2sd_k, x_outside_2sd_k_temp)
}
@@ -923,7 +913,7 @@ for (s in background_strains) {
z_max = (max - mean) / sd
)
- print(x_stats_by_l_within_2sd_k)
+ # print(x_stats_by_l_within_2sd_k)
x1_sd_within_2sd_k <- max(x_stats_by_l_within_2sd_k$sd)
@@ -946,34 +936,34 @@ for (s in background_strains) {
se = sd / sqrt(N - 1)
)
- print(x_stats_by_l_outside_2sd_k)
+ # print(x_stats_by_l_outside_2sd_k)
x1_sd_outside_2sd_k <- max(x_stats_by_l_outside_2sd_k$sd)
# x1_sd_outside_2sd_k <- df[df$l %in% x1_sd_within_2sd_k$l, ]
outside_2sd_k_l_vs_k <-
- ggplot(x_outside_2sd_k, aes(l, k, color = as.factor(conc_num))) +
+ ggplot(x_outside_2sd_k, aes(l, K, color = as.factor(conc_num))) +
geom_point(aes(ORF = ORF, Gene = Gene, delta_bg = delta_bg), shape = 3) +
ggtitle("Raw L vs K for strains falling outside 2sd of the K mean at each conc") +
theme_publication_legend_right()
pdf(file.path(out_dir_qc, "raw_l_vs_k_for_strains_2sd_outside_mean_k.pdf"), width = 10, height = 8)
- print(outside_2sd_k_l_vs_k)
+ # print(outside_2sd_k_l_vs_k)
- dev.off()
+ invisible(dev.off())
pgg <- ggplotly(outside_2sd_k_l_vs_k)
plotly_path <- file.path(out_dir_qc, "raw_l_vs_k_for_strains_outside_2sd_k.html")
saveWidget(pgg, file = plotly_path, selfcontained = TRUE)
outside_2sd_k_delta_background_vs_k <-
- ggplot(x_outside_2sd_k, aes(delta_bg, k, color = as.factor(conc_num))) +
+ ggplot(x_outside_2sd_k, aes(delta_bg, K, color = as.factor(conc_num))) +
geom_point(aes(l = l, ORF = ORF, Gene = Gene), shape = 3, position = "jitter") +
ggtitle("DeltaBackground vs K for strains falling outside 2sd of the K mean at each conc") +
theme_publication_legend_right()
pdf(file.path(out_dir_qc, "delta_background_vs_k_for_strains_2sd_outside_mean_k.pdf"), width = 10, height = 8)
outside_2sd_k_delta_background_vs_k
- dev.off()
+ invisible(dev.off())
pgg <- ggplotly(outside_2sd_k_delta_background_vs_k)
# pgg
@@ -1017,9 +1007,9 @@ for (s in background_strains) {
try(df2_temp[df2_temp$l == 0 & !is.na(df2_temp$l), ]$l <- x_stats_by_l_within_2sd_k$max[i])
try(df2_temp[df2_temp$l >= x_stats_by_l_within_2sd_k$max[i] & !is.na(df2_temp$l), ]$SM <- 1)
try(df2_temp[df2_temp$l >= x_stats_by_l_within_2sd_k$max[i] & !is.na(df2_temp$l), ]$l <- x_stats_by_l_within_2sd_k$max[i])
- # df2_temp[df2_temp$k == 0, ]$k <- x_stats_all_k$max[i]
+ # df2_temp[df2_temp$K == 0, ]$K <- x_stats_all_k$max[i]
# df2_temp[df2_temp$r == 0, ]$r <- x_stats_all_r$max[i]
- # df2_temp[df2_temp$auc == 0, ]$auc <- x_stats_all_auc$max[i]
+ # df2_temp[df2_temp$AUC == 0, ]$AUC <- x_stats_all_auc$max[i]
sprintf("Check loop order, conc = %f", concentration)
df2_new <- rbind(df2_new, df2_temp)
}
@@ -1063,33 +1053,33 @@ for (s in background_strains) {
interaction_scores_rf <- unique(df2_rf["OrfRep"])
# interaction_scores_rf$Gene <- unique(df2$Gene)
interaction_scores_rf$Gene <- NA
- interaction_scores_rf$Raw_Shift_l <- NA
+ interaction_scores_rf$raw_shift_l <- NA
interaction_scores_rf$z_shift_l <- NA
- interaction_scores_rf$lm_Score_l <- NA
+ interaction_scores_rf$lm_score_l <- NA
interaction_scores_rf$z_lm_l <- NA
- interaction_scores_rf$R_Squared_l <- NA
- interaction_scores_rf$Sum_z_Score_l <- NA
+ interaction_scores_rf$r_squared_l <- NA
+ interaction_scores_rf$sum_z_score_l <- NA
interaction_scores_rf$avg_zscore_l <- NA
- interaction_scores_rf$Raw_Shift_k <- NA
+ interaction_scores_rf$raw_shift_k <- NA
interaction_scores_rf$z_shift_k <- NA
- interaction_scores_rf$lm_Score_k <- NA
+ interaction_scores_rf$lm_score_k <- NA
interaction_scores_rf$z_lm_k <- NA
- interaction_scores_rf$R_Squared_k <- NA
- interaction_scores_rf$Sum_z_Score_k <- NA
+ interaction_scores_rf$r_squared_k <- NA
+ interaction_scores_rf$sum_z_score_k <- NA
interaction_scores_rf$avg_zscore_k <- NA
- interaction_scores_rf$Raw_Shift_r <- NA
+ interaction_scores_rf$raw_shift_r <- NA
interaction_scores_rf$z_shift_r <- NA
- interaction_scores_rf$lm_Score_r <- NA
+ interaction_scores_rf$lm_score_r <- NA
interaction_scores_rf$z_lm_r <- NA
- interaction_scores_rf$R_Squared_r <- NA
- interaction_scores_rf$Sum_z_Score_r <- NA
+ interaction_scores_rf$r_squared_r <- NA
+ interaction_scores_rf$sum_z_score_r <- NA
interaction_scores_rf$avg_zscore_r <- NA
- interaction_scores_rf$Raw_Shift_auc <- NA
+ interaction_scores_rf$raw_shift_auc <- NA
interaction_scores_rf$z_shift_auc <- NA
- interaction_scores_rf$lm_Score_auc <- NA
+ interaction_scores_rf$lm_score_auc <- NA
interaction_scores_rf$z_lm_auc <- NA
- interaction_scores_rf$R_Squared_auc <- NA
- interaction_scores_rf$Sum_z_Score_auc <- NA
+ interaction_scores_rf$r_squared_auc <- NA
+ interaction_scores_rf$sum_z_score_auc <- NA
interaction_scores_rf$avg_zscore_auc <- NA
interaction_scores_rf$NG <- NA
interaction_scores_rf$SM <- NA
@@ -1109,17 +1099,17 @@ for (s in background_strains) {
median_l = median(l, na.rm = TRUE),
sd_l = sd(l, na.rm = TRUE),
se_l = sd_l / sqrt(N - 1),
- mean_k = mean(k, na.rm = TRUE),
- median_k = median(k, na.rm = TRUE),
- sd_k = sd(k, na.rm = TRUE),
+ mean_k = mean(K, na.rm = TRUE),
+ median_k = median(K, na.rm = TRUE),
+ sd_k = sd(K, na.rm = TRUE),
se_k = sd_k / sqrt(N - 1),
mean_r = mean(r, na.rm = TRUE),
median_r = median(r, na.rm = TRUE),
sd_r = sd(r, na.rm = TRUE),
se_r = sd_r / sqrt(N - 1),
- mean_auc = mean(auc, na.rm = TRUE),
- median_auc = median(auc, na.rm = TRUE),
- sd_auc = sd(auc, na.rm = TRUE),
+ mean_auc = mean(AUC, na.rm = TRUE),
+ median_auc = median(AUC, na.rm = TRUE),
+ sd_auc = sd(AUC, na.rm = TRUE),
se_auc = sd_auc / sqrt(N - 1),
NG = sum(NG, na.rm = TRUE),
DB = sum(DB, na.rm = TRUE),
@@ -1132,23 +1122,23 @@ for (s in background_strains) {
# if L is 0, keep the shift at 0 and for other drug concs calculate delta Ls with no shift
# otherwise calculate shift at no drug conc
if (is.na(x_stats_interaction$mean_l[1]) || x_stats_interaction$mean_l[1] == 0) {
- x_stats_interaction$Raw_Shift_l <- 0
- x_stats_interaction$Raw_Shift_k <- 0
- x_stats_interaction$Raw_Shift_r <- 0
- x_stats_interaction$Raw_Shift_auc <- 0
+ x_stats_interaction$raw_shift_l <- 0
+ x_stats_interaction$raw_shift_k <- 0
+ x_stats_interaction$raw_shift_r <- 0
+ x_stats_interaction$raw_shift_auc <- 0
x_stats_interaction$z_shift_l <- 0
x_stats_interaction$z_shift_k <- 0
x_stats_interaction$z_shift_r <- 0
x_stats_interaction$z_shift_auc <- 0
} else {
- x_stats_interaction$Raw_Shift_l <- x_stats_interaction$mean_l[1] - background_l
- x_stats_interaction$Raw_Shift_k <- x_stats_interaction$mean_k[1] - background_k
- x_stats_interaction$Raw_Shift_r <- x_stats_interaction$mean_r[1] - background_r
- x_stats_interaction$Raw_Shift_auc <- x_stats_interaction$mean_auc[1] - background_auc
- x_stats_interaction$z_shift_l <- x_stats_interaction$Raw_Shift_l[1] / x_stats_by_l$sd[1]
- x_stats_interaction$z_shift_k <- x_stats_interaction$Raw_Shift_k[1] / x_stats_by_k$sd[1]
- x_stats_interaction$z_shift_r <- x_stats_interaction$Raw_Shift_r[1] / x_stats_by_r$sd[1]
- x_stats_interaction$z_shift_auc <- x_stats_interaction$Raw_Shift_auc[1] / x_stats_by_auc$sd[1]
+ x_stats_interaction$raw_shift_l <- x_stats_interaction$mean_l[1] - background_l
+ x_stats_interaction$raw_shift_k <- x_stats_interaction$mean_k[1] - background_k
+ x_stats_interaction$raw_shift_r <- x_stats_interaction$mean_r[1] - background_r
+ x_stats_interaction$raw_shift_auc <- x_stats_interaction$mean_auc[1] - background_auc
+ x_stats_interaction$z_shift_l <- x_stats_interaction$raw_shift_l[1] / x_stats_by_l$sd[1]
+ x_stats_interaction$z_shift_k <- x_stats_interaction$raw_shift_k[1] / x_stats_by_k$sd[1]
+ x_stats_interaction$z_shift_r <- x_stats_interaction$raw_shift_r[1] / x_stats_by_r$sd[1]
+ x_stats_interaction$z_shift_auc <- x_stats_interaction$raw_shift_auc[1] / x_stats_by_auc$sd[1]
}
# Get WT vals
@@ -1167,10 +1157,10 @@ for (s in background_strains) {
if (x_stats_interaction$mean_l[1] != 0 && !is.na(x_stats_interaction$mean_l[1])) {
# Calculate expected values
- x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$Raw_Shift_l
- x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$Raw_Shift_k
- x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$Raw_Shift_r
- x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$Raw_Shift_auc
+ x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$raw_shift_l
+ x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$raw_shift_k
+ x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$raw_shift_r
+ x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$raw_shift_auc
# Calculate normalized delta values
x_stats_interaction$delta_l <- x_stats_interaction$mean_l - x_stats_interaction$Exp_l
@@ -1233,51 +1223,51 @@ for (s in background_strains) {
x_gene_sel$OrfRep[1]
interaction_scores_rf$Gene[interaction_scores_rf$OrfRep == gene_sel] <-
x_gene_sel$Gene[1]
- interaction_scores_rf$Raw_Shift_l[interaction_scores_rf$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_l[1]
+ interaction_scores_rf$raw_shift_l[interaction_scores_rf$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_l[1]
interaction_scores_rf$z_shift_l[interaction_scores_rf$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_l[1]
- interaction_scores_rf$lm_Score_l[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$lm_score_l[interaction_scores_rf$OrfRep == gene_sel] <-
gene_interaction_l
- interaction_scores_rf$R_Squared_l[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$r_squared_l[interaction_scores_rf$OrfRep == gene_sel] <-
r_squared_l
- interaction_scores_rf$Sum_z_Score_l[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$sum_z_score_l[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_l, na.rm = TRUE)
interaction_scores_rf$avg_zscore_l[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_l, na.rm = TRUE) / (num_non_removed_conc)
- interaction_scores_rf$Raw_Shift_k[interaction_scores_rf$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_k[1]
+ interaction_scores_rf$raw_shift_k[interaction_scores_rf$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_k[1]
interaction_scores_rf$z_shift_k[interaction_scores_rf$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_k[1]
- interaction_scores_rf$lm_Score_k[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$lm_score_k[interaction_scores_rf$OrfRep == gene_sel] <-
gene_interaction_k
- interaction_scores_rf$R_Squared_k[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$r_squared_k[interaction_scores_rf$OrfRep == gene_sel] <-
r_squared_k
- interaction_scores_rf$Sum_z_Score_k[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$sum_z_score_k[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_k, na.rm = TRUE)
interaction_scores_rf$avg_zscore_k[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_k, na.rm = TRUE) / (num_non_removed_conc)
- interaction_scores_rf$Raw_Shift_r[interaction_scores_rf$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_r[1]
+ interaction_scores_rf$raw_shift_r[interaction_scores_rf$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_r[1]
interaction_scores_rf$z_shift_r[interaction_scores_rf$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_r[1]
- interaction_scores_rf$lm_Score_r[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$lm_score_r[interaction_scores_rf$OrfRep == gene_sel] <-
gene_interaction_r
- interaction_scores_rf$R_Squared_r[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$r_squared_r[interaction_scores_rf$OrfRep == gene_sel] <-
r_squared_r
- interaction_scores_rf$Sum_z_Score_r[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$sum_z_score_r[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_r, na.rm = TRUE)
interaction_scores_rf$avg_zscore_r[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_r, na.rm = TRUE) / (total_conc_nums - 1)
- interaction_scores_rf$Raw_Shift_auc[interaction_scores_rf$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_auc[1]
+ interaction_scores_rf$raw_shift_auc[interaction_scores_rf$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_auc[1]
interaction_scores_rf$z_shift_auc[interaction_scores_rf$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_auc[1]
- interaction_scores_rf$lm_Score_auc[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$lm_score_auc[interaction_scores_rf$OrfRep == gene_sel] <-
gene_interaction_auc
- interaction_scores_rf$R_Squared_auc[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$r_squared_auc[interaction_scores_rf$OrfRep == gene_sel] <-
r_squared_auc
- interaction_scores_rf$Sum_z_Score_auc[interaction_scores_rf$OrfRep == gene_sel] <-
+ interaction_scores_rf$sum_z_score_auc[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_auc, na.rm = TRUE)
interaction_scores_rf$avg_zscore_auc[interaction_scores_rf$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_auc, na.rm = TRUE) / (total_conc_nums - 1)
@@ -1286,10 +1276,10 @@ for (s in background_strains) {
if (x_stats_interaction$mean_l[1] == 0 || is.na(x_stats_interaction$mean_l[1])) {
# Calculate expected values
- x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$Raw_Shift_l
- x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$Raw_Shift_k
- x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$Raw_Shift_r
- x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$Raw_Shift_auc
+ x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$raw_shift_l
+ x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$raw_shift_k
+ x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$raw_shift_r
+ x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$raw_shift_auc
# Calculate normalized delta values
x_stats_interaction$delta_l <- x_stats_interaction$mean_l - x_stats_interaction$Exp_l
@@ -1341,39 +1331,39 @@ for (s in background_strains) {
r_squared_r <- NA
gene_interaction_auc <- NA
r_squared_auc <- NA
- x_stats_interaction$Raw_Shift_l <- NA
- x_stats_interaction$Raw_Shift_k <- NA
- x_stats_interaction$Raw_Shift_r <- NA
- x_stats_interaction$Raw_Shift_auc <- NA
+ x_stats_interaction$raw_shift_l <- NA
+ x_stats_interaction$raw_shift_k <- NA
+ x_stats_interaction$raw_shift_r <- NA
+ x_stats_interaction$raw_shift_auc <- NA
x_stats_interaction$z_shift_l <- NA
x_stats_interaction$z_shift_k <- NA
x_stats_interaction$z_shift_r <- NA
x_stats_interaction$z_shift_auc <- NA
interaction_scores_rf$OrfRep[interaction_scores_rf$OrfRep == gene_sel] <- x_gene_sel$OrfRep[1]
interaction_scores_rf$Gene[interaction_scores_rf$OrfRep == gene_sel] <- x_gene_sel$Gene[1]
- interaction_scores_rf$Raw_Shift_l[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_l[1]
+ interaction_scores_rf$raw_shift_l[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_l[1]
interaction_scores_rf$z_shift_l[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$z_shift_l[1]
- interaction_scores_rf$lm_Score_l[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_l
- interaction_scores_rf$R_Squared_l[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_l
- interaction_scores_rf$Sum_z_Score_l[interaction_scores_rf$OrfRep == gene_sel] <- NA
+ interaction_scores_rf$lm_score_l[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_l
+ interaction_scores_rf$r_squared_l[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_l
+ interaction_scores_rf$sum_z_score_l[interaction_scores_rf$OrfRep == gene_sel] <- NA
interaction_scores_rf$avg_zscore_l[interaction_scores_rf$OrfRep == gene_sel] <- NA
- interaction_scores_rf$Raw_Shift_k[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_k[1]
+ interaction_scores_rf$raw_shift_k[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_k[1]
interaction_scores_rf$z_shift_k[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$z_shift_k[1]
- interaction_scores_rf$lm_Score_k[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_k
- interaction_scores_rf$R_Squared_k[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_k
- interaction_scores_rf$Sum_z_Score_k[interaction_scores_rf$OrfRep == gene_sel] <- NA
+ interaction_scores_rf$lm_score_k[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_k
+ interaction_scores_rf$r_squared_k[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_k
+ interaction_scores_rf$sum_z_score_k[interaction_scores_rf$OrfRep == gene_sel] <- NA
interaction_scores_rf$avg_zscore_k[interaction_scores_rf$OrfRep == gene_sel] <- NA
- interaction_scores_rf$Raw_Shift_r[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_r[1]
+ interaction_scores_rf$raw_shift_r[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_r[1]
interaction_scores_rf$z_shift_r[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$z_shift_r[1]
- interaction_scores_rf$lm_Score_r[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_r
- interaction_scores_rf$R_Squared_r[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_r
- interaction_scores_rf$Sum_z_Score_r[interaction_scores_rf$OrfRep == gene_sel] <- NA
+ interaction_scores_rf$lm_score_r[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_r
+ interaction_scores_rf$r_squared_r[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_r
+ interaction_scores_rf$sum_z_score_r[interaction_scores_rf$OrfRep == gene_sel] <- NA
interaction_scores_rf$avg_zscore_r[interaction_scores_rf$OrfRep == gene_sel] <- NA
- interaction_scores_rf$Raw_Shift_auc[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_auc[1]
+ interaction_scores_rf$raw_shift_auc[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_auc[1]
interaction_scores_rf$z_shift_auc[interaction_scores_rf$OrfRep == gene_sel] <- x_stats_interaction$z_shift_auc[1]
- interaction_scores_rf$lm_Score_auc[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_auc
- interaction_scores_rf$R_Squared_auc[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_auc
- interaction_scores_rf$Sum_z_Score_auc[interaction_scores_rf$OrfRep == gene_sel] <- NA
+ interaction_scores_rf$lm_score_auc[interaction_scores_rf$OrfRep == gene_sel] <- gene_interaction_auc
+ interaction_scores_rf$r_squared_auc[interaction_scores_rf$OrfRep == gene_sel] <- r_squared_auc
+ interaction_scores_rf$sum_z_score_auc[interaction_scores_rf$OrfRep == gene_sel] <- NA
interaction_scores_rf$avg_zscore_auc[interaction_scores_rf$OrfRep == gene_sel] <- NA
}
@@ -1394,21 +1384,21 @@ for (s in background_strains) {
print("Pass RF Calculation loop")
- lm_sd_l <- sd(interaction_scores_rf$lm_Score_l, na.rm = TRUE)
- lm_sd_k <- sd(interaction_scores_rf$lm_Score_k, na.rm = TRUE)
- lm_sd_r <- sd(interaction_scores_rf$lm_Score_r, na.rm = TRUE)
- lm_sd_auc <- sd(interaction_scores_rf$lm_Score_auc, na.rm = TRUE)
- lm_mean_l <- mean(interaction_scores_rf$lm_Score_l, na.rm = TRUE)
- lm_mean_k <- mean(interaction_scores_rf$lm_Score_k, na.rm = TRUE)
- lm_mean_r <- mean(interaction_scores_rf$lm_Score_r, na.rm = TRUE)
- lm_mean_auc <- mean(interaction_scores_rf$lm_Score_auc, na.rm = TRUE)
+ lm_sd_l <- sd(interaction_scores_rf$lm_score_l, na.rm = TRUE)
+ lm_sd_k <- sd(interaction_scores_rf$lm_score_k, na.rm = TRUE)
+ lm_sd_r <- sd(interaction_scores_rf$lm_score_r, na.rm = TRUE)
+ lm_sd_auc <- sd(interaction_scores_rf$lm_score_auc, na.rm = TRUE)
+ lm_mean_l <- mean(interaction_scores_rf$lm_score_l, na.rm = TRUE)
+ lm_mean_k <- mean(interaction_scores_rf$lm_score_k, na.rm = TRUE)
+ lm_mean_r <- mean(interaction_scores_rf$lm_score_r, na.rm = TRUE)
+ lm_mean_auc <- mean(interaction_scores_rf$lm_score_auc, na.rm = TRUE)
print(paste("Mean RF linear regression score L", lm_mean_l))
- interaction_scores_rf$z_lm_l <- (interaction_scores_rf$lm_Score_l - lm_mean_l) / (lm_sd_l)
- interaction_scores_rf$z_lm_k <- (interaction_scores_rf$lm_Score_k - lm_mean_k) / (lm_sd_k)
- interaction_scores_rf$z_lm_r <- (interaction_scores_rf$lm_Score_r - lm_mean_r) / (lm_sd_r)
- interaction_scores_rf$z_lm_auc <- (interaction_scores_rf$lm_Score_auc - lm_mean_auc) / (lm_sd_auc)
+ interaction_scores_rf$z_lm_l <- (interaction_scores_rf$lm_score_l - lm_mean_l) / (lm_sd_l)
+ interaction_scores_rf$z_lm_k <- (interaction_scores_rf$lm_score_k - lm_mean_k) / (lm_sd_k)
+ interaction_scores_rf$z_lm_r <- (interaction_scores_rf$lm_score_r - lm_mean_r) / (lm_sd_r)
+ interaction_scores_rf$z_lm_auc <- (interaction_scores_rf$lm_score_auc - lm_mean_auc) / (lm_sd_auc)
interaction_scores_rf <- interaction_scores_rf[order(interaction_scores_rf$z_lm_l, decreasing = TRUE), ]
interaction_scores_rf <- interaction_scores_rf[order(interaction_scores_rf$NG, decreasing = TRUE), ]
write.csv(interaction_scores_rf, file.path(out_dir, "rf_zscores_interaction.csv"), row.names = FALSE)
@@ -1525,33 +1515,33 @@ for (s in background_strains) {
interaction_scores <- unique(df2["OrfRep"])
# interaction_scores$Gene <- unique(df2$Gene)
interaction_scores$Gene <- NA
- interaction_scores$Raw_Shift_l <- NA
+ interaction_scores$raw_shift_l <- NA
interaction_scores$z_shift_l <- NA
- interaction_scores$lm_Score_l <- NA
+ interaction_scores$lm_score_l <- NA
interaction_scores$z_lm_l <- NA
- interaction_scores$R_Squared_l <- NA
- interaction_scores$Sum_z_Score_l <- NA
+ interaction_scores$r_squared_l <- NA
+ interaction_scores$sum_z_score_l <- NA
interaction_scores$avg_zscore_l <- NA
- interaction_scores$Raw_Shift_k <- NA
+ interaction_scores$raw_shift_k <- NA
interaction_scores$z_shift_k <- NA
- interaction_scores$lm_Score_k <- NA
+ interaction_scores$lm_score_k <- NA
interaction_scores$z_lm_k <- NA
- interaction_scores$R_Squared_k <- NA
- interaction_scores$Sum_z_Score_k <- NA
+ interaction_scores$r_squared_k <- NA
+ interaction_scores$sum_z_score_k <- NA
interaction_scores$avg_zscore_k <- NA
- interaction_scores$Raw_Shift_r <- NA
+ interaction_scores$raw_shift_r <- NA
interaction_scores$z_shift_r <- NA
- interaction_scores$lm_Score_r <- NA
+ interaction_scores$lm_score_r <- NA
interaction_scores$z_lm_r <- NA
- interaction_scores$R_Squared_r <- NA
- interaction_scores$Sum_z_Score_r <- NA
+ interaction_scores$r_squared_r <- NA
+ interaction_scores$sum_z_score_r <- NA
interaction_scores$avg_zscore_r <- NA
- interaction_scores$Raw_Shift_auc <- NA
+ interaction_scores$raw_shift_auc <- NA
interaction_scores$z_shift_auc <- NA
- interaction_scores$lm_Score_auc <- NA
+ interaction_scores$lm_score_auc <- NA
interaction_scores$z_lm_auc <- NA
- interaction_scores$R_Squared_auc <- NA
- interaction_scores$Sum_z_Score_auc <- NA
+ interaction_scores$r_squared_auc <- NA
+ interaction_scores$sum_z_score_auc <- NA
interaction_scores$avg_zscore_auc <- NA
interaction_scores$NG <- NA
interaction_scores$DB <- NA
@@ -1572,17 +1562,17 @@ for (s in background_strains) {
median_l = median(l, na.rm = TRUE),
sd_l = sd(l, na.rm = TRUE),
se_l = sd_l / sqrt(N - 1),
- mean_k = mean(k, na.rm = TRUE),
- median_k = median(k, na.rm = TRUE),
- sd_k = sd(k, na.rm = TRUE),
+ mean_k = mean(K, na.rm = TRUE),
+ median_k = median(K, na.rm = TRUE),
+ sd_k = sd(K, na.rm = TRUE),
se_k = sd_k / sqrt(N - 1),
mean_r = mean(r, na.rm = TRUE),
median_r = median(r, na.rm = TRUE),
sd_r = sd(r, na.rm = TRUE),
se_r = sd_r / sqrt(N - 1),
- mean_auc = mean(auc, na.rm = TRUE),
- median_auc = median(auc, na.rm = TRUE),
- sd_auc = sd(auc, na.rm = TRUE),
+ mean_auc = mean(AUC, na.rm = TRUE),
+ median_auc = median(AUC, na.rm = TRUE),
+ sd_auc = sd(AUC, na.rm = TRUE),
se_auc = sd_auc / sqrt(N - 1),
NG = sum(NG, na.rm = TRUE),
DB = sum(DB, na.rm = TRUE),
@@ -1595,23 +1585,23 @@ for (s in background_strains) {
# if L is 0, keep the shift at 0 and for other drug concs calculate delta Ls with no shift
# otherwise calculate shift at no drug conc
if (is.na(x_stats_interaction$mean_l[1]) || x_stats_interaction$mean_l[1] == 0) {
- x_stats_interaction$Raw_Shift_l <- 0
- x_stats_interaction$Raw_Shift_k <- 0
- x_stats_interaction$Raw_Shift_r <- 0
- x_stats_interaction$Raw_Shift_auc <- 0
+ x_stats_interaction$raw_shift_l <- 0
+ x_stats_interaction$raw_shift_k <- 0
+ x_stats_interaction$raw_shift_r <- 0
+ x_stats_interaction$raw_shift_auc <- 0
x_stats_interaction$z_shift_l <- 0
x_stats_interaction$z_shift_k <- 0
x_stats_interaction$z_shift_r <- 0
x_stats_interaction$z_shift_auc <- 0
} else {
- x_stats_interaction$Raw_Shift_l <- x_stats_interaction$mean_l[1] - background_l
- x_stats_interaction$Raw_Shift_k <- x_stats_interaction$mean_k[1] - background_k
- x_stats_interaction$Raw_Shift_r <- x_stats_interaction$mean_r[1] - background_r
- x_stats_interaction$Raw_Shift_auc <- x_stats_interaction$mean_auc[1] - background_auc
- x_stats_interaction$z_shift_l <- x_stats_interaction$Raw_Shift_l[1] / x_stats_by_l$sd[1]
- x_stats_interaction$z_shift_k <- x_stats_interaction$Raw_Shift_k[1] / x_stats_by_k$sd[1]
- x_stats_interaction$z_shift_r <- x_stats_interaction$Raw_Shift_r[1] / x_stats_by_r$sd[1]
- x_stats_interaction$z_shift_auc <- x_stats_interaction$Raw_Shift_auc[1] / x_stats_by_auc$sd[1]
+ x_stats_interaction$raw_shift_l <- x_stats_interaction$mean_l[1] - background_l
+ x_stats_interaction$raw_shift_k <- x_stats_interaction$mean_k[1] - background_k
+ x_stats_interaction$raw_shift_r <- x_stats_interaction$mean_r[1] - background_r
+ x_stats_interaction$raw_shift_auc <- x_stats_interaction$mean_auc[1] - background_auc
+ x_stats_interaction$z_shift_l <- x_stats_interaction$raw_shift_l[1] / x_stats_by_l$sd[1]
+ x_stats_interaction$z_shift_k <- x_stats_interaction$raw_shift_k[1] / x_stats_by_k$sd[1]
+ x_stats_interaction$z_shift_r <- x_stats_interaction$raw_shift_r[1] / x_stats_by_r$sd[1]
+ x_stats_interaction$z_shift_auc <- x_stats_interaction$raw_shift_auc[1] / x_stats_by_auc$sd[1]
}
# Get WT vals
@@ -1630,10 +1620,10 @@ for (s in background_strains) {
if (x_stats_interaction$mean_l[1] != 0 && !is.na(x_stats_interaction$mean_l[1])) {
# Calculate expected values
- x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$Raw_Shift_l
- x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$Raw_Shift_k
- x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$Raw_Shift_r
- x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$Raw_Shift_auc
+ x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$raw_shift_l
+ x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$raw_shift_k
+ x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$raw_shift_r
+ x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$raw_shift_auc
# Calculate normalized delta values
x_stats_interaction$delta_l <- x_stats_interaction$mean_l - x_stats_interaction$Exp_l
@@ -1696,59 +1686,59 @@ for (s in background_strains) {
as.character(x_gene_sel$OrfRep[1])
interaction_scores$Gene[interaction_scores$OrfRep == gene_sel] <-
as.character(x_gene_sel$Gene[1])
- interaction_scores$Raw_Shift_l[interaction_scores$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_l[1]
+ interaction_scores$raw_shift_l[interaction_scores$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_l[1]
interaction_scores$z_shift_l[interaction_scores$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_l[1]
- interaction_scores$lm_Score_l[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$lm_score_l[interaction_scores$OrfRep == gene_sel] <-
gene_interaction_l
interaction_scores$z_lm_l[interaction_scores$OrfRep == gene_sel] <-
(gene_interaction_l - lm_mean_l) / lm_sd_l
- interaction_scores$R_Squared_l[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$r_squared_l[interaction_scores$OrfRep == gene_sel] <-
r_squared_l
- interaction_scores$Sum_z_Score_l[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$sum_z_score_l[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_l, na.rm = TRUE)
interaction_scores$avg_zscore_l[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_l, na.rm = TRUE) / (num_non_removed_conc)
- interaction_scores$Raw_Shift_k[interaction_scores$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_k[1]
+ interaction_scores$raw_shift_k[interaction_scores$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_k[1]
interaction_scores$z_shift_k[interaction_scores$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_k[1]
- interaction_scores$lm_Score_k[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$lm_score_k[interaction_scores$OrfRep == gene_sel] <-
gene_interaction_k
interaction_scores$z_lm_k[interaction_scores$OrfRep == gene_sel] <-
(gene_interaction_k - lm_mean_k) / lm_sd_k
- interaction_scores$R_Squared_k[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$r_squared_k[interaction_scores$OrfRep == gene_sel] <-
r_squared_k
- interaction_scores$Sum_z_Score_k[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$sum_z_score_k[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_k, na.rm = TRUE)
interaction_scores$avg_zscore_k[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_k, na.rm = TRUE) / (num_non_removed_conc)
- interaction_scores$Raw_Shift_r[interaction_scores$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_r[1]
+ interaction_scores$raw_shift_r[interaction_scores$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_r[1]
interaction_scores$z_shift_r[interaction_scores$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_r[1]
- interaction_scores$lm_Score_r[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$lm_score_r[interaction_scores$OrfRep == gene_sel] <-
gene_interaction_r
interaction_scores$z_lm_r[interaction_scores$OrfRep == gene_sel] <-
(gene_interaction_r - lm_mean_r) / lm_sd_r
- interaction_scores$R_Squared_r[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$r_squared_r[interaction_scores$OrfRep == gene_sel] <-
r_squared_r
- interaction_scores$Sum_z_Score_r[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$sum_z_score_r[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_r, na.rm = TRUE)
interaction_scores$avg_zscore_r[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_r, na.rm = TRUE) / (total_conc_nums - 1)
- interaction_scores$Raw_Shift_auc[interaction_scores$OrfRep == gene_sel] <-
- x_stats_interaction$Raw_Shift_auc[1]
+ interaction_scores$raw_shift_auc[interaction_scores$OrfRep == gene_sel] <-
+ x_stats_interaction$raw_shift_auc[1]
interaction_scores$z_shift_auc[interaction_scores$OrfRep == gene_sel] <-
x_stats_interaction$z_shift_auc[1]
- interaction_scores$lm_Score_auc[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$lm_score_auc[interaction_scores$OrfRep == gene_sel] <-
gene_interaction_auc
interaction_scores$z_lm_auc[interaction_scores$OrfRep == gene_sel] <-
(gene_interaction_auc - lm_mean_auc) / lm_sd_auc
- interaction_scores$R_Squared_auc[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$r_squared_auc[interaction_scores$OrfRep == gene_sel] <-
r_squared_auc
- interaction_scores$Sum_z_Score_auc[interaction_scores$OrfRep == gene_sel] <-
+ interaction_scores$sum_z_score_auc[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_auc, na.rm = TRUE)
interaction_scores$avg_zscore_auc[interaction_scores$OrfRep == gene_sel] <-
sum(x_stats_interaction$zscore_auc, na.rm = TRUE) / (total_conc_nums - 1)
@@ -1757,10 +1747,10 @@ for (s in background_strains) {
if (x_stats_interaction$mean_l[1] == 0 || is.na(x_stats_interaction$mean_l[1])) {
# Calculate expected values
- x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$Raw_Shift_l
- x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$Raw_Shift_k
- x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$Raw_Shift_r
- x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$Raw_Shift_auc
+ x_stats_interaction$Exp_l <- x_stats_interaction$WT_l + x_stats_interaction$raw_shift_l
+ x_stats_interaction$Exp_k <- x_stats_interaction$WT_k + x_stats_interaction$raw_shift_k
+ x_stats_interaction$Exp_r <- x_stats_interaction$WT_r + x_stats_interaction$raw_shift_r
+ x_stats_interaction$Exp_auc <- x_stats_interaction$WT_auc + x_stats_interaction$raw_shift_auc
# Calculate normalized delta values
x_stats_interaction$delta_l <- x_stats_interaction$mean_l - x_stats_interaction$Exp_l
@@ -1810,43 +1800,43 @@ for (s in background_strains) {
r_squared_k <- NA
gene_interaction_r <- NA
r_squared_r <- NA
- x_stats_interaction$Raw_Shift_l <- NA
- x_stats_interaction$Raw_Shift_k <- NA
- x_stats_interaction$Raw_Shift_r <- NA
- x_stats_interaction$Raw_Shift_auc <- NA
+ x_stats_interaction$raw_shift_l <- NA
+ x_stats_interaction$raw_shift_k <- NA
+ x_stats_interaction$raw_shift_r <- NA
+ x_stats_interaction$raw_shift_auc <- NA
x_stats_interaction$z_shift_l <- NA
x_stats_interaction$z_shift_k <- NA
x_stats_interaction$z_shift_r <- NA
x_stats_interaction$z_shift_auc <- NA
interaction_scores$OrfRep[interaction_scores$OrfRep == gene_sel] <- as.character(x_gene_sel$OrfRep[1])
interaction_scores$Gene[interaction_scores$OrfRep == gene_sel] <- as.character(x_gene_sel$Gene[1])
- interaction_scores$Raw_Shift_l[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_l[1]
+ interaction_scores$raw_shift_l[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_l[1]
interaction_scores$z_shift_l[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$z_shift_l[1]
- interaction_scores$lm_Score_l[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$lm_score_l[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$z_lm_l[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$R_Squared_l[interaction_scores$OrfRep == gene_sel] <- r_squared_l
- interaction_scores$Sum_z_Score_l[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$r_squared_l[interaction_scores$OrfRep == gene_sel] <- r_squared_l
+ interaction_scores$sum_z_score_l[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$avg_zscore_l[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$Raw_Shift_k[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_k[1]
+ interaction_scores$raw_shift_k[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_k[1]
interaction_scores$z_shift_k[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$z_shift_k[1]
- interaction_scores$lm_Score_k[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$lm_score_k[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$z_lm_k[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$R_Squared_k[interaction_scores$OrfRep == gene_sel] <- r_squared_k
- interaction_scores$Sum_z_Score_k[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$r_squared_k[interaction_scores$OrfRep == gene_sel] <- r_squared_k
+ interaction_scores$sum_z_score_k[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$avg_zscore_k[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$Raw_Shift_r[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_r[1]
+ interaction_scores$raw_shift_r[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_r[1]
interaction_scores$z_shift_r[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$z_shift_r[1]
- interaction_scores$lm_Score_r[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$lm_score_r[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$z_lm_r[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$R_Squared_r[interaction_scores$OrfRep == gene_sel] <- r_squared_r
- interaction_scores$Sum_z_Score_r[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$r_squared_r[interaction_scores$OrfRep == gene_sel] <- r_squared_r
+ interaction_scores$sum_z_score_r[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$avg_zscore_r[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$Raw_Shift_auc[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$Raw_Shift_auc[1]
+ interaction_scores$raw_shift_auc[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$raw_shift_auc[1]
interaction_scores$z_shift_auc[interaction_scores$OrfRep == gene_sel] <- x_stats_interaction$z_shift_auc[1]
- interaction_scores$lm_Score_auc[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$lm_score_auc[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$z_lm_auc[interaction_scores$OrfRep == gene_sel] <- NA
- interaction_scores$R_Squared_auc[interaction_scores$OrfRep == gene_sel] <- r_squared_auc
- interaction_scores$Sum_z_Score_auc[interaction_scores$OrfRep == gene_sel] <- NA
+ interaction_scores$r_squared_auc[interaction_scores$OrfRep == gene_sel] <- r_squared_auc
+ interaction_scores$sum_z_score_auc[interaction_scores$OrfRep == gene_sel] <- NA
interaction_scores$avg_zscore_auc[interaction_scores$OrfRep == gene_sel] <- NA
}
@@ -2093,27 +2083,28 @@ for (s in background_strains) {
max_l = max(l, na.rm = TRUE),
min_l = min(l, na.rm = TRUE),
sd_l = sd(l, na.rm = TRUE),
- mean_k = mean(k, na.rm = TRUE),
- median_k = median(k, na.rm = TRUE),
- max_k = max(k, na.rm = TRUE),
- min_k = min(k, na.rm = TRUE),
- sd_k = sd(k, na.rm = TRUE),
+ mean_k = mean(K, na.rm = TRUE),
+ median_k = median(K, na.rm = TRUE),
+ max_k = max(K, na.rm = TRUE),
+ min_k = min(K, na.rm = TRUE),
+ sd_k = sd(K, na.rm = TRUE),
mean_r = mean(r, na.rm = TRUE),
median_r = median(r, na.rm = TRUE),
max_r = max(r, na.rm = TRUE),
min_r = min(r, na.rm = TRUE),
sd_r = sd(r, na.rm = TRUE),
- mean_auc = mean(auc, na.rm = TRUE),
- median_auc = median(auc, na.rm = TRUE),
- max_auc = max(auc, na.rm = TRUE),
- min_auc = min(auc, na.rm = TRUE),
- sd_auc = sd(auc, na.rm = TRUE),
+ mean_auc = mean(AUC, na.rm = TRUE),
+ median_auc = median(AUC, na.rm = TRUE),
+ max_auc = max(AUC, na.rm = TRUE),
+ min_auc = min(AUC, na.rm = TRUE),
+ sd_auc = sd(AUC, na.rm = TRUE),
NG = sum(NG, na.rm = TRUE),
DB = sum(DB, na.rm = TRUE),
SM = sum(SM, na.rm = TRUE)
)
- l_stats <- ggplot(df2_rf, aes(conc_num_factor, l)) + geom_point(position = "jitter", size = 1) +
+ l_stats <- ggplot(df2_rf, aes(conc_num_factor, l)) +
+ geom_point(position = "jitter", size = 1) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
@@ -2123,9 +2114,9 @@ for (s in background_strains) {
scale_x_continuous(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for L with SD", sep = " ")) + coord_cartesian(ylim = c(0, 160)) +
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for L with SD", sep = " ")) +
+ coord_cartesian(ylim = c(0, 160)) +
annotate("text", x = -0.25, y = 10, label = "NG") +
annotate("text", x = -0.25, y = 5, label = "DB") +
annotate("text", x = -0.25, y = 0, label = "SM") +
@@ -2134,87 +2125,88 @@ for (s in background_strains) {
annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 0, label = x_stats_df2_rf$SM) +
theme_publication()
- k_stats <- ggplot(df2_rf, aes(conc_num_factor, k)) + geom_point(position = "jitter", size = 1) +
+ k_stats <- ggplot(df2_rf, aes(conc_num_factor, K)) +
+ geom_point(position = "jitter", size = 1) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
geom = "errorbar", color = "red") +
- stat_summary(fun = mean, geom = "point", color = "red") +
- scale_x_continuous(
- name = unique(df$Drug[1]),
- breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for K with SD", sep = " ")) + coord_cartesian(ylim = c(-20, 160)) +
- annotate("text", x = -0.25, y = -5, label = "NG") +
- annotate("text", x = -0.25, y = -12.5, label = "DB") +
- annotate("text", x = -0.25, y = -20, label = "SM") +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = -5, label = x_stats_df2_rf$NG) +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = -12.5, label = x_stats_df2_rf$DB) +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = -20, label = x_stats_df2_rf$SM) +
- theme_publication()
+ stat_summary(fun = mean, geom = "point", color = "red") +
+ scale_x_continuous(
+ name = unique(df$Drug[1]),
+ breaks = unique(df2_rf$conc_num_factor),
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for K with SD", sep = " ")) +
+ coord_cartesian(ylim = c(-20, 160)) +
+ annotate("text", x = -0.25, y = -5, label = "NG") +
+ annotate("text", x = -0.25, y = -12.5, label = "DB") +
+ annotate("text", x = -0.25, y = -20, label = "SM") +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = -5, label = x_stats_df2_rf$NG) +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = -12.5, label = x_stats_df2_rf$DB) +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = -20, label = x_stats_df2_rf$SM) +
+ theme_publication()
- r_stats <- ggplot(df2_rf, aes(conc_num_factor, r)) + geom_point(position = "jitter", size = 1) +
+ r_stats <- ggplot(df2_rf, aes(conc_num_factor, r)) +
+ geom_point(position = "jitter", size = 1) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
geom = "errorbar", color = "red") +
- stat_summary(fun = mean, geom = "point", color = "red") +
- scale_x_continuous(
- name = unique(df$Drug[1]),
- breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for r with SD", sep = " ")) + coord_cartesian(ylim = c(0, 1)) +
- annotate("text", x = -0.25, y = .9, label = "NG") +
- annotate("text", x = -0.25, y = .8, label = "DB") +
- annotate("text", x = -0.25, y = .7, label = "SM") +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .9, label = x_stats_df2_rf$NG) +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .8, label = x_stats_df2_rf$DB) +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .7, label = x_stats_df2_rf$SM) +
- theme_publication()
+ stat_summary(fun = mean, geom = "point", color = "red") +
+ scale_x_continuous(
+ name = unique(df$Drug[1]),
+ breaks = unique(df2_rf$conc_num_factor),
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for r with SD", sep = " ")) +
+ coord_cartesian(ylim = c(0, 1)) +
+ annotate("text", x = -0.25, y = .9, label = "NG") +
+ annotate("text", x = -0.25, y = .8, label = "DB") +
+ annotate("text", x = -0.25, y = .7, label = "SM") +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .9, label = x_stats_df2_rf$NG) +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .8, label = x_stats_df2_rf$DB) +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .7, label = x_stats_df2_rf$SM) +
+ theme_publication()
- auc_stats <- ggplot(df2_rf, aes(conc_num_factor, auc)) + geom_point(position = "jitter", size = 1) +
+ auc_stats <- ggplot(df2_rf, aes(conc_num_factor, AUC)) +
+ geom_point(position = "jitter", size = 1) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
geom = "errorbar", color = "red") +
- stat_summary(fun = mean, geom = "point", color = "red") +
- scale_x_continuous(
- name = unique(df$Drug[1]),
- breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for auc with SD", sep = " ")) + coord_cartesian(ylim = c(0, 12500)) +
- annotate("text", x = -0.25, y = 11000, label = "NG") +
- annotate("text", x = -0.25, y = 10000, label = "DB") +
- annotate("text", x = -0.25, y = 9000, label = "SM") +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 11000, label = x_stats_df2_rf$NG) +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 10000, label = x_stats_df2_rf$DB) +
- annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 9000, label = x_stats_df2_rf$SM) +
- theme_publication()
+ stat_summary(fun = mean, geom = "point", color = "red") +
+ scale_x_continuous(
+ name = unique(df$Drug[1]),
+ breaks = unique(df2_rf$conc_num_factor),
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for AUC with SD", sep = " ")) +
+ coord_cartesian(ylim = c(0, 12500)) +
+ annotate("text", x = -0.25, y = 11000, label = "NG") +
+ annotate("text", x = -0.25, y = 10000, label = "DB") +
+ annotate("text", x = -0.25, y = 9000, label = "SM") +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 11000, label = x_stats_df2_rf$NG) +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 10000, label = x_stats_df2_rf$DB) +
+ annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 9000, label = x_stats_df2_rf$SM) +
+ theme_publication()
l_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), l)) +
geom_boxplot() +
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for L with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 160)) +
theme_publication()
- k_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), k)) +
+ k_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), K)) +
geom_boxplot() +
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for K with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 130)) +
theme_publication()
@@ -2224,20 +2216,18 @@ for (s in background_strains) {
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for r with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 1)) +
theme_publication()
- auc_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), auc)) +
+ auc_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), AUC)) +
geom_boxplot() +
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for auc with SD", sep = " ")) +
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for AUC with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 12500)) +
theme_publication()
@@ -2307,7 +2297,7 @@ for (s in background_strains) {
}
}
- dev.off()
+ invisible(dev.off())
pdf(file.path(out_dir, "rf_interaction_plots.pdf"), width = 16, height = 16, onefile = TRUE)
@@ -2320,21 +2310,21 @@ for (s in background_strains) {
max_l = max(l, na.rm = TRUE),
min_l = min(l, na.rm = TRUE),
sd_l = sd(l, na.rm = TRUE),
- mean_k = mean(k, na.rm = TRUE),
- median_k = median(k, na.rm = TRUE),
- max_k = max(k, na.rm = TRUE),
- min_k = min(k, na.rm = TRUE),
- sd_k = sd(k, na.rm = TRUE),
+ mean_k = mean(K, na.rm = TRUE),
+ median_k = median(K, na.rm = TRUE),
+ max_k = max(K, na.rm = TRUE),
+ min_k = min(K, na.rm = TRUE),
+ sd_k = sd(K, na.rm = TRUE),
mean_r = mean(r, na.rm = TRUE),
median_r = median(r, na.rm = TRUE),
max_r = max(r, na.rm = TRUE),
min_r = min(r, na.rm = TRUE),
sd_r = sd(r, na.rm = TRUE),
- mean_auc = mean(auc, na.rm = TRUE),
- median_auc = median(auc, na.rm = TRUE),
- max_auc = max(auc, na.rm = TRUE),
- min_auc = min(auc, na.rm = TRUE),
- sd_auc = sd(auc, na.rm = TRUE),
+ mean_auc = mean(AUC, na.rm = TRUE),
+ median_auc = median(AUC, na.rm = TRUE),
+ max_auc = max(AUC, na.rm = TRUE),
+ min_auc = min(AUC, na.rm = TRUE),
+ sd_auc = sd(AUC, na.rm = TRUE),
NG = sum(NG, na.rm = TRUE),
DB = sum(DB, na.rm = TRUE),
SM = sum(SM, na.rm = TRUE)
@@ -2346,14 +2336,12 @@ for (s in background_strains) {
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar", color = "red"
- ) +
+ geom = "errorbar", color = "red") +
stat_summary(fun = mean, geom = "point", color = "red") +
scale_x_continuous(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for L with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 130)) +
annotate("text", x = -0.25, y = 10, label = "NG") +
@@ -2364,20 +2352,18 @@ for (s in background_strains) {
annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = 0, label = x_stats_df2_rf$SM) +
theme_publication()
- k_stats <- ggplot(df2_rf, aes(conc_num_factor, k)) +
+ k_stats <- ggplot(df2_rf, aes(conc_num_factor, K)) +
geom_point(position = "jitter", size = 1) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar", color = "red"
- ) +
+ geom = "errorbar", color = "red") +
stat_summary(fun = mean, geom = "point", color = "red") +
scale_x_continuous(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for K with SD", sep = " ")) +
coord_cartesian(ylim = c(-20, 160)) +
annotate("text", x = -0.25, y = -5, label = "NG") +
@@ -2394,14 +2380,12 @@ for (s in background_strains) {
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar", color = "red"
- ) +
+ geom = "errorbar", color = "red") +
stat_summary(fun = mean, geom = "point", color = "red") +
scale_x_continuous(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for r with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 1)) +
annotate("text", x = -0.25, y = .9, label = "NG") +
@@ -2412,21 +2396,19 @@ for (s in background_strains) {
annotate("text", x = c(unique(df2_rf$conc_num_factor)), y = .7, label = x_stats_df2_rf$SM) +
theme_publication()
- auc_stats <- ggplot(df2_rf, aes(conc_num_factor, auc)) +
+ auc_stats <- ggplot(df2_rf, aes(conc_num_factor, AUC)) +
geom_point(position = "jitter", size = 1) +
stat_summary(
fun = mean,
fun.min = function(x) mean(x) - sd(x),
fun.max = function(x) mean(x) + sd(x),
- geom = "errorbar", color = "red"
- ) +
+ geom = "errorbar", color = "red") +
stat_summary(fun = mean, geom = "point", color = "red") +
scale_x_continuous(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for auc with SD", sep = " ")) +
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for AUC with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 12500)) +
annotate("text", x = -0.25, y = 11000, label = "NG") +
annotate("text", x = -0.25, y = 10000, label = "DB") +
@@ -2441,19 +2423,17 @@ for (s in background_strains) {
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for L with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 130)) +
theme_publication()
- k_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), k)) +
+ k_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), K)) +
geom_boxplot() +
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for K with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 160)) +
theme_publication()
@@ -2463,20 +2443,19 @@ for (s in background_strains) {
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
+ labels = as.character(unique(df2_rf$conc_num))) +
ggtitle(paste(s, "Scatter RF for r with SD", sep = " ")) +
coord_cartesian(ylim = c(0, 1)) +
theme_publication()
- auc_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), auc)) +
+ auc_stats_box <- ggplot(df2_rf, aes(as.factor(conc_num_factor), AUC)) +
geom_boxplot() +
scale_x_discrete(
name = unique(df$Drug[1]),
breaks = unique(df2_rf$conc_num_factor),
- labels = as.character(unique(df2_rf$conc_num))
- ) +
- ggtitle(paste(s, "Scatter RF for auc with SD", sep = " ")) + coord_cartesian(ylim = c(12000, 0)) +
+ labels = as.character(unique(df2_rf$conc_num))) +
+ ggtitle(paste(s, "Scatter RF for AUC with SD", sep = " ")) +
+ coord_cartesian(ylim = c(12000, 0)) +
theme_publication()
grid.arrange(l_stats, k_stats, r_stats, auc_stats, ncol = 2, nrow = 2)
@@ -2554,7 +2533,7 @@ for (s in background_strains) {
}
}
- dev.off()
+ invisible(dev.off())
# Print rank plots for L and k gene interactions
interaction_scores_adjust_missing <- interaction_scores
@@ -2590,75 +2569,138 @@ for (s in background_strains) {
# Rank plots
rank_l_1sd <- ggplot(interaction_scores_adjust_missing, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l >= 1, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l <= -1, ])[1])) +
theme_publication()
rank_l_2sd <- ggplot(interaction_scores_adjust_missing, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l >= 2, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10, label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l <= -2, ])[1])) +
theme_publication()
rank_l_3sd <- ggplot(interaction_scores_adjust_missing, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l >= 3, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_l <= -3, ])[1])) +
theme_publication()
rank_k_1sd <- ggplot(interaction_scores_adjust_missing, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k <= -1, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k >= 1, ])[1])) +
theme_publication()
rank_k_2sd <- ggplot(interaction_scores_adjust_missing, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k <= -2, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k >= 2, ])[1])) +
theme_publication()
rank_k_3sd <- ggplot(interaction_scores_adjust_missing, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k <= -3, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$avg_zscore_k >= 3, ])[1])) +
theme_publication()
rank_l_1sd_notext <- ggplot(interaction_scores_adjust_missing, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
@@ -2670,30 +2712,46 @@ for (s in background_strains) {
theme_publication()
rank_l_3sd_notext <- ggplot(interaction_scores_adjust_missing, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_1sd_notext <- ggplot(interaction_scores_adjust_missing, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_2sd_notext <- ggplot(interaction_scores_adjust_missing, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_3sd_notext <- ggplot(interaction_scores_adjust_missing, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
@@ -2721,113 +2779,197 @@ for (s in background_strains) {
nrow = 2
)
- dev.off()
+ invisible(dev.off())
rank_l_1sd_lm <- ggplot(interaction_scores_adjust_missing, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l >= 1, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l <= -1, ])[1])) +
theme_publication()
rank_l_2sd_lm <- ggplot(interaction_scores_adjust_missing, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l >= 2, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l <= -2, ])[1])) +
theme_publication()
rank_l_3sd_lm <- ggplot(interaction_scores_adjust_missing, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l >= 3, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_l <= -3, ])[1])) +
theme_publication()
rank_k_1sd_lm <- ggplot(interaction_scores_adjust_missing, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k <= -1, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k >= 1, ])[1])) +
theme_publication()
rank_k_2sd_lm <- ggplot(interaction_scores_adjust_missing, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k <= -2, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k >= 2, ])[1])) +
theme_publication()
rank_k_3sd_lm <- ggplot(interaction_scores_adjust_missing, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = -10, label = paste("Deletion Enhancers =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k <= -3, ])[1])) +
- annotate("text", x = (dim(interaction_scores_adjust_missing)[1] / 2), y = 10, label = paste("Deletion Suppressors =",
- dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(interaction_scores_adjust_missing)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(interaction_scores_adjust_missing[interaction_scores_adjust_missing$z_lm_k >= 3, ])[1])) +
theme_publication()
rank_l_1sd_notext_lm <- ggplot(interaction_scores_adjust_missing, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_l_2sd_notext_lm <- ggplot(interaction_scores_adjust_missing, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_l_3sd_notext_lm <- ggplot(interaction_scores_adjust_missing, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_1sd_notext_lm <- ggplot(interaction_scores_adjust_missing, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_2sd_notext_lm <- ggplot(interaction_scores_adjust_missing, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_3sd_notext_lm <- ggplot(interaction_scores_adjust_missing, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
@@ -2853,7 +2995,7 @@ for (s in background_strains) {
ncol = 3, nrow = 2
)
- dev.off()
+ invisible(dev.off())
df_na_rm <- interaction_scores[!is.na(interaction_scores$z_lm_l) | !is.na(interaction_scores$avg_zscore_l), ]
@@ -2887,37 +3029,67 @@ for (s in background_strains) {
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Avg Zscore vs lm L") +
- geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm$r.squared, 2))) + theme_publication_legend_right())
+ geom_rect(
+ aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
+ color = "grey20",
+ size = 0.25,
+ alpha = 0.1,
+ inherit.aes = FALSE,
+ fill = NA) +
+ annotate("text",
+ x = 0, y = 0, label = paste("R-squared = ", round(l_lm$r.squared, 2))) +
+ theme_publication_legend_right()
+ )
print(ggplot(df_na_rm, aes(avg_zscore_k, z_lm_k)) +
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Avg Zscore vs lm K") +
- geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(k_lm$r.squared, 2))) + theme_publication_legend_right())
+ geom_rect(
+ aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
+ color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
+ annotate("text",
+ x = 0, y = 0, label = paste("R-squared = ", round(k_lm$r.squared, 2))) +
+ theme_publication_legend_right()
+ )
print(ggplot(df_na_rm, aes(avg_zscore_r, z_lm_r)) +
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Avg Zscore vs lm r") +
- geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(r_lm$r.squared, 2))) + theme_publication_legend_right())
+ geom_rect(
+ aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
+ color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
+ annotate("text",
+ x = 0, y = 0, label = paste("R-squared = ", round(r_lm$r.squared, 2))) +
+ theme_publication_legend_right()
+ )
print(ggplot(df_na_rm, aes(avg_zscore_auc, z_lm_auc)) +
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Avg Zscore vs lm AUC") +
- geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(auc_lm$r.squared, 2))) + theme_publication_legend_right())
+ geom_rect(
+ aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
+ color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
+ annotate("text",
+ x = 0, y = 0, label = paste("R-squared = ", round(auc_lm$r.squared, 2))) +
+ theme_publication_legend_right()
+ )
- dev.off()
+ invisible(dev.off())
- lm_v_zscore_l <- ggplot(df_na_rm, aes(avg_zscore_l, z_lm_l, ORF = OrfRep, Gene = Gene, NG = NG, SM = SM, DB = DB)) +
+ lm_v_zscore_l <-
+ ggplot(df_na_rm, aes(avg_zscore_l, z_lm_l, ORF = OrfRep, Gene = Gene, NG = NG, SM = SM, DB = DB)) +
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) + ggtitle("Avg Zscore vs lm L") +
- geom_rect(aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2), color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA) +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm$r.squared, 2))) + theme_publication_legend_right()
+ geom_rect(
+ aes(xmin = -2, xmax = 2, ymin = -2, ymax = 2),
+ color = "grey20", size = 0.25, alpha = 0.1, inherit.aes = FALSE, fill = NA
+ ) +
+ annotate("text",
+ x = 0, y = 0, label = paste("R-squared = ", round(l_lm$r.squared, 2))) +
+ theme_publication_legend_right()
pgg <- ggplotly(lm_v_zscore_l)
plotly_path <- file.path(out_dir, "avg_zscore_vs_lm_na_rm.html")
@@ -2950,7 +3122,10 @@ for (s in background_strains) {
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Rank Avg Zscore vs lm L") +
- annotate("text", x = num_genes_na_rm2, y = num_genes_na_rm2, label = paste("R-squared = ", round(l_lm2$r.squared, 2))) +
+ annotate("text",
+ x = num_genes_na_rm2,
+ y = num_genes_na_rm2,
+ label = paste("R-squared = ", round(l_lm2$r.squared, 2))) +
theme_publication_legend_right()
)
@@ -2959,7 +3134,10 @@ for (s in background_strains) {
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Rank Avg Zscore vs lm K") +
- annotate("text", x = num_genes_na_rm2, y = num_genes_na_rm2, label = paste("R-squared = ", round(k_lm2$r.squared, 2))) +
+ annotate("text",
+ x = num_genes_na_rm2,
+ y = num_genes_na_rm2,
+ label = paste("R-squared = ", round(k_lm2$r.squared, 2))) +
theme_publication_legend_right()
)
@@ -2968,7 +3146,10 @@ for (s in background_strains) {
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Rank Avg Zscore vs lm r") +
- annotate("text", x = num_genes_na_rm2, y = num_genes_na_rm2, label = paste("R-squared = ", round(r_lm2$r.squared, 2))) +
+ annotate("text",
+ x = num_genes_na_rm2,
+ y = num_genes_na_rm2,
+ label = paste("R-squared = ", round(r_lm2$r.squared, 2))) +
theme_publication_legend_right()
)
@@ -2977,105 +3158,204 @@ for (s in background_strains) {
geom_point(aes(color = Overlap), shape = 3) +
geom_smooth(method = "lm", color = 1) +
ggtitle("Rank of Avg Zscore vs lm AUC") +
- annotate("text", x = num_genes_na_rm2, y = num_genes_na_rm2, label = paste("R-squared = ", round(auc_lm2$r.squared, 2))) +
+ annotate("text",
+ x = num_genes_na_rm2,
+ y = num_genes_na_rm2,
+ label = paste("R-squared = ", round(auc_lm2$r.squared, 2))) +
theme_publication_legend_right()
)
- dev.off()
+ invisible(dev.off())
rank_l_1sd <- ggplot(df_na_rm, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$avg_zscore_l >= 1, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$avg_zscore_l <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$avg_zscore_l >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$avg_zscore_l <= -1, ])[1])) +
theme_publication()
rank_l_2sd <- ggplot(df_na_rm, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$avg_zscore_l >= 2, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$avg_zscore_l <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$avg_zscore_l >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$avg_zscore_l <= -2, ])[1])) +
theme_publication()
rank_l_3sd <- ggplot(df_na_rm, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$avg_zscore_l >= 3, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$avg_zscore_l <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$avg_zscore_l >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$avg_zscore_l <= -3, ])[1])) +
theme_publication()
rank_k_1sd <- ggplot(df_na_rm, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$avg_zscore_k <= -1, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$avg_zscore_k >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$avg_zscore_k <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$avg_zscore_k >= 1, ])[1])) +
theme_publication()
rank_k_2sd <- ggplot(df_na_rm, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$avg_zscore_k <= -2, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$avg_zscore_k >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$avg_zscore_k <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$avg_zscore_k >= 2, ])[1])) +
theme_publication()
rank_k_3sd <- ggplot(df_na_rm, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$avg_zscore_k <= -3, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$avg_zscore_k >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$avg_zscore_k <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$avg_zscore_k >= 3, ])[1])) +
theme_publication()
rank_l_1sd_notext <- ggplot(df_na_rm, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_l_2sd_notext <- ggplot(df_na_rm, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_l_3sd_notext <- ggplot(df_na_rm, aes(l_rank, avg_zscore_l)) +
- ggtitle("Average Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Avg Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_1sd_notext <- ggplot(df_na_rm, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_2sd_notext <- ggplot(df_na_rm, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_3sd_notext <- ggplot(df_na_rm, aes(k_rank, avg_zscore_k)) +
- ggtitle("Average Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Avg Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Average Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Avg Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
@@ -3101,101 +3381,195 @@ for (s in background_strains) {
ncol = 3, nrow = 2
)
- dev.off()
+ invisible(dev.off())
rank_l_1sd_lm <- ggplot(df_na_rm, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$z_lm_l >= 1, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$z_lm_l <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10, label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$z_lm_l >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$z_lm_l <= -1, ])[1])) +
theme_publication()
rank_l_2sd_lm <- ggplot(df_na_rm, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$z_lm_l >= 2, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$z_lm_l <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$z_lm_l >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$z_lm_l <= -2, ])[1])) +
theme_publication()
rank_l_3sd_lm <- ggplot(df_na_rm, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$z_lm_l >= 3, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$z_lm_l <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$z_lm_l >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$z_lm_l <= -3, ])[1])) +
theme_publication()
rank_k_1sd_lm <- ggplot(df_na_rm, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$z_lm_k <= -1, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$z_lm_k >= 1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$z_lm_k <= -1, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$z_lm_k >= 1, ])[1])) +
theme_publication()
rank_k_2sd_lm <- ggplot(df_na_rm, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$z_lm_k <= -2, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$z_lm_k >= 2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10,
+ label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$z_lm_k <= -2, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$z_lm_k >= 2, ])[1])) +
theme_publication()
rank_k_3sd_lm <- ggplot(df_na_rm, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = -10, label = paste("Deletion Enhancers =", dim(df_na_rm[df_na_rm$z_lm_k <= -3, ])[1])) +
- annotate("text", x = (dim(df_na_rm)[1] / 2), y = 10, label = paste("Deletion Suppressors =", dim(df_na_rm[df_na_rm$z_lm_k >= 3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = -10, label = paste("Deletion Enhancers =",
+ dim(df_na_rm[df_na_rm$z_lm_k <= -3, ])[1])) +
+ annotate("text",
+ x = (dim(df_na_rm)[1] / 2),
+ y = 10,
+ label = paste("Deletion Suppressors =",
+ dim(df_na_rm[df_na_rm$z_lm_k >= 3, ])[1])) +
theme_publication()
rank_l_1sd_notext_lm <- ggplot(df_na_rm, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 1SD") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_l_2sd_notext_lm <- ggplot(df_na_rm, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 2sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_l_3sd_notext_lm <- ggplot(df_na_rm, aes(l_rank_lm, z_lm_l)) +
- ggtitle("Interaction Z score vs. Rank for L above 3sd") + xlab("Rank") + ylab("Int Z score L") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for L above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score L") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_1sd_notext_lm <- ggplot(df_na_rm, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 1SD") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 1SD") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (1), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-1), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-1, 1)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_2sd_notext_lm <- ggplot(df_na_rm, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 2sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 2sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (2), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-2), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-2, 2)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
rank_k_3sd_notext_lm <- ggplot(df_na_rm, aes(k_rank_lm, z_lm_k)) +
- ggtitle("Interaction Z score vs. Rank for K above 3sd") + xlab("Rank") + ylab("Int Z score K") +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
- annotate("rect", xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
+ ggtitle("Interaction Z score vs. Rank for K above 3sd") +
+ xlab("Rank") +
+ ylab("Int Z score K") +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (3), ymax = Inf, fill = "#542788", alpha = 0.3) +
+ annotate("rect",
+ xmin = -Inf, xmax = Inf, ymin = (-3), ymax = -Inf, fill = "orange", alpha = 0.3) +
geom_hline(yintercept = c(-3, 3)) + geom_point(size = 0.1, shape = 3) +
theme_publication()
@@ -3221,7 +3595,7 @@ for (s in background_strains) {
ncol = 3, nrow = 2
)
- dev.off()
+ invisible(dev.off())
}
# Get the linear model info and the r-squared value for all CPPs in results 1 vs results 2
@@ -3246,7 +3620,10 @@ ggplot(df_na_rm, aes(z_lm_l, z_lm_k)) +
ggtitle("Interaction L vs. Interaction K") +
xlab("z-score L") +
ylab("z-score K") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_1$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_1$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3263,7 +3640,10 @@ ggplot(df_na_rm, aes(z_lm_l, z_lm_r)) +
ggtitle("Interaction L vs. Interaction r") +
xlab("z-score L") +
ylab("z-score r") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_2$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_2$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3280,7 +3660,10 @@ geom_smooth(method = "lm", color = "tomato3") +
ggtitle("Interaction L vs. Interaction AUC") +
xlab("z-score L") +
ylab("z-score AUC") +
-annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_3$r.squared, 3))) +
+annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_3$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3297,7 +3680,10 @@ ggplot(df_na_rm, aes(z_lm_k, z_lm_r)) +
ggtitle("Interaction K vs. Interaction r") +
xlab("z-score K") +
ylab("z-score r") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_4$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_4$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3314,7 +3700,10 @@ ggplot(df_na_rm, aes(z_lm_k, z_lm_auc)) +
ggtitle("Interaction K vs. Interaction AUC") +
xlab("z-score K") +
ylab("z-score AUC") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_5$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_5$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3331,7 +3720,10 @@ ggplot(df_na_rm, aes(z_lm_r, z_lm_auc)) +
ggtitle("Interaction r vs. Interaction AUC") +
xlab("z-score r") +
ylab("z-score AUC") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_6$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_6$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3349,7 +3741,10 @@ ggplot(df_na_rm, aes(z_lm_l, z_lm_k)) +
ggtitle("Interaction L vs. Interaction K") +
xlab("z-score L") +
ylab("z-score K") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_1$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_1$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3366,7 +3761,10 @@ ggplot(df_na_rm, aes(z_lm_l, z_lm_r)) +
ggtitle("Interaction L vs. Interaction r") +
xlab("z-score L") +
ylab("z-score r") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_2$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_2$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3383,7 +3781,10 @@ ggplot(df_na_rm, aes(z_lm_l, z_lm_auc)) +
ggtitle("Interaction L vs. Interaction AUC") +
xlab("z-score L") +
ylab("z-score AUC") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_3$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_3$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3400,7 +3801,10 @@ ggplot(df_na_rm, aes(z_lm_k, z_lm_r)) +
ggtitle("Interaction K vs. Interaction r") +
xlab("z-score K") +
ylab("z-score r") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_4$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_4$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3417,7 +3821,10 @@ ggplot(df_na_rm, aes(z_lm_k, z_lm_auc)) +
ggtitle("Interaction K vs. Interaction AUC") +
xlab("z-score K") +
ylab("z-score AUC") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_5$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_5$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3434,7 +3841,10 @@ ggplot(df_na_rm, aes(z_lm_r, z_lm_auc)) +
ggtitle("Interaction r vs. Interaction AUC") +
xlab("z-score r") +
ylab("z-score AUC") +
- annotate("text", x = 0, y = 0, label = paste("R-squared = ", round(l_lm_6$r.squared, 3))) +
+ annotate("text",
+ x = 0,
+ y = 0,
+ label = paste("R-squared = ", round(l_lm_6$r.squared, 3))) +
theme_publication_legend_right() +
theme(
panel.grid.major = element_blank(),
@@ -3445,7 +3855,7 @@ ggplot(df_na_rm, aes(z_lm_r, z_lm_auc)) +
axis.title.y = element_text(size = 18)
)
-dev.off()
+invisible(dev.off())
# write.csv(Labels, file.path("../Code/Parameters.csv"), row.names = FALSE)
-timestamp()
+# timestamp()
diff --git a/workflow/apps/r/joinInteractExps.R b/workflow/apps/r/joinInteractExps.R
index b8fd9d84..b724502a 100644
--- a/workflow/apps/r/joinInteractExps.R
+++ b/workflow/apps/r/joinInteractExps.R
@@ -55,8 +55,8 @@ print(length(input_files))
# Join the two files at a time as a function of how many inputFile
# list the larger file first ? in this example X2 has the larger number of genes
# If X1 has a larger number of genes, switch the order of X1 and X2
-if (length(input_files) == 1) {
- print("Only one experiment to compare, skipping join")
+if (length(input_files) < 2) {
+ print("Note enough Exps to compare, skipping join")
stop("Exiting script")
}
@@ -65,20 +65,17 @@ if (length(input_files) >= 2) {
X2 <- read.csv(file = input_files[2], stringsAsFactors = FALSE)
X <- join(X1, X2, by = "OrfRep")
OBH <- X[, order(colnames(X))] # OrderByHeader
- headSel <- select(OBH, contains("OrfRep"), matches("Gene"),
- contains("Z_lm_K"), contains("Z_Shift_K"), contains("Z_lm_L"), contains("Z_Shift_L"))
- headSel <- select(headSel, -"Gene.1") # remove "Gene.1 column
- headSel2 <- select(OBH, contains("OrfRep"), matches("Gene")) #Frame for interleaving Z_lm with Shift colums
- headSel2 <- select(headSel2, -"Gene.1") # remove "Gene.1 column #Frame for interleaving Z_lm with Shift colums
+ headers <- select(OBH, contains("OrfRep"), matches("Gene"),
+ contains("z_lm_k"), contains("z_shift_k"), contains("z_lm_l"), contains("z_shift_l"))
+ headSel <- select(headers, -"Gene.1") # remove "Gene.1 column
+ headSel2 <- select(OBH, contains("OrfRep"), matches("Gene")) # frame for interleaving Z_lm with Shift colums
+ headSel2 <- select(headSel2, -"Gene.1") # remove "Gene.1 column # frame for interleaving Z_lm with Shift colums
}
if (length(input_files) >= 3) {
X3 <- read.csv(file = input_files[3], stringsAsFactors = FALSE)
X <- join(X, X3, by = "OrfRep")
- OBH <- X[, order(colnames(X))] # OrderByHeader
- headSel <- select(OBH, contains("OrfRep"), matches("Gene"),
- contains("Z_lm_K"), contains("Z_Shift_K"), contains("Z_lm_L"), contains("Z_Shift_L"))
- headSel <- select(headSel, -"Gene.1", -"Gene.2")
+ headSel <- select(headers, -"Gene.1", -"Gene.2")
headSel2 <- select(OBH, contains("OrfRep"), matches("Gene"))
headSel2 <- select(headSel2, -"Gene.1", -"Gene.2")
}
@@ -86,16 +83,15 @@ if (length(input_files) >= 3) {
if (length(input_files) >= 4) {
X4 <- read.csv(file = input_files[4], stringsAsFactors = FALSE)
X <- join(X, X4, by = "OrfRep")
- OBH <- X[, order(colnames(X))] # OrderByHeader
- headSel <- select(OBH, contains("OrfRep"), matches("Gene"),
- contains("Z_lm_K"), contains("Z_Shift_K"), contains("Z_lm_L"), contains("Z_Shift_L"))
- headSel <- select(headSel, -"Gene.1", -"Gene.2", -"Gene.3")
+ headSel <- select(headers, -"Gene.1", -"Gene.2", -"Gene.3")
headSel2 <- select(OBH, contains("OrfRep"), matches("Gene"))
headSel2 <- select(headSel2, -"Gene.1", -"Gene.2", -"Gene.3")
}
+print(headers)
# headSel$contains("Z_Shift") %>% replace_na(0.001)
headers <- colnames(headSel)
+print(headers)
i <- 0
for (i in 1:length(headers)) {
if (grepl("Shift", headers[i])) {
@@ -107,8 +103,8 @@ for (i in 1:length(headers)) {
}
# 2SD option code to exclude Z_lm values less than 2 standard Deviations
-REMcRdy <- select(headSel, contains("OrfRep"), matches("Gene"), contains("Z_lm_"))
-shiftOnly <- select(headSel, contains("OrfRep"), matches("Gene"), contains("Z_Shift"))
+REMcRdy <- select(headSel, contains("OrfRep"), matches("Gene"), contains("z_lm_"))
+shiftOnly <- select(headSel, contains("OrfRep"), matches("Gene"), contains("z_shift"))
# Code to replace the numeric (.1 .2 .3) headers with experiment names from StudyInfo.txt
Labels <- read.csv(file = study_info, stringsAsFactors = FALSE, sep = ",")
diff --git a/workflow/qhtcp-workflow b/workflow/qhtcp-workflow
index a6d56811..ebab9f9d 100755
--- a/workflow/qhtcp-workflow
+++ b/workflow/qhtcp-workflow
@@ -348,14 +348,11 @@ backup() {
debug "Running: ${FUNCNAME[0]} $*"
for f in "$@"; do
[[ -e $f ]] || continue
- count=1
+ declare count=1
while [[ -e $f.bk.$count ]]; do
((count++))
done
- echo "Backing up $f to $f.bk.$count"
- debug "rsync -a $f $f.bk.$count"
- rsync -a "$f" "$f.bk.$count" &&
- rm -rf "$f"
+ execute mv "$f" "$f.bk.$count"
done
}
@@ -827,14 +824,14 @@ init_project() {
u)
echo "Updating project from template"
echo "Only files that are newer in the template will be overwritten"
- if rsync --archive --update "$QHTCP_TEMPLATE_DIR"/ "$QHTCP_RESULTS_DIR"; then
+ if execute rsync --archive --update "$QHTCP_TEMPLATE_DIR"/ "$QHTCP_RESULTS_DIR"; then
echo "Project updated with template"
fi
;;
b)
if backup "$QHTCP_RESULTS_DIR"; then
mkdir "$QHTCP_RESULTS_DIR"
- rsync --archive "$QHTCP_TEMPLATE_DIR"/ "$QHTCP_RESULTS_DIR"
+ execute rsync --archive "$QHTCP_TEMPLATE_DIR"/ "$QHTCP_RESULTS_DIR"
echo "Created new project at $QHTCP_RESULTS_DIR"
fi
;;
@@ -850,10 +847,8 @@ init_project() {
done
else
echo "Creating project results dir at $QHTCP_RESULTS_DIR"
- debug "mkdir $QHTCP_RESULTS_DIR"
- mkdir "$QHTCP_RESULTS_DIR"
- debug "rsync --archive $QHTCP_TEMPLATE_DIR/ $QHTCP_RESULTS_DIR"
- rsync --archive "$QHTCP_TEMPLATE_DIR"/ "$QHTCP_RESULTS_DIR"
+ execute mkdir "$QHTCP_RESULTS_DIR"
+ execute rsync --archive "$QHTCP_TEMPLATE_DIR"/ "$QHTCP_RESULTS_DIR"
fi
study_info
@@ -1279,8 +1274,6 @@ module qhtcp
#
# TODO
#
-# * Suggest renaming StudiesQHTCP to something like qhtcp qhtcp_output or output
-# * Move (hide) the study template somewhere else
# * StudiesArchive should be smarter:
# * Create a database with as much information as possible
# * Write a function that easily loads and parses databse into easy-to-use variables
@@ -1366,13 +1359,10 @@ qhtcp() {
# Run R interactions script on all studies
for study in "${STUDIES[@]}"; do
- read -r num sd dir <<< "$study"
- [[ -d $dir/zscores ]] ||
- execute mkdir "$dir/zscores"
- [[ -d $dir/zscores/qc ]] ||
- execute mkdir "$dir/zscores/qc"
- r_interactions "$num" "$sd"
+ read -r num sd _ <<< "$study"
+ r_interactions "$num" "$sd" & # run in parallel, catch with wait below
done \
+ && wait -n \
&& remc \
&& gtf \
&& gta
@@ -1750,8 +1740,9 @@ r_interactions() {
declare script="$APPS_DIR/r/interactions.R"
declare out_dir="${6:-"$QHTCP_RESULTS_DIR/Exp$1/zscores"}"
- [[ -d $out_dir ]] && backup "$out_dir"
- mkdir "$out_dir"
+ backup "$out_dir"
+ execute mkdir "$out_dir"
+ execute mkdir "$out_dir/qc"
execute "$RSCRIPT" "$script" \
"$1" \
@@ -1850,7 +1841,7 @@ wrapper java_extract
# @exitcode 1 if expected output file does not exist
java_extract() {
debug "Running: ${FUNCNAME[0]}"
- classpath="$APPS_DIR/java/javaExtract.jar"
+ classpath="$APPS_DIR/java/weka-clustering.jar"
output_file="${1:-$QHTCP_RESULTS_DIR}/REMcRdy_lm_only.csv-finalTable.csv"
@@ -2337,7 +2328,7 @@ main() {
parse_input "$@" # parse arguments with getopt
- # ((DEBUG)) && declare -p
+ ((DEBUG)) && declare -p
interactive_header "$@"
@@ -2347,8 +2338,8 @@ main() {
# fi
for i in "${!PROJECTS[@]}"; do
- if ! sanitize_pn "${PROJECTS[i]}"; then
- echo "Project name ${PROJECTS[i]} is invalid"
+ if ! sanitize_pn "${PROJECTS[$i]}"; then
+ echo "Project name ${PROJECTS[$i]} is invalid"
echo "Enter a replacement"
ask_pn && unset "PROJECTS[i]" && PROJECTS+=("${ADD_PROJECTS[@]}")
fi
@@ -2356,15 +2347,13 @@ main() {
# Exclude modules from --exclude
for i in "${!MODULES[@]}"; do
- [[ " ${EXCLUDE_MODULES[*]} " =~ [[:space:]]${MODULES[i]}[[:space:]] ]] && unset "MODULES[i]"
+ [[ " ${EXCLUDE_MODULES[*]} " =~ [[:space:]]${MODULES[i]}[[:space:]] ]] && unset "MODULES[$i]"
done
# Sanitize MODULES
for i in "${!MODULES[@]}"; do
if ! [[ " ${ALL_MODULES[*]} " =~ [[:space:]]${MODULES[i]}[[:space:]] ]]; then
echo "Module ${MODULES[$i]} not in the module list"
- echo "Available modules:"
- printf "%s\n" "${ALL_MODULES[@]}"
read -r -p "Enter replacement module name: " module
! [[ " ${ALL_MODULES[*]} " =~ [[:space:]]${module}[[:space:]] ]] || (echo "RTFM"; return 1)
MODULES[i]="$module"
@@ -2376,7 +2365,7 @@ main() {
for i in "${!WRAPPERS[@]}"; do
if ! [[ " ${ALL_WRAPPERS[*]} " =~ [[:space:]]${WRAPPERS[i]}[[:space:]] ]]; then
echo "Wrapper ${WRAPPERS[$i]} not in the module list, removing"
- unset "WRAPPERS[i]" "WRAPPERS[$((i+1))]"
+ unset "WRAPPERS[$i]" "WRAPPERS[$((i+1))]"
fi
continue 2 # skip the arguments string
done
@@ -2426,12 +2415,13 @@ main() {
unset MODULES WRAPPERS EXCLUDE_MODULES STUDIES SET_STUDIES YES
}
-# (Safe) main loop
-if main "$@"; then
- for ((i=1; i<2; i++)); do
- main &&
- i=0
- done
-fi
+# (Safe) main loop if we want to rerun automatically
+# if main "$@"; then
+# for ((i=1; i<2; i++)); do
+# main &&
+# i=0
+# done
+# fi
+main "$@"
exit $?