Index: /branches/DataPreprocessing/HeuristicLab.Algorithms.DataAnalysis/3.4/HeuristicLab.Algorithms.DataAnalysis-3.4.csproj
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Algorithms.DataAnalysis/3.4/HeuristicLab.Algorithms.DataAnalysis-3.4.csproj	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Algorithms.DataAnalysis/3.4/HeuristicLab.Algorithms.DataAnalysis-3.4.csproj	(revision 11070)
@@ -279,5 +279,5 @@
     <ProjectReference Include="..\..\HeuristicLab.Algorithms.GradientDescent\3.3\HeuristicLab.Algorithms.GradientDescent-3.3.csproj">
       <Project>{1256B945-EEA9-4BE4-9880-76B5B113F089}</Project>
-      <Name>HeuristicLab.Algorithms.GradientDescent-3.3</Name>
+      <Name>HeuristicLab.Algorithms.GradientDescent</Name>
       <Private>False</Private>
     </ProjectReference>
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataGridContentView.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataGridContentView.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataGridContentView.cs	(revision 11070)
@@ -37,5 +37,4 @@
     private bool notOwnEvent = true;
     private bool isSearching = false;
-    private bool isReplacing = false;
     private bool updateOnMouseUp = false;
     private SearchAndReplaceDialog findAndReplaceDialog;
@@ -570,10 +569,8 @@
 
     private void StartReplacing() {
-      isReplacing = true;
       SuspendRepaint();
     }
 
     private void StopReplacing() {
-      isReplacing = false;
       ResumeRepaint(true);
     }
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/ManipulationView.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/ManipulationView.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/ManipulationView.cs	(revision 11070)
@@ -78,12 +78,10 @@
     protected override void RegisterContentEvents() {
       base.RegisterContentEvents();
-      Content.ManipulationLogic.Changed += Content_Changed;
       Content.FilterLogic.FilterChanged += FilterLogic_FilterChanged;
     }
 
     protected override void DeregisterContentEvents() {
+      Content.FilterLogic.FilterChanged -= FilterLogic_FilterChanged;
       base.DeregisterContentEvents();
-      Content.ManipulationLogic.Changed -= Content_Changed;
-      Content.FilterLogic.FilterChanged -= FilterLogic_FilterChanged;
     }
 
@@ -219,5 +217,5 @@
         var allIndices = Content.SearchLogic.GetMissingValueIndices();
         int count = allIndices[columnIndex].Count;
-        int cellCount = Content.FilterLogic.PreprocessingData.Rows*Content.FilterLogic.PreprocessingData.Columns;
+        int cellCount = Content.FilterLogic.PreprocessingData.Rows * Content.FilterLogic.PreprocessingData.Columns;
         lblPreviewReplaceMissingValues.Text = count + " cell" + (count > 1 || count == 0 ? "s" : "")
           + " of " + cellCount + " (" + string.Format("{0:F2}%", 100d / cellCount * count) + ") were detected with missing values which would be replaced with " + replaceWith;
@@ -292,18 +290,4 @@
     }
 
