Index: branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/HeuristicLab.GP.StructureIdentification.Classification.csproj
===================================================================
--- branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/HeuristicLab.GP.StructureIdentification.Classification.csproj	(revision 1253)
+++ branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/HeuristicLab.GP.StructureIdentification.Classification.csproj	(revision 1254)
@@ -103,4 +103,8 @@
       <Name>HeuristicLab.GP</Name>
     </ProjectReference>
+    <ProjectReference Include="..\HeuristicLab.Operators\HeuristicLab.Operators.csproj">
+      <Project>{A9983BA2-B3B2-475E-8E2C-62050B71D1C5}</Project>
+      <Name>HeuristicLab.Operators</Name>
+    </ProjectReference>
     <ProjectReference Include="..\HeuristicLab.PluginInfrastructure\HeuristicLab.PluginInfrastructure.csproj">
       <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>
Index: branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/OffspringSelectionGP.cs
===================================================================
--- branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/OffspringSelectionGP.cs	(revision 1253)
+++ branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/OffspringSelectionGP.cs	(revision 1254)
@@ -39,40 +39,5 @@
     protected override IOperator CreateBestSolutionProcessor() {
       IOperator seq = base.CreateBestSolutionProcessor();
-      AccuracyEvaluator trainingAccuracy = new AccuracyEvaluator();
-      trainingAccuracy.GetVariableInfo("Accuracy").ActualName = "TrainingAccuracy";
-      trainingAccuracy.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingAccuracy.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
-
-      AccuracyEvaluator validationAccuracy = new AccuracyEvaluator();
-      validationAccuracy.GetVariableInfo("Accuracy").ActualName = "ValidationAccuracy";
-      validationAccuracy.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationAccuracy.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
-
-      AccuracyEvaluator testAccuracy = new AccuracyEvaluator();
-      testAccuracy.GetVariableInfo("Accuracy").ActualName = "TestAccuracy";
-      testAccuracy.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testAccuracy.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
-
-      ConfusionMatrixEvaluator trainingConfusionMatrix = new ConfusionMatrixEvaluator();
-      trainingConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "TrainingConfusionMatrix";
-      trainingConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
-
-      ConfusionMatrixEvaluator validationConfusionMatrix = new ConfusionMatrixEvaluator();
-      validationConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "ValidationConfusionMatrix";
-      validationConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
-
-      ConfusionMatrixEvaluator testConfusionMatrix = new ConfusionMatrixEvaluator();
-      testConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "TestConfusionMatrix";
-      testConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
-
-      seq.AddSubOperator(trainingAccuracy);
-      seq.AddSubOperator(validationAccuracy);
-      seq.AddSubOperator(testAccuracy);
-      seq.AddSubOperator(trainingConfusionMatrix);
-      seq.AddSubOperator(validationConfusionMatrix);
-      seq.AddSubOperator(testConfusionMatrix);
+      seq.AddSubOperator(StandardGP.BestSolutionProcessor);
       return seq;
     }
Index: branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/StandardGP.cs
===================================================================
--- branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/StandardGP.cs	(revision 1253)
+++ branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.Classification/StandardGP.cs	(revision 1254)
@@ -30,4 +30,5 @@
 using HeuristicLab.Random;
 using HeuristicLab.Data;
