Index: /trunk/sources/HeuristicLab 3.3.sln
===================================================================
--- /trunk/sources/HeuristicLab 3.3.sln	(revision 13784)
+++ /trunk/sources/HeuristicLab 3.3.sln	(revision 13785)
@@ -10,4 +10,5 @@
 		..\documentation\License\gpl-3.0.txt = ..\documentation\License\gpl-3.0.txt
 		MergeConfigs.cmd = MergeConfigs.cmd
+		Performance1.psess = Performance1.psess
 		PreBuildEvent.cmd = PreBuildEvent.cmd
 	EndProjectSection
@@ -2245,3 +2246,6 @@
 		{7FC70D74-1813-48B7-9CE5-0BD913457579} = {D1B1DE45-F9C7-4FBF-B73C-E759BC4223D5}
 	EndGlobalSection
+	GlobalSection(Performance) = preSolution
+		HasPerformanceSessions = true
+	EndGlobalSection
 EndGlobal
Index: /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblem.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblem.cs	(revision 13784)
+++ /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblem.cs	(revision 13785)
@@ -35,8 +35,5 @@
     public override IDeepCloneable Clone(Cloner cloner) { return new ClassificationProblem(this, cloner); }
 
-    public ClassificationProblem()
-      : base() {
-      ProblemData = new ClassificationProblemData();
-    }
+    public ClassificationProblem() : base(new ClassificationProblemData()) { }
   }
 }
Index: /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblem.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblem.cs	(revision 13784)
+++ /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringProblem.cs	(revision 13785)
@@ -33,8 +33,5 @@
     public override IDeepCloneable Clone(Cloner cloner) { return new ClusteringProblem(this, cloner); }
 
-    public ClusteringProblem()
-      : base() {
-      ProblemData = new ClusteringProblemData();
-    }
+    public ClusteringProblem() : base(new ClusteringProblemData()) { }
   }
 }
Index: /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblem.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblem.cs	(revision 13784)
+++ /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblem.cs	(revision 13785)
@@ -49,7 +49,5 @@
     public T ProblemData {
       get { return ProblemDataParameter.Value; }
-      protected set {
-        ProblemDataParameter.Value = value;
-      }
+      set { ProblemDataParameter.Value = value; }
     }
     #endregion
@@ -60,13 +58,9 @@
     [StorableConstructor]
     protected DataAnalysisProblem(bool deserializing) : base(deserializing) { }
-    public DataAnalysisProblem()
-      : base() {
-      Parameters.Add(new ValueParameter<T>(ProblemDataParameterName, ProblemDataParameterDescription));
-      RegisterEventHandlers();
-    }
 
     protected DataAnalysisProblem(T problemData)
-      : this() {
-      ProblemData = problemData;
+      : base() {
+      Parameters.Add(new ValueParameter<T>(ProblemDataParameterName, ProblemDataParameterDescription, problemData));
+      RegisterEventHandlers();
     }
 
Index: /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblem.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblem.cs	(revision 13784)
+++ /trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblem.cs	(revision 13785)
@@ -34,5 +34,5 @@
   where T : class, IDataAnalysisProblemData {
     new IValueParameter<T> ProblemDataParameter { get; }
-    new T ProblemData { get; }
+    new T ProblemData { get; set; }
   }
 }
