Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Example.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Example.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Example.cs	(revision 14907)
@@ -16,6 +16,8 @@
     private static readonly string[][] emptyStringVectors = new string[0][];
 
+    public Example() {
+      InputArgs = emptyStrings;
+      OutputArgs = emptyStrings;
 
-    public Example() {
       InputInteger = emptyIntegers;
       InputFloat = emptyFloats;
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/HeuristicLab.BenchmarkSuite.csproj
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/HeuristicLab.BenchmarkSuite.csproj	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/HeuristicLab.BenchmarkSuite.csproj	(revision 14907)
@@ -111,5 +111,5 @@
     <Compile Include="Plugin.cs" />
     <Compile Include="Problems\CompareStringLengths.cs" />
-    <Compile Include="Problems\ProblemData.cs" />
+    <Compile Include="ProblemData.cs" />
     <Compile Include="Example.cs" />
     <Compile Include="ExampleArgumentType.cs" />
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Plugin.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Plugin.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Plugin.cs	(revision 14907)
@@ -31,7 +31,10 @@
   [PluginDependency("HeuristicLab.Common", "3.3")]
   [PluginDependency("HeuristicLab.Core", "3.3")]
+  [PluginDependency("HeuristicLab.Core.Views", "3.3")]
+  [PluginDependency("HeuristicLab.MainForm", "3.3")]
+  [PluginDependency("HeuristicLab.MainForm.WindowsForms", "3.3")]
   [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]
-  [PluginDependency("HeuristicLab.Random", "3.3")]
-  public class PushGpPlugin : PluginBase {
+  [PluginDependency("HeuristicLab.Persistence", "3.3")]
+  public class Plugin : PluginBase {
 
   }
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/ProblemData.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/ProblemData.cs	(revision 14907)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/ProblemData.cs	(revision 14907)
@@ -0,0 +1,77 @@
+﻿namespace HeuristicLab.BenchmarkSuite {
+  using System.Linq;
+
+  using HeuristicLab.Common;
+  using HeuristicLab.Core;
+  using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
+
+  [StorableClass]
+  public class ProblemData : NamedItem {
+
+    public ProblemData() {
+      Name = "BenchmarkSuite Problem Data";
+      ErcOptions = new ErcOptions(); // default does nothing
+    }
+
+    [StorableConstructor]
+    protected ProblemData(bool deserializing) : base(deserializing) { }
+
+    public ProblemData(ProblemData origin, Cloner cloner) : base(origin, cloner) {
+      TrainingCount = origin.TrainingCount;
+      TestCount = origin.TestCount;
+      BestResult = origin.BestResult;
+      WorstResult = origin.WorstResult;
+      InputArgumentTypes = origin.InputArgumentTypes;
+      OutputArgumentTypes = origin.OutputArgumentTypes;
+
+      if (origin.Examples != null)
+        Examples = origin.Examples.Select(cloner.Clone).ToArray();
+
+      EnabledDataTypes = origin.EnabledDataTypes;
+      ErcOptions = cloner.Clone(origin.ErcOptions);
+    }
+
+    [Storable]
+    public int TrainingCount { get; set; }
+    [Storable]
+    public int TestCount { get; set; }
+    [Storable]
+    public double BestResult { get; set; }
+    [Storable]
+    public double WorstResult { get; set; }
+    [Storable]
+    public ExampleArgumentType[] InputArgumentTypes { get; set; }
+    [Storable]
+    public ExampleArgumentType[] OutputArgumentTypes { get; set; }
+    public int TotalArgumentCount { get { return InputArgumentTypes.Length + OutputArgumentTypes.Length; } }
+    [Storable]
+    public Example[] Examples { get; set; }
+    [Storable]
+    public DataTypes EnabledDataTypes { get; set; }
+
+    /// <summary>
+    /// Max Size” gives the maximum number of instructions that can appear in an individual’s genome
+    /// </summary>
+    [Storable]
+    public int MaxSize { get; set; }
+
+    /// <summary>
+    /// “Eval Limit” is the number of steps of the Push interpreter that are executed before stopping a
+    /// program’s execution; programs halted in this way may still achieve good results if they print or
+    /// return results before they are stopped
+    /// </summary>
+    [Storable]
+    public int EvalLimit { get; set; }
+
+    /// <summary>
+    /// Specifies constant values and value ranges required to solve a certain problem
+    /// </summary>
+    [Storable]
+    public ErcOptions ErcOptions { get; set; }
+
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new ProblemData(this, cloner);
+    }
+  }
+}
Index: anches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/ProblemData.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/ProblemData.cs	(revision 14906)
+++ 	(revision )
@@ -1,76 +1,0 @@
-﻿namespace HeuristicLab.BenchmarkSuite.Problems {
-  using System.Linq;
-  using Common;
-  using Core;
-  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
-
-  using Persistence.Default.CompositeSerializers.Storable;
-
-  [StorableClass]
-  public class ProblemData : NamedItem {
-
-    public ProblemData() {
-      ErcOptions = new ErcOptions(); // default does nothing
-    }
-
-    [StorableConstructor]
-    protected ProblemData(bool deserializing) : base(deserializing) { }
-
-    public ProblemData(ProblemData origin, Cloner cloner) : base(origin, cloner) {
-      TrainingCount = origin.TrainingCount;
-      TestCount = origin.TestCount;
-      BestResult = origin.BestResult;
-      WorstResult = origin.WorstResult;
-      InputArgumentTypes = origin.InputArgumentTypes;
-      OutputArgumentTypes = origin.OutputArgumentTypes;
-
-      if (origin.Examples != null)
-        Examples = origin.Examples.Select(cloner.Clone).ToArray();
-
-      EnabledDataTypes = origin.EnabledDataTypes;
-      ErcOptions = cloner.Clone(origin.ErcOptions);
-    }
-
-    [Storable]
-    public int TrainingCount { get; set; }
-    [Storable]
-    public int TestCount { get; set; }
-    [Storable]
-    public double BestResult { get; set; }
-    [Storable]
-    public double WorstResult { get; set; }
-    [Storable]
-    public ExampleArgumentType[] InputArgumentTypes { get; set; }
-    [Storable]
-    public ExampleArgumentType[] OutputArgumentTypes { get; set; }
-    public int TotalArgumentCount { get { return InputArgumentTypes.Length + OutputArgumentTypes.Length; } }
-    [Storable]
-    public Example[] Examples { get; set; }
-    [Storable]
-    public DataTypes EnabledDataTypes { get; set; }
-
-    /// <summary>
-    /// Max Size” gives the maximum number of instructions that can appear in an individual’s genome
-    /// </summary>
-    [Storable]
-    public int MaxSize { get; set; }
-
-    /// <summary>
-    /// “Eval Limit” is the number of steps of the Push interpreter that are executed before stopping a
-    /// program’s execution; programs halted in this way may still achieve good results if they print or
-    /// return results before they are stopped
-    /// </summary>
-    [Storable]
-    public int EvalLimit { get; set; }
-
-    /// <summary>
-    /// Specifies constant values and value ranges required to solve a certain problem
-    /// </summary>
-    [Storable]
-    public ErcOptions ErcOptions { get; set; }
-
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new ProblemData(this, cloner);
-    }
-  }
-}
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis.Base/Erc/StringVector/StringVectorConstantsErcValue.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis.Base/Erc/StringVector/StringVectorConstantsErcValue.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis.Base/Erc/StringVector/StringVectorConstantsErcValue.cs	(revision 14907)
@@ -25,5 +25,5 @@
 
     [StorableConstructor]
-    private StringVectorConstantsErcValue(bool deserializing) : base(deserializing) { }
+    protected StringVectorConstantsErcValue(bool deserializing) : base(deserializing) { }
 
     public StringVectorConstantsErcValue(StringVectorConstantsErcValue origin, Cloner cloner) : base(origin, cloner) { }
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis.Base/Plugin.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis.Base/Plugin.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis.Base/Plugin.cs	(revision 14907)
@@ -31,12 +31,9 @@
   [PluginDependency("HeuristicLab.Common", "3.3")]
   [PluginDependency("HeuristicLab.Core", "3.3")]
-  [PluginDependency("HeuristicLab.Core.Views", "3.3")]
   [PluginDependency("HeuristicLab.Data", "3.3")]
   [PluginDependency("HeuristicLab.Parameters", "3.3")]
   [PluginDependency("HeuristicLab.Persistence", "3.3")]
-  [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]
   [PluginDependency("HeuristicLab.Random", "3.3")]
-
-  public class PushGpPlugin : PluginBase {
+  public class Plugin : PluginBase {
 
   }
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Plugin.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Plugin.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Plugin.cs	(revision 14907)
@@ -43,6 +43,7 @@
   [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]
   [PluginDependency("HeuristicLab.Random", "3.3")]
+  [PluginDependency("HeuristicLab.Selection", "3.3")]
 
-  public class PushGpPlugin : PluginBase {
+  public class Plugin : PluginBase {
 
   }
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Problem/BenchmarkSuite/PushBenchmarkSuiteEvaluator.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Problem/BenchmarkSuite/PushBenchmarkSuiteEvaluator.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Problem/BenchmarkSuite/PushBenchmarkSuiteEvaluator.cs	(revision 14907)
@@ -5,4 +5,6 @@
   using Core;
   using Expressions;
+
+  using HeuristicLab.BenchmarkSuite;
   using HeuristicLab.BenchmarkSuite.Problems;
   using HeuristicLab.Parameters;
Index: /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Problem/BenchmarkSuite/PushBenchmarkSuiteProblem.cs
===================================================================
--- /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Problem/BenchmarkSuite/PushBenchmarkSuiteProblem.cs	(revision 14906)
+++ /branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Problem/BenchmarkSuite/PushBenchmarkSuiteProblem.cs	(revision 14907)
@@ -4,4 +4,6 @@
   using Core;
   using Encodings.IntegerVectorEncoding;
+
+  using HeuristicLab.BenchmarkSuite;
   using HeuristicLab.BenchmarkSuite.Problems;
   using Instances;
@@ -23,5 +25,5 @@
     }
 
-    protected PushBenchmarkSuiteProblem(PushProblem original, Cloner cloner)
+    protected PushBenchmarkSuiteProblem(PushBenchmarkSuiteProblem original, Cloner cloner)
       : base(original, cloner) {
     }