+using HeuristicLab.Operators;
 
 namespace HeuristicLab.GP.StructureIdentification.Classification {
@@ -40,41 +41,49 @@
     protected override IOperator CreateBestSolutionProcessor() {
       IOperator seq = base.CreateBestSolutionProcessor();
-      AccuracyEvaluator trainingAccuracy = new AccuracyEvaluator();
-      trainingAccuracy.GetVariableInfo("Accuracy").ActualName = "TrainingAccuracy";
-      trainingAccuracy.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingAccuracy.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
+      seq.AddSubOperator(BestSolutionProcessor);
+      return seq;
+    }
 
-      AccuracyEvaluator validationAccuracy = new AccuracyEvaluator();
-      validationAccuracy.GetVariableInfo("Accuracy").ActualName = "ValidationAccuracy";
-      validationAccuracy.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationAccuracy.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
+    internal static IOperator BestSolutionProcessor {
+      get {
+        SequentialProcessor seq = new SequentialProcessor();
+        AccuracyEvaluator trainingAccuracy = new AccuracyEvaluator();
+        trainingAccuracy.GetVariableInfo("Accuracy").ActualName = "TrainingAccuracy";
+        trainingAccuracy.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
+        trainingAccuracy.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
 
-      AccuracyEvaluator testAccuracy = new AccuracyEvaluator();
-      testAccuracy.GetVariableInfo("Accuracy").ActualName = "TestAccuracy";
-      testAccuracy.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testAccuracy.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
+        AccuracyEvaluator validationAccuracy = new AccuracyEvaluator();
+        validationAccuracy.GetVariableInfo("Accuracy").ActualName = "ValidationAccuracy";
+        validationAccuracy.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
+        validationAccuracy.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
 
-      ConfusionMatrixEvaluator trainingConfusionMatrix = new ConfusionMatrixEvaluator();
-      trainingConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "TrainingConfusionMatrix";
-      trainingConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
+        AccuracyEvaluator testAccuracy = new AccuracyEvaluator();
+        testAccuracy.GetVariableInfo("Accuracy").ActualName = "TestAccuracy";
+        testAccuracy.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
+        testAccuracy.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
 
-      ConfusionMatrixEvaluator validationConfusionMatrix = new ConfusionMatrixEvaluator();
-      validationConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "ValidationConfusionMatrix";
-      validationConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
+        ConfusionMatrixEvaluator trainingConfusionMatrix = new ConfusionMatrixEvaluator();
+        trainingConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "TrainingConfusionMatrix";
+        trainingConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
+        trainingConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
 
-      ConfusionMatrixEvaluator testConfusionMatrix = new ConfusionMatrixEvaluator();
-      testConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "TestConfusionMatrix";
-      testConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
+        ConfusionMatrixEvaluator validationConfusionMatrix = new ConfusionMatrixEvaluator();
+        validationConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "ValidationConfusionMatrix";
+        validationConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
+        validationConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
 
-      seq.AddSubOperator(trainingAccuracy);
-      seq.AddSubOperator(validationAccuracy);
-      seq.AddSubOperator(testAccuracy);
-      seq.AddSubOperator(trainingConfusionMatrix);
-      seq.AddSubOperator(validationConfusionMatrix);
-      seq.AddSubOperator(testConfusionMatrix);
-      return seq;
+        ConfusionMatrixEvaluator testConfusionMatrix = new ConfusionMatrixEvaluator();
+        testConfusionMatrix.GetVariableInfo("ConfusionMatrix").ActualName = "TestConfusionMatrix";
+        testConfusionMatrix.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
+        testConfusionMatrix.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
+
+        seq.AddSubOperator(trainingAccuracy);
+        seq.AddSubOperator(validationAccuracy);
+        seq.AddSubOperator(testAccuracy);
+        seq.AddSubOperator(trainingConfusionMatrix);
+        seq.AddSubOperator(validationConfusionMatrix);
+        seq.AddSubOperator(testConfusionMatrix);
+        return seq;
+      }
     }
   }