-    void Content_Changed(object sender, DataPreprocessingChangedEventArgs e) {
-      switch (lstMethods.SelectedIndex) {
-        case 0:
-          validateDeleteColumnsInfo();
-          break;
-        case 1:
-          validateDeleteColumnsVariance();
-          break;
-        case 2:
-          validateDeleteRowsInfo();
-          break;
-      }
-    }
-
     private void cmbReplaceWith_SelectedIndexChanged(object sender, EventArgs e) {
       bool isReplaceWithValueSelected = cmbReplaceWith.SelectedIndex == 0;
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/DataCompletenessChartContent.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/DataCompletenessChartContent.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/DataCompletenessChartContent.cs	(revision 11070)
@@ -6,24 +6,19 @@
   [Item("DataCompletenessChart", "Represents a datacompleteness chart.")]
 
-  public class DataCompletenessChartContent : Item, IViewChartShortcut
-  {
+  public class DataCompletenessChartContent : Item, IViewChartShortcut {
     public static new Image StaticItemImage {
       get { return HeuristicLab.Common.Resources.VSImageLibrary.EditBrightnessContrast; }
     }
 
-    private readonly SearchLogic searchLogic;
-
     public IDataGridLogic DataGridLogic { get; private set; }
     public ISearchLogic SearchLogic { get; private set; }
 
-    public DataCompletenessChartContent(SearchLogic searchLogic)
-    {
+    public DataCompletenessChartContent(SearchLogic searchLogic) {
       SearchLogic = searchLogic;
     }
-    
+
     public DataCompletenessChartContent(DataCompletenessChartContent content, Cloner cloner)
-      : base(content, cloner)
-    {
-      SearchLogic = content.searchLogic;
+      : base(content, cloner) {
+      SearchLogic = content.SearchLogic;
     }
 
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/DataGridContent.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/DataGridContent.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/DataGridContent.cs	(revision 11070)
@@ -23,9 +23,7 @@
 using System.Collections.Generic;
 using System.Drawing;
-using System.Globalization;
 using System.Linq;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Data;
 
 namespace HeuristicLab.DataPreprocessing {
@@ -95,5 +93,4 @@
 
 
-    private IDictionary<int, IList<int>> selection;
     public IDictionary<int, IList<int>> Selection {
       get { return PreProcessingData.Selection; }
@@ -145,5 +142,5 @@
 
     #region unused stuff/not implemented but necessary due to IStringConvertibleMatrix
-
+#pragma warning disable 0067
     // Is not used since DataGridContentView overrides dataGridView_CellValidating and uses 
     // DataGridLogic#Validate(string value, out string errorMessage, int columnIndex)
@@ -160,4 +157,6 @@
     public event EventHandler<EventArgs<int, int>> ItemChanged;
     public event EventHandler Reset;
+
+#pragma warning restore 0067
     #endregion
 
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/ManipulationLogic.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/ManipulationLogic.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/ManipulationLogic.cs	(revision 11070)
@@ -27,7 +27,7 @@
 namespace HeuristicLab.DataPreprocessing {
   public class ManipulationLogic : IManipulationLogic {
-    private ITransactionalPreprocessingData preprocessingData;
-    private IStatisticsLogic statisticsLogic;
-    private ISearchLogic searchLogic;
+    private readonly ITransactionalPreprocessingData preprocessingData;
+    private readonly IStatisticsLogic statisticsLogic;
+    private readonly ISearchLogic searchLogic;
 
     public IEnumerable<string> VariableNames {
@@ -402,5 +402,4 @@
     }
 
-    public event DataPreprocessingChangedEventHandler Changed;
   }
 }
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Interfaces/IManipulationLogic.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Interfaces/IManipulationLogic.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Interfaces/IManipulationLogic.cs	(revision 11070)
@@ -46,8 +46,4 @@
     void DeleteColumnsWithMissingValuesGreater(double percent);
     void DeleteColumnsWithVarianceSmaller(double variance);
-
-    event DataPreprocessingChangedEventHandler Changed;
-
-
   }
 }
Index: /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/HeuristicLab.Optimization.Views-3.3.csproj
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/HeuristicLab.Optimization.Views-3.3.csproj	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/HeuristicLab.Optimization.Views-3.3.csproj	(revision 11070)
@@ -392,9 +392,4 @@
     </ProjectReference>
   </ItemGroup>
-  <ItemGroup>
-    <EmbeddedResource Include="RunCollectionConstraintViews\RunCollectionComparisonConstraintView.resx">
-      <DependentUpon>RunCollectionComparisonConstraintView.cs</DependentUpon>
-    </EmbeddedResource>
-  </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
Index: /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/RunCollectionConstraintViews/RunCollectionComparisonConstraintView.Designer.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/RunCollectionConstraintViews/RunCollectionComparisonConstraintView.Designer.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/RunCollectionConstraintViews/RunCollectionComparisonConstraintView.Designer.cs	(revision 11070)
@@ -48,5 +48,4 @@
       this.txtConstraintData = new System.Windows.Forms.TextBox();
       this.errorProvider = new System.Windows.Forms.ErrorProvider(this.components);
-      this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
       ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit();
       this.SuspendLayout();
@@ -54,5 +53,5 @@
       // txtConstraintData
       // 
-      this.txtConstraintData.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 
+      this.txtConstraintData.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
             | System.Windows.Forms.AnchorStyles.Right)));
       this.errorProvider.SetIconAlignment(this.txtConstraintData, System.Windows.Forms.ErrorIconAlignment.MiddleLeft);
@@ -68,8 +67,4 @@
       // 
       this.errorProvider.ContainerControl = this;
-      // 
-      // contextMenuStrip1
-      // 
-      this.contextMenuStrip1.Name = "contextMenuStrip1";
       // 
       // RunCollectionComparisonConstraintView
@@ -92,5 +87,4 @@
     private System.Windows.Forms.TextBox txtConstraintData;
     private System.Windows.Forms.ErrorProvider errorProvider;
-    private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
   }
 }
