Index: trunk/HeuristicLab.Optimization/3.3/Problems/HeuristicOptimizationProblem.cs
===================================================================
--- trunk/HeuristicLab.Optimization/3.3/Problems/HeuristicOptimizationProblem.cs	(revision 16527)
+++ trunk/HeuristicLab.Optimization/3.3/Problems/HeuristicOptimizationProblem.cs	(revision 16565)
@@ -1,5 +1,5 @@
 ﻿#region License Information
 /* HeuristicLab
- * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ * Copyright (C) 2002-2019 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
  *
  * This file is part of HeuristicLab.
@@ -24,9 +24,9 @@
 using HeuristicLab.Core;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Optimization {
   [Item("Heuristic Optimization Problem", "Represents the base class for a heuristic optimization problem.")]
-  [StorableClass]
+  [StorableType("DE0478BA-3797-4AC3-9A89-3734D2643823")]
   public abstract class HeuristicOptimizationProblem<T, U> : Problem, IHeuristicOptimizationProblem
     where T : class,IEvaluator
@@ -36,5 +36,5 @@
 
     [StorableConstructor]
-    protected HeuristicOptimizationProblem(bool deserializing) : base(deserializing) { }
+    protected HeuristicOptimizationProblem(StorableConstructorFlag _) : base(_) { }
     protected HeuristicOptimizationProblem(HeuristicOptimizationProblem<T, U> original, Cloner cloner)
       : base(original, cloner) {
Index: trunk/HeuristicLab.Optimization/3.3/Problems/MultiObjectiveHeuristicOptimizationProblem.cs
===================================================================
--- trunk/HeuristicLab.Optimization/3.3/Problems/MultiObjectiveHeuristicOptimizationProblem.cs	(revision 16527)
+++ trunk/HeuristicLab.Optimization/3.3/Problems/MultiObjectiveHeuristicOptimizationProblem.cs	(revision 16565)
@@ -1,5 +1,5 @@
 ﻿#region License Information
 /* HeuristicLab
- * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ * Copyright (C) 2002-2019 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
  *
  * This file is part of HeuristicLab.
@@ -24,9 +24,9 @@
 using HeuristicLab.Data;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Optimization {
   [Item("Multi-Objective Heuristic Optimization Problem", "A base class for multi-objective heuristic optimization problems.")]
-  [StorableClass]
+  [StorableType("C46643E3-7144-4884-A30A-5329BD80DC4E")]
   public abstract class MultiObjectiveHeuristicOptimizationProblem<T, U> : HeuristicOptimizationProblem<T, U>, IMultiObjectiveHeuristicOptimizationProblem
     where T : class, IMultiObjectiveEvaluator
@@ -35,5 +35,5 @@
 
     [StorableConstructor]
-    protected MultiObjectiveHeuristicOptimizationProblem(bool deserializing) : base(deserializing) { }
+    protected MultiObjectiveHeuristicOptimizationProblem(StorableConstructorFlag _) : base(_) { }
     protected MultiObjectiveHeuristicOptimizationProblem(MultiObjectiveHeuristicOptimizationProblem<T, U> original, Cloner cloner) : base(original, cloner) { }
     protected MultiObjectiveHeuristicOptimizationProblem()
Index: trunk/HeuristicLab.Optimization/3.3/Problems/Problem.cs
===================================================================
--- trunk/HeuristicLab.Optimization/3.3/Problems/Problem.cs	(revision 16527)
+++ trunk/HeuristicLab.Optimization/3.3/Problems/Problem.cs	(revision 16565)
@@ -1,5 +1,5 @@
 ﻿#region License Information
 /* HeuristicLab
- * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ * Copyright (C) 2002-2019 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
  *
  * This file is part of HeuristicLab.
@@ -28,9 +28,9 @@
 using HeuristicLab.Data;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Optimization {
   [Item("Problem", "Represents the base class for a problem.")]
-  [StorableClass]
+  [StorableType("6DC97432-9BD1-4304-802A-1FC48A0E0468")]
   public abstract class Problem : ParameterizedNamedItem, IProblem {
     private const string OperatorsParameterName = "Operators";
@@ -44,5 +44,5 @@
 
     [StorableConstructor]
-    protected Problem(bool deserializing) : base(deserializing) { }
+    protected Problem(StorableConstructorFlag _) : base(_) { }
     protected Problem(Problem original, Cloner cloner)
       : base(original, cloner) {
Index: trunk/HeuristicLab.Optimization/3.3/Problems/SingleObjectiveHeuristicOptimizationProblem.cs
===================================================================
--- trunk/HeuristicLab.Optimization/3.3/Problems/SingleObjectiveHeuristicOptimizationProblem.cs	(revision 16527)
+++ trunk/HeuristicLab.Optimization/3.3/Problems/SingleObjectiveHeuristicOptimizationProblem.cs	(revision 16565)
@@ -1,5 +1,5 @@
 ﻿#region License Information
 /* HeuristicLab
- * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ * Copyright (C) 2002-2019 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
  *
  * This file is part of HeuristicLab.
@@ -24,9 +24,9 @@
 using HeuristicLab.Data;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Optimization {
   [Item("Single-Objective Heuristic OptimizationProblem", "A base class for single-objective heuristic optimization problems.")]
-  [StorableClass]
+  [StorableType("DFD5588E-6AB2-4712-9083-A405EF21226F")]
   public abstract class SingleObjectiveHeuristicOptimizationProblem<T, U> : HeuristicOptimizationProblem<T, U>, ISingleObjectiveHeuristicOptimizationProblem
     where T : class, ISingleObjectiveEvaluator
@@ -36,5 +36,5 @@
 
     [StorableConstructor]
-    protected SingleObjectiveHeuristicOptimizationProblem(bool deserializing) : base(deserializing) { }
+    protected SingleObjectiveHeuristicOptimizationProblem(StorableConstructorFlag _) : base(_) { }
     protected SingleObjectiveHeuristicOptimizationProblem(SingleObjectiveHeuristicOptimizationProblem<T, U> original, Cloner cloner) : base(original, cloner) { }
     protected SingleObjectiveHeuristicOptimizationProblem()
Index: trunk/HeuristicLab.Optimization/3.3/Problems/UserDefinedProblem.cs
===================================================================
--- trunk/HeuristicLab.Optimization/3.3/Problems/UserDefinedProblem.cs	(revision 16527)
+++ trunk/HeuristicLab.Optimization/3.3/Problems/UserDefinedProblem.cs	(revision 16565)
@@ -1,5 +1,5 @@
 ﻿#region License Information
 /* HeuristicLab
- * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ * Copyright (C) 2002-2019 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
  *
  * This file is part of HeuristicLab.
@@ -30,5 +30,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 using HeuristicLab.PluginInfrastructure;
 
@@ -39,5 +39,5 @@
   [Item("User-Defined Problem", "A problem which can be defined by the user.")]
   [Creatable(CreatableAttribute.Categories.Problems, Priority = 120)]
-  [StorableClass]
+  [StorableType("9F18A098-A8B8-4F70-93CF-79FF1496AC8A")]
   public sealed class UserDefinedProblem : ParameterizedNamedItem, ISingleObjectiveHeuristicOptimizationProblem, IStorableContent {
     public string Filename { get; set; }
@@ -122,5 +122,5 @@
 
     [StorableConstructor]
-    private UserDefinedProblem(bool deserializing) : base(deserializing) { }
+    private UserDefinedProblem(StorableConstructorFlag _) : base(_) { }
     [StorableHook(HookType.AfterDeserialization)]
     private void AfterDeserialization() {
@@ -235,10 +235,10 @@
 
     [Item("EmptyUserDefinedProblemEvaluator", "A dummy evaluator that will throw an exception when executed.")]
-    [StorableClass]
+    [StorableType("E27E4145-6D44-4A9D-B15A-B0E0528ECD0D")]
     [NonDiscoverableType]
     private sealed class EmptyUserDefinedProblemEvaluator : ParameterizedNamedItem, ISingleObjectiveEvaluator {
 
       [StorableConstructor]
-      private EmptyUserDefinedProblemEvaluator(bool deserializing) : base(deserializing) { }
+      private EmptyUserDefinedProblemEvaluator(StorableConstructorFlag _) : base(_) { }
       private EmptyUserDefinedProblemEvaluator(EmptyUserDefinedProblemEvaluator original, Cloner cloner)
         : base(original, cloner) {