Index: branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.TimeSeries/OffspringSelectionGP.cs
===================================================================
--- branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.TimeSeries/OffspringSelectionGP.cs	(revision 1253)
+++ branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.TimeSeries/OffspringSelectionGP.cs	(revision 1254)
@@ -56,68 +56,5 @@
     protected override IOperator CreateBestSolutionProcessor() {
       IOperator seq = base.CreateBestSolutionProcessor();
-      TheilInequalityCoefficientEvaluator trainingTheil = new TheilInequalityCoefficientEvaluator();
-      trainingTheil.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingTheil.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TrainingTheilInequalityCoefficient";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TrainingTheilInequalityCoefficientBias";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TrainingTheilInequalityCoefficientVariance";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TrainingTheilInequalityCoefficientCovariance";
-
-      TheilInequalityCoefficientEvaluator validationTheil = new TheilInequalityCoefficientEvaluator();
-      validationTheil.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationTheil.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "ValidationTheilInequalityCoefficient";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "ValidationTheilInequalityCoefficientBias";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "ValidationTheilInequalityCoefficientVariance";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "ValidationTheilInequalityCoefficientCovariance";
-
-      TheilInequalityCoefficientEvaluator testTheil = new TheilInequalityCoefficientEvaluator();
-      testTheil.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testTheil.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
-      testTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TestTheilInequalityCoefficient";
-      testTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TestTheilInequalityCoefficientBias";
-      testTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TestTheilInequalityCoefficientVariance";
-      testTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TestTheilInequalityCoefficientCovariance";
-
-      SimpleEvaluator trainingEvaluator = new SimpleEvaluator();
-      trainingEvaluator.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
-      trainingEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
-
-      SimpleEvaluator validationEvaluator = new SimpleEvaluator();
-      validationEvaluator.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationEvaluator.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
-      validationEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
-      
-      SimpleEvaluator testEvaluator = new SimpleEvaluator();
-      testEvaluator.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
-      testEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
-
-      LinechartInjector trainingChartInjector = new LinechartInjector();
-      trainingChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
-      trainingChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
-      trainingChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTrainingPredictedValues";
-
-      LinechartInjector validationChartInjector = new LinechartInjector();
-      validationChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
-      validationChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
-      validationChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartValidationPredictedValues";
-
-      LinechartInjector testChartInjector = new LinechartInjector();
-      testChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
-      testChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
-      testChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTestPredictedValues";
-
-      seq.AddSubOperator(trainingTheil);
-      seq.AddSubOperator(validationTheil);
-      seq.AddSubOperator(testTheil);
-      seq.AddSubOperator(trainingEvaluator);
-      seq.AddSubOperator(trainingChartInjector);
-      seq.AddSubOperator(validationEvaluator);
-      seq.AddSubOperator(validationChartInjector);
-      seq.AddSubOperator(testEvaluator);
-      seq.AddSubOperator(testChartInjector);
-
+      seq.AddSubOperator(StandardGP.BestSolutionProcessor);
       return seq;
     }
Index: branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.TimeSeries/StandardGP.cs
===================================================================
--- branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.TimeSeries/StandardGP.cs	(revision 1253)
+++ branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification.TimeSeries/StandardGP.cs	(revision 1254)
@@ -56,68 +56,5 @@
     protected override IOperator CreateBestSolutionProcessor() {
       IOperator seq = base.CreateBestSolutionProcessor();
-      TheilInequalityCoefficientEvaluator trainingTheil = new TheilInequalityCoefficientEvaluator();
-      trainingTheil.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingTheil.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TrainingTheilInequalityCoefficient";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TrainingTheilInequalityCoefficientBias";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TrainingTheilInequalityCoefficientVariance";
-      trainingTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TrainingTheilInequalityCoefficientCovariance";
-
-      TheilInequalityCoefficientEvaluator validationTheil = new TheilInequalityCoefficientEvaluator();
-      validationTheil.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationTheil.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "ValidationTheilInequalityCoefficient";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "ValidationTheilInequalityCoefficientBias";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "ValidationTheilInequalityCoefficientVariance";
-      validationTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "ValidationTheilInequalityCoefficientCovariance";
-
-      TheilInequalityCoefficientEvaluator testTheil = new TheilInequalityCoefficientEvaluator();
-      testTheil.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testTheil.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
-      testTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TestTheilInequalityCoefficient";
-      testTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TestTheilInequalityCoefficientBias";
-      testTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TestTheilInequalityCoefficientVariance";
-      testTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TestTheilInequalityCoefficientCovariance";
-
-      SimpleEvaluator trainingEvaluator = new SimpleEvaluator();
-      trainingEvaluator.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
-      trainingEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
-      trainingEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
-
-      SimpleEvaluator validationEvaluator = new SimpleEvaluator();
-      validationEvaluator.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
-      validationEvaluator.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
-      validationEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
-
-      SimpleEvaluator testEvaluator = new SimpleEvaluator();
-      testEvaluator.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
-      testEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
-      testEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
-
-      LinechartInjector trainingChartInjector = new LinechartInjector();
-      trainingChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
-      trainingChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
-      trainingChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTrainingPredictedValues";
-
-      LinechartInjector validationChartInjector = new LinechartInjector();
-      validationChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
-      validationChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
-      validationChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartValidationPredictedValues";
-
-      LinechartInjector testChartInjector = new LinechartInjector();
-      testChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
-      testChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
-      testChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTestPredictedValues";
-
-      seq.AddSubOperator(trainingTheil);
-      seq.AddSubOperator(validationTheil);
-      seq.AddSubOperator(testTheil);
-      seq.AddSubOperator(trainingEvaluator);
-      seq.AddSubOperator(trainingChartInjector);
-      seq.AddSubOperator(validationEvaluator);
-      seq.AddSubOperator(validationChartInjector);
-      seq.AddSubOperator(testEvaluator);
-      seq.AddSubOperator(testChartInjector);
-
+      seq.AddSubOperator(BestSolutionProcessor);
       return seq;
     }
