Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Ackley.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Ackley.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Ackley.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -33,5 +33,5 @@
   /// </summary
   [Item("Ackley", "Evaluates the Ackley function on a given point. The optimum of this function is 0 at the origin. It is implemented as described in Eiben, A.E. and Smith, J.E. 2003. Introduction to Evolutionary Computation. Natural Computing Series, Springer-Verlag Berlin Heidelberg.")]
-  [StorableClass]
+  [StorableType("AB46422C-A915-4BC5-B2F7-F6F4794E87D2")]
   public class Ackley : SingleObjectiveTestFunction {
     /// <summary>
@@ -67,5 +67,5 @@
 
     [StorableConstructor]
-    protected Ackley(bool deserializing) : base(deserializing) { }
+    protected Ackley(StorableConstructorFlag _) : base(_) { }
     protected Ackley(Ackley original, Cloner cloner) : base(original, cloner) { }
     public Ackley() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Beale.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Beale.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Beale.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -33,5 +33,5 @@
   /// </summary>
   [Item("Beale", "Evaluates the Beale function on a given point. The optimum of this function is 0 at (3,0.5). It is implemented as described in Moré, J.J., Garbow, B., and Hillstrom, K. 1981. Testing unconstrained optimization software. ACM Transactions on Mathematical Software 7, pp. 136-140, ACM.")]
-  [StorableClass]
+  [StorableType("EC1E155C-65ED-4603-A442-357ECC1E8F3D")]
   public class Beale : SingleObjectiveTestFunction {
     /// <summary>
@@ -67,5 +67,5 @@
 
     [StorableConstructor]
-    protected Beale(bool deserializing) : base(deserializing) { }
+    protected Beale(StorableConstructorFlag _) : base(_) { }
     protected Beale(Beale original, Cloner cloner) : base(original, cloner) { }
     public Beale() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Booth.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Booth.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Booth.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("Booth", "Evaluates the Booth function on a given point. The optimum of this function is 0 at (1,3). It is implemented as described on http://www-optima.amp.i.kyoto-u.ac.jp/member/student/hedar/Hedar_files/TestGO_files/Page816.htm, last accessed April 12th, 2010.")]
-  [StorableClass]
+  [StorableType("3D0027F9-FC7B-4C34-8766-93C4A467767A")]
   public class Booth : SingleObjectiveTestFunction {
     /// <summary>
@@ -66,5 +66,5 @@
 
     [StorableConstructor]
-    protected Booth(bool deserializing) : base(deserializing) { }
+    protected Booth(StorableConstructorFlag _) : base(_) { }
     protected Booth(Booth original, Cloner cloner) : base(original, cloner) { }
     public Booth() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Griewank.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Griewank.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Griewank.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -34,5 +34,5 @@
   /// </summary>
   [Item("Griewank", "Evaluates the Griewank function on a given point. The optimum of this function is 0 at the origin. It is introduced by Griewank A.O. 1981 and implemented as described (without the modifications) in Locatelli, M. 2003. A note on the Griewank test function. Journal of Global Optimization 25, pp. 169-174, Springer.")]
-  [StorableClass]
+  [StorableType("9FA738E6-EB3C-4C64-92FE-3F7F0F823639")]
   public class Griewank : SingleObjectiveTestFunction {
     /// <summary>
@@ -68,5 +68,5 @@
 
     [StorableConstructor]
-    protected Griewank(bool deserializing) : base(deserializing) { }
+    protected Griewank(StorableConstructorFlag _) : base(_) { }
     protected Griewank(Griewank original, Cloner cloner) : base(original, cloner) { }
     public Griewank() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Levy.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Levy.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Levy.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("Levy", "Evaluates the Levy function on a given point. The optimum of this function is 0 at (1,1,...,1). It is implemented as described on http://www-optima.amp.i.kyoto-u.ac.jp/member/student/hedar/Hedar_files/TestGO_files/Page2056.htm, last accessed April 12th, 2010.")]
-  [StorableClass]
+  [StorableType("1DE79A28-70E5-45D8-817F-F1F51BCBC19D")]
   public class Levy : SingleObjectiveTestFunction {
     /// <summary>
@@ -66,5 +66,5 @@
 
     [StorableConstructor]
-    protected Levy(bool deserializing) : base(deserializing) { }
+    protected Levy(StorableConstructorFlag _) : base(_) { }
     protected Levy(Levy original, Cloner cloner) : base(original, cloner) { }
     public Levy() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Matyas.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Matyas.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Matyas.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("Matyas", "Evaluates the Matyas function on a given point. The optimum of this function is 0 at the origin. It is implemented as described on http://www-optima.amp.i.kyoto-u.ac.jp/member/student/hedar/Hedar_files/TestGO_files/Page2213.htm, last accessed April 12th, 2010.")]
-  [StorableClass]
+  [StorableType("5C665115-42A4-4E19-AA2F-59BEB973215C")]
   public class Matyas : SingleObjectiveTestFunction {
     /// <summary>
@@ -66,5 +66,5 @@
 
     [StorableConstructor]
-    protected Matyas(bool deserializing) : base(deserializing) { }
+    protected Matyas(StorableConstructorFlag _) : base(_) { }
     protected Matyas(Matyas original, Cloner cloner) : base(original, cloner) { }
     public Matyas() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Multinormal.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Multinormal.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Multinormal.cs	(revision 16723)
@@ -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.
@@ -29,10 +29,10 @@
 using HeuristicLab.Encodings.RealVectorEncoding;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 using HeuristicLab.Random;
 
 namespace HeuristicLab.Problems.TestFunctions.Evaluators {
   [Item("Multinormal", "Evaluates a random multinormal function on a given point.")]
-  [StorableClass]
+  [StorableType("55E0E22B-43BD-4408-8A78-8F918E66AFB1")]
   public class Multinormal : SingleObjectiveTestFunction {
 
@@ -91,5 +91,5 @@
 
     [StorableConstructor]
-    protected Multinormal(bool deserializing) : base(deserializing) { }
+    protected Multinormal(StorableConstructorFlag _) : base(_) { }
     protected Multinormal(Multinormal original, Cloner cloner) : base(original, cloner) { }
     public Multinormal() {
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Random.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Random.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Random.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Encodings.RealVectorEncoding;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 using HeuristicLab.Random;
 
@@ -33,5 +33,5 @@
   /// </summary
   [Item("Random", "Returns a random value in [0;1) that is independent of the inputs.")]
-  [StorableClass]
+  [StorableType("8D56248E-D85B-49C0-92C1-E1D53F729202")]
   public class Random : SingleObjectiveTestFunction {
     /// <summary>
@@ -71,5 +71,5 @@
 
     [StorableConstructor]
-    protected Random(bool deserializing) : base(deserializing) { }
+    protected Random(StorableConstructorFlag _) : base(_) { }
     protected Random(Random original, Cloner cloner) : base(original, cloner) { }
     public Random()
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Rastrigin.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Rastrigin.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Rastrigin.cs	(revision 16723)
@@ -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.
@@ -26,5 +26,5 @@
 using HeuristicLab.Encodings.RealVectorEncoding;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -34,5 +34,5 @@
   /// </summary
   [Item("Rastrigin", "Evaluates the generalized Rastrigin function y = Sum((x_i)^2 + A * (1 - Cos(2pi*x_i))) on a given point. The optimum of this function is 0 at the origin. It is implemented as described in Eiben, A.E. and Smith, J.E. 2003. Introduction to Evolutionary Computation. Natural Computing Series, Springer-Verlag Berlin Heidelberg.")]
-  [StorableClass]
+  [StorableType("DAC41E30-0487-4400-A089-4B57DFAA329A")]
   public class Rastrigin : SingleObjectiveTestFunction {
     /// <summary>
@@ -85,5 +85,5 @@
 
     [StorableConstructor]
-    protected Rastrigin(bool deserializing) : base(deserializing) { }
+    protected Rastrigin(StorableConstructorFlag _) : base(_) { }
     protected Rastrigin(Rastrigin original, Cloner cloner) : base(original, cloner) { }
     /// <summary>
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Rosenbrock.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Rosenbrock.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Rosenbrock.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -36,5 +36,5 @@
 It is unknown how many local minima there are for dimensions greater than 30.
 It is implemented as generalized Rosenbrock function for which the 2 dimensional function is a special case, as for example given in Shang, Y.-W. and Qiu, Y.-H. 2006. A Note on the Extended Rosenbrock Function. Evolutionary Computation 14, pp. 119-126, MIT Press.")]
-  [StorableClass]
+  [StorableType("20C31FDB-4F7D-4563-B955-F4F8B34DFF3E")]
   public class Rosenbrock : SingleObjectiveTestFunction {
     /// <summary>
@@ -70,5 +70,5 @@
 
     [StorableConstructor]
-    protected Rosenbrock(bool deserializing) : base(deserializing) { }
+    protected Rosenbrock(StorableConstructorFlag _) : base(_) { }
     protected Rosenbrock(Rosenbrock original, Cloner cloner) : base(original, cloner) { }
     public Rosenbrock() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Schwefel.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Schwefel.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Schwefel.cs	(revision 16723)
@@ -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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("Schwefel", "Evaluates the Schwefel function (sine root) on a given point. In the given bounds [-500;500] the optimum of this function is close to 0 at (420.968746453712,420.968746453712,...,420.968746453712). It is implemented as described in Affenzeller, M. and Wagner, S. 2005. Offspring Selection: A New Self-Adaptive Selection Scheme for Genetic Algorithms.  Ribeiro, B., Albrecht, R. F., Dobnikar, A., Pearson, D. W., and Steele, N. C. (eds.). Adaptive and Natural Computing Algorithms, pp. 218-221, Springer.")]
-  [StorableClass]
+  [StorableType("06AC1E53-E26F-4A41-9B4B-2EDC0B02B358")]
   public class Schwefel : SingleObjectiveTestFunction {
     /// <summary>
@@ -66,5 +66,5 @@
 
     [StorableConstructor]
-    protected Schwefel(bool deserializing) : base(deserializing) { }
+    protected Schwefel(StorableConstructorFlag _) : base(_) { }
     protected Schwefel(Schwefel original, Cloner cloner) : base(original, cloner) { }
     public Schwefel() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/SingleObjectiveTestFunction.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/SingleObjectiveTestFunction.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/SingleObjectiveTestFunction.cs	(revision 16723)
@@ -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,5 +24,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("Single-Objective Function", "Base class for single objective functions.")]
-  [StorableClass]
+  [StorableType("2775A51F-C97B-4D2E-9B25-9E2591A961CB")]
   public abstract class SingleObjectiveTestFunction : ParameterizedNamedItem, ISingleObjectiveTestFunction {
     /// <summary>
@@ -61,5 +61,5 @@
 
     [StorableConstructor]
-    protected SingleObjectiveTestFunction(bool deserializing) : base(deserializing) { }
+    protected SingleObjectiveTestFunction(StorableConstructorFlag _) : base(_) { }
     protected SingleObjectiveTestFunction(SingleObjectiveTestFunction original, Cloner cloner) : base(original, cloner) { }
     protected SingleObjectiveTestFunction() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Sphere.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Sphere.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Sphere.cs	(revision 16723)
@@ -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.
@@ -26,5 +26,5 @@
 using HeuristicLab.Encodings.RealVectorEncoding;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -34,5 +34,5 @@
   /// </summary>
   [Item("Sphere", "Evaluates the Sphere function y = C * ||X||^Alpha on a given point. The optimum of this function is 0 at the origin. It is implemented as described in Beyer, H.-G. and Schwefel, H.-P. 2002. Evolution Strategies - A Comprehensive Introduction Natural Computing, 1, pp. 3-52.")]
-  [StorableClass]
+  [StorableType("F40E2FAA-0491-41EA-9B25-57A87DD2AD25")]
   public class Sphere : SingleObjectiveTestFunction {
     /// <summary>
@@ -103,5 +103,5 @@
 
     [StorableConstructor]
-    protected Sphere(bool deserializing) : base(deserializing) { }
+    protected Sphere(StorableConstructorFlag _) : base(_) { }
     protected Sphere(Sphere original, Cloner cloner) : base(original, cloner) { }
     /// <summary>
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/SumSquares.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/SumSquares.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/SumSquares.cs	(revision 16723)
@@ -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,5 +24,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("SumSquares", "Evaluates the sum squares function on a given point. The optimum of this function is 0 at the origin. The Sum Squares function is defined as sum(i * x_i * x_i) for i = 1..n.")]
-  [StorableClass]
+  [StorableType("B7DFB7C7-0218-4D42-85F0-E427E99DB621")]
   public class SumSquares : SingleObjectiveTestFunction {
     /// <summary>
@@ -65,5 +65,5 @@
 
     [StorableConstructor]
-    protected SumSquares(bool deserializing) : base(deserializing) { }
+    protected SumSquares(StorableConstructorFlag _) : base(_) { }
     protected SumSquares(SumSquares original, Cloner cloner) : base(original, cloner) { }
     public SumSquares() : base() { }
Index: branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Zakharov.cs
===================================================================
--- branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Zakharov.cs	(revision 16692)
+++ branches/2521_ProblemRefactoring/HeuristicLab.Problems.TestFunctions/3.3/Functions/Zakharov.cs	(revision 16723)
@@ -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,5 +24,5 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.RealVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.TestFunctions {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("Zakharov", "Evaluates the Zakharov function on a given point. The optimum of this function is 0 at the origin. It is implemented as described in Hedar, A. & Fukushima, M. 2004. Heuristic pattern search and its hybridization with simulated annealing for nonlinear global optimization. Optimization Methods and Software 19, pp. 291-308, Taylor & Francis.")]
-  [StorableClass]
+  [StorableType("AB90340D-E5D0-4397-A5C3-8C7590F1727A")]
   public class Zakharov : SingleObjectiveTestFunction {
     /// <summary>
@@ -69,5 +69,5 @@
 
     [StorableConstructor]
-    protected Zakharov(bool deserializing) : base(deserializing) { }
+    protected Zakharov(StorableConstructorFlag _) : base(_) { }
     protected Zakharov(Zakharov original, Cloner cloner) : base(original, cloner) { }
     public Zakharov() : base() { }