Index: anches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/RunCollectionConstraintViews/RunCollectionComparisonConstraintView.resx
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Optimization.Views/3.3/RunCollectionConstraintViews/RunCollectionComparisonConstraintView.resx	(revision 11069)
+++ 	(revision )
@@ -1,126 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <metadata name="errorProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>17, 17</value>
-  </metadata>
-  <metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
-    <value>140, 17</value>
-  </metadata>
-</root>
Index: /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs	(revision 11070)
@@ -44,4 +44,5 @@
       btnSimplify.Enabled = Content != null && !Locked;
       exportButton.Enabled = Content != null && !Locked;
+      transformModelButton.Visible = false;
       transformModelButton.Enabled = Content != null && !Locked;
     }
Index: /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs	(revision 11070)
@@ -1627,6 +1627,6 @@
     }
 
-    public ProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IList<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? new List<ITransformation>()) {
+    public ProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
+      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
       var variables = InputVariables.Select(x => x.AsReadOnly()).ToList();
       Parameters.Add(new ConstrainedValueParameter<StringValue>(PriceChangeVariableParameterName, new ItemSet<StringValue>(variables), variables.First(x => x.Value == targetVariable)));
Index: /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs	(revision 11070)
@@ -300,6 +300,6 @@
     }
 
-    public ClassificationProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IList<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? new List<ITransformation>()) {
+    public ClassificationProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
+      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
       var validTargetVariableValues = CheckVariablesForPossibleTargetVariables(dataset).Select(x => new StringValue(x).AsReadOnly()).ToList();
       var target = validTargetVariableValues.Where(x => x.Value == targetVariable).DefaultIfEmpty(validTargetVariableValues.First()).First();
Index: /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblemData.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblemData.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblemData.cs	(revision 11070)
@@ -21,4 +21,5 @@
 
 using System.Collections.Generic;
+using System.Linq;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
@@ -86,6 +87,6 @@
     }
 
-    public ClusteringProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, IList<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? new List<ITransformation>()) {
+    public ClusteringProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, IEnumerable<ITransformation> transformations = null)
+      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
     }
   }
Index: /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs	(revision 11070)
@@ -137,6 +137,6 @@
     }
 
-    public RegressionProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IList<ITransformation> transformations = null)
-      : base(dataset, allowedInputVariables, transformations ?? new List<ITransformation>()) {
+    public RegressionProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
+      : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) {
       var variables = InputVariables.Select(x => x.AsReadOnly()).ToList();
       Parameters.Add(new ConstrainedValueParameter<StringValue>(TargetVariableParameterName, new ItemSet<StringValue>(variables), variables.Where(x => x.Value == targetVariable).First()));
Index: /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs	(revision 11069)
+++ /branches/DataPreprocessing/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs	(revision 11070)
@@ -1582,6 +1582,6 @@
       TrainingPartition.Start = 50;
     }
-    public TimeSeriesPrognosisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable)
-      : base(dataset, allowedInputVariables, targetVariable) {
+    public TimeSeriesPrognosisProblemData(Dataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, IEnumerable<ITransformation> transformations = null)
+      : base(dataset, allowedInputVariables, targetVariable, transformations ?? Enumerable.Empty<ITransformation>()) {
       Parameters.Add(new FixedValueParameter<IntValue>(TrainingHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each training sample.", new IntValue(1)));
       Parameters.Add(new FixedValueParameter<IntValue>(TestHorizonParameterName, "Specifies the horizon (how far the prognosis reaches in the future) for each test sample.", new IntValue(1)));
@@ -1643,7 +1643,7 @@
 
       var trainingDataStart = TrainingIndices.First();
-      
+
       base.AdjustProblemDataProperties(problemData);
-      
+
       TestPartition.Start = trainingDataStart;
 