@@ -130,4 +67,75 @@
       return new StandardGpEditor(this);
     }
+
+    internal static IOperator BestSolutionProcessor {
+      get {
+        SequentialProcessor seq = new SequentialProcessor();
+        TheilInequalityCoefficientEvaluator trainingTheil = new TheilInequalityCoefficientEvaluator();
+        trainingTheil.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
+        trainingTheil.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
+        trainingTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TrainingTheilInequalityCoefficient";
+        trainingTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TrainingTheilInequalityCoefficientBias";
+        trainingTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TrainingTheilInequalityCoefficientVariance";
+        trainingTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TrainingTheilInequalityCoefficientCovariance";
+
+        TheilInequalityCoefficientEvaluator validationTheil = new TheilInequalityCoefficientEvaluator();
+        validationTheil.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
+        validationTheil.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
+        validationTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "ValidationTheilInequalityCoefficient";
+        validationTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "ValidationTheilInequalityCoefficientBias";
+        validationTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "ValidationTheilInequalityCoefficientVariance";
+        validationTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "ValidationTheilInequalityCoefficientCovariance";
+
+        TheilInequalityCoefficientEvaluator testTheil = new TheilInequalityCoefficientEvaluator();
+        testTheil.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
+        testTheil.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
+        testTheil.GetVariableInfo("TheilInequalityCoefficient").ActualName = "TestTheilInequalityCoefficient";
+        testTheil.GetVariableInfo("TheilInequalityCoefficientBias").ActualName = "TestTheilInequalityCoefficientBias";
+        testTheil.GetVariableInfo("TheilInequalityCoefficientVariance").ActualName = "TestTheilInequalityCoefficientVariance";
+        testTheil.GetVariableInfo("TheilInequalityCoefficientCovariance").ActualName = "TestTheilInequalityCoefficientCovariance";
+
+        SimpleEvaluator trainingEvaluator = new SimpleEvaluator();
+        trainingEvaluator.GetVariableInfo("SamplesStart").ActualName = "TrainingSamplesStart";
+        trainingEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TrainingSamplesEnd";
+        trainingEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
+
+        SimpleEvaluator validationEvaluator = new SimpleEvaluator();
+        validationEvaluator.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
+        validationEvaluator.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
+        validationEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
+
+        SimpleEvaluator testEvaluator = new SimpleEvaluator();
+        testEvaluator.GetVariableInfo("SamplesStart").ActualName = "TestSamplesStart";
+        testEvaluator.GetVariableInfo("SamplesEnd").ActualName = "TestSamplesEnd";
+        testEvaluator.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
+
+        LinechartInjector trainingChartInjector = new LinechartInjector();
+        trainingChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
+        trainingChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTraining";
+        trainingChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTrainingPredictedValues";
+
+        LinechartInjector validationChartInjector = new LinechartInjector();
+        validationChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
+        validationChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesValidation";
+        validationChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartValidationPredictedValues";
+
+        LinechartInjector testChartInjector = new LinechartInjector();
+        testChartInjector.GetVariableValue<IntData>("NumberOfLines", null, false).Data = 2;
+        testChartInjector.GetVariableInfo("Values").ActualName = "PredictedValuesTest";
+        testChartInjector.GetVariableInfo("Linechart").ActualName = "LinechartTestPredictedValues";
+
+        seq.AddSubOperator(trainingTheil);
+        seq.AddSubOperator(validationTheil);
+        seq.AddSubOperator(testTheil);
+        seq.AddSubOperator(trainingEvaluator);
+        seq.AddSubOperator(trainingChartInjector);
+        seq.AddSubOperator(validationEvaluator);
+        seq.AddSubOperator(validationChartInjector);
+        seq.AddSubOperator(testEvaluator);
+        seq.AddSubOperator(testChartInjector);
+
+        return seq;
+      }
+    }
   }
 }
