Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteAdaptiveSamplingAlgorithm.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteAdaptiveSamplingAlgorithm.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteAdaptiveSamplingAlgorithm.cs	(revision 17332)
@@ -3,4 +3,5 @@
 using System.Linq;
 using System.Threading;
+using HEAL.Attic;
 using HeuristicLab.Algorithms.DataAnalysis;
 using HeuristicLab.Analysis;
@@ -13,5 +14,4 @@
 using HeuristicLab.Optimization.Operators;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 using HeuristicLab.Problems.DataAnalysis;
 using HeuristicLab.Random;
@@ -20,6 +20,6 @@
   [Item("Discrete Adaptive Sampling Algorithm (D-EGO)", "A discrete adaptive sampling algorithm.")]
   [Creatable(CreatableAttribute.Categories.SingleSolutionAlgorithms, Priority = 150)]
-  [StorableClass]
-  public class DiscreteAdaptiveSamplingAlgorithm : HeuristicOptimizationEngineAlgorithm, IStorableContent {
+    [StorableType("39e06191-714c-44e0-8b57-a5a64f072371")]
+    public class DiscreteAdaptiveSamplingAlgorithm : HeuristicOptimizationEngineAlgorithm, IStorableContent {
     public string Filename { get; set; }
 
@@ -115,5 +115,5 @@
     #region Constructors
     [StorableConstructor]
-    protected DiscreteAdaptiveSamplingAlgorithm(bool deserializing) : base(deserializing) { }
+    protected DiscreteAdaptiveSamplingAlgorithm(StorableConstructorFlag deserializing) : base(deserializing) { }
     [StorableHook(HookType.AfterDeserialization)]
     private void AfterDeserialization() {
Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteCorrelationAnalyzer.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteCorrelationAnalyzer.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteCorrelationAnalyzer.cs	(revision 17332)
@@ -22,4 +22,5 @@
 using System.Collections.Generic;
 using System.Linq;
+using HEAL.Attic;
 using HeuristicLab.Analysis;
 using HeuristicLab.Common;
@@ -30,11 +31,10 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 using HeuristicLab.Problems.DataAnalysis;
 
 namespace HeuristicLab.Algorithms.EGO {
   [Item("DiscreteCorrelationAnalyzer", "Analyzes the correlation between perdictions and actual fitness values")]
-  [StorableClass]
-  public class DiscreteCorrelationAnalyzer : SingleSuccessorOperator, IAnalyzer, IResultsOperator {
+    [StorableType("1657262e-1ada-4672-a073-bc8b144ecf42")]
+    public class DiscreteCorrelationAnalyzer : SingleSuccessorOperator, IAnalyzer, IResultsOperator {
     public override bool CanChangeName => true;
     public bool EnabledByDefault => false;
@@ -49,5 +49,5 @@
 
     [StorableConstructor]
-    protected DiscreteCorrelationAnalyzer(bool deserializing) : base(deserializing) { }
+    protected DiscreteCorrelationAnalyzer(StorableConstructorFlag deserializing) : base(deserializing) { }
     protected DiscreteCorrelationAnalyzer(DiscreteCorrelationAnalyzer original, Cloner cloner) : base(original, cloner) { }
     public DiscreteCorrelationAnalyzer() {
Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteEfficientGlobalOptimizationAlgorithm.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteEfficientGlobalOptimizationAlgorithm.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteEfficientGlobalOptimizationAlgorithm.cs	(revision 17332)
@@ -24,6 +24,6 @@
 using System.Linq;
 using System.Threading;
+using HEAL.Attic;
 using HeuristicLab.Algorithms.DataAnalysis;
-using HeuristicLab.Algorithms.OffspringSelectionGeneticAlgorithm;
 using HeuristicLab.Analysis;
 using HeuristicLab.Common;
@@ -33,5 +33,4 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 using HeuristicLab.Problems.DataAnalysis;
 using HeuristicLab.Problems.Instances;
@@ -39,6 +38,6 @@
 
 namespace HeuristicLab.Algorithms.EGO {
-  [StorableClass]
-  [Creatable(CreatableAttribute.Categories.Algorithms, Priority = 95)]
+    [StorableType("26f99b28-75f1-4186-9c8b-b5c0548ea768")]
+    [Creatable(CreatableAttribute.Categories.Algorithms, Priority = 95)]
   [Item("DiscreteEfficientGlobalOptimizationAlgorithm", "Solves a problem by sequentially learning a model, solving a subproblem on the model and evaluating the best found solution for this subproblem.")]
   public class DiscreteEfficientGlobalOptimizationAlgorithm : BasicAlgorithm, ISurrogateAlgorithm<IntegerVector> {
@@ -158,5 +157,5 @@
     #region HLConstructors
     [StorableConstructor]
-    protected DiscreteEfficientGlobalOptimizationAlgorithm(bool deserializing) : base(deserializing) { }
+    protected DiscreteEfficientGlobalOptimizationAlgorithm(StorableConstructorFlag deserializing) : base(deserializing) { }
     [StorableHook(HookType.AfterDeserialization)]
     protected void AfterDeseialization() {
Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteEvaluatedSolutionsAnalyzer.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteEvaluatedSolutionsAnalyzer.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteEvaluatedSolutionsAnalyzer.cs	(revision 17332)
@@ -22,4 +22,5 @@
 using System.Collections.Generic;
 using System.Linq;
+using HEAL.Attic;
 using HeuristicLab.Analysis;
 using HeuristicLab.Common;
@@ -30,10 +31,9 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 
 namespace HeuristicLab.Algorithms.EGO {
   [Item("DiscreteEvaluatedSolutionsAnalyzer", "Displays the evaluated Solutions for one or two dimensional problems")]
-  [StorableClass]
-  public class DiscreteEvaluatedSolutionsAnalyzer : SingleSuccessorOperator, IAnalyzer, IResultsOperator {
+    [StorableType("7a785e19-b120-4037-8acb-9223f19a2401")]
+    public class DiscreteEvaluatedSolutionsAnalyzer : SingleSuccessorOperator, IAnalyzer, IResultsOperator {
     public override bool CanChangeName => true;
     public bool EnabledByDefault => false;
@@ -50,5 +50,5 @@
 
     [StorableConstructor]
-    protected DiscreteEvaluatedSolutionsAnalyzer(bool deserializing) : base(deserializing) { }
+    protected DiscreteEvaluatedSolutionsAnalyzer(StorableConstructorFlag deserializing) : base(deserializing) { }
     protected DiscreteEvaluatedSolutionsAnalyzer(DiscreteEvaluatedSolutionsAnalyzer original, Cloner cloner) : base(original, cloner) { }
     public DiscreteEvaluatedSolutionsAnalyzer() {
Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteInfillProblem.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteInfillProblem.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteInfillProblem.cs	(revision 17332)
@@ -23,4 +23,5 @@
 using System.Collections.Generic;
 using System.Linq;
+using HEAL.Attic;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
@@ -29,10 +30,9 @@
 using HeuristicLab.Encodings.RealVectorEncoding;
 using HeuristicLab.Optimization;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 using HeuristicLab.Problems.DataAnalysis;
 
 namespace HeuristicLab.Algorithms.EGO {
-  [StorableClass]
-  [Item("DiscreteInfillProblem", "A problem for finding the most interesing potential new sampling Points by optimizing some InfillCriterion")]
+    [StorableType("7a98818c-8434-4a33-8230-2b2486772af6")]
+    [Item("DiscreteInfillProblem", "A problem for finding the most interesing potential new sampling Points by optimizing some InfillCriterion")]
   public sealed class DiscreteInfillProblem : SingleObjectiveBasicProblem<IntegerVectorEncoding> {
 
@@ -59,5 +59,5 @@
     #region Constructors
     [StorableConstructor]
-    private DiscreteInfillProblem(bool deserializing) : base(deserializing) { }
+    private DiscreteInfillProblem(StorableConstructorFlag deserializing) : base(deserializing) { }
     private DiscreteInfillProblem(DiscreteInfillProblem original, Cloner cloner) : base(original, cloner) {
       infillCriterion = cloner.Clone(original.infillCriterion);
Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteInfillSolver.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteInfillSolver.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteInfillSolver.cs	(revision 17332)
@@ -24,4 +24,5 @@
 using System.Linq;
 using System.Collections.Generic;
+using HEAL.Attic;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
@@ -30,11 +31,10 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 using HeuristicLab.Problems.DataAnalysis;
 
 namespace HeuristicLab.Algorithms.EGO {
   [Item("DiscreteInfillSolver", "An IntegerVectorCreator that creates candidates by optimizing an infill-subproblem")]
-  [StorableClass]
-  public class DiscreteInfillSolver : IntegerVectorCreator, ICancellableOperator {
+    [StorableType("50004a0b-b3aa-438c-bd80-bd5ff1763683")]
+    public class DiscreteInfillSolver : IntegerVectorCreator, ICancellableOperator {
 
     public ILookupParameter<IAlgorithm> InfillOptimizationAlgorithmParamter => (ILookupParameter<IAlgorithm>)Parameters["InfillAlgorithm"];
@@ -48,5 +48,5 @@
 
     [StorableConstructor]
-    protected DiscreteInfillSolver(bool deserializing) : base(deserializing) { }
+    protected DiscreteInfillSolver(StorableConstructorFlag deserializing) : base(deserializing) { }
     protected DiscreteInfillSolver(DiscreteInfillSolver original, Cloner cloner) : base(original, cloner) { }
     public DiscreteInfillSolver() {
Index: branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteSampleCollector.cs
===================================================================
--- branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteSampleCollector.cs	(revision 16106)
+++ branches/2745_EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteSampleCollector.cs	(revision 17332)
@@ -22,4 +22,5 @@
 using System.Collections.Generic;
 using System.Linq;
+using HEAL.Attic;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
@@ -28,11 +29,10 @@
 using HeuristicLab.Operators;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
 using HeuristicLab.Problems.DataAnalysis;
 
 namespace HeuristicLab.Algorithms.EGO {
   [Item("DiscreteSampleCollector", "Collects IntegerVectors into a modifiablbe dataset")]
-  [StorableClass]
-  public class DiscreteSampleCollector : InstrumentedOperator {
+    [StorableType("b8638624-f79f-41e6-a837-d70824c00082")]
+    public class DiscreteSampleCollector : InstrumentedOperator {
     public override bool CanChangeName => true;
 
@@ -42,5 +42,5 @@
 
     [StorableConstructor]
-    protected DiscreteSampleCollector(bool deserializing) : base(deserializing) { }
+    protected DiscreteSampleCollector(StorableConstructorFlag deserializing) : base(deserializing) { }
     protected DiscreteSampleCollector(DiscreteSampleCollector original, Cloner cloner) : base(original, cloner) { }
     public DiscreteSampleCollector() {
