Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ConstrainedValueParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ConstrainedValueParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ConstrainedValueParameter.cs	(revision 16462)
@@ -25,5 +25,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("ConstrainedValueParameter", "A parameter whose value has to be chosen from a set of valid values.")]
-  [StorableClass]
+  [StorableType("A9B43259-2687-4AE8-9803-B58CE01B81EE")]
   public class ConstrainedValueParameter<T> : OptionalConstrainedValueParameter<T> where T : class, IItem {
     public override T Value {
@@ -43,5 +43,5 @@
 
     [StorableConstructor]
-    protected ConstrainedValueParameter(bool deserializing) : base(deserializing) { }
+    protected ConstrainedValueParameter(StorableConstructorFlag _) : base(_) { }
     protected ConstrainedValueParameter(ConstrainedValueParameter<T> original, Cloner cloner) : base(original, cloner) { }
     public ConstrainedValueParameter() : base() { }
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/FixedValueParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/FixedValueParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/FixedValueParameter.cs	(revision 16462)
@@ -23,5 +23,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -30,5 +30,5 @@
   /// </summary>
   [Item("FixedValueParameter", "A parameter whose value is defined in the parameter itself and cannot be set.")]
-  [StorableClass]
+  [StorableType("7787B99D-5F32-4639-B47A-76CB4D204392")]
   public class FixedValueParameter<T> : ValueParameter<T>, IFixedValueParameter<T> where T : class,IItem, new() {
 
@@ -41,5 +41,5 @@
 
     [StorableConstructor]
-    protected FixedValueParameter(bool deserializing) : base(deserializing) { }
+    protected FixedValueParameter(StorableConstructorFlag _) : base(_) { }
     protected FixedValueParameter(FixedValueParameter<T> original, Cloner cloner) : base(original, cloner) { }
 
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/HeuristicLab.Parameters-3.3.csproj
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/HeuristicLab.Parameters-3.3.csproj	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/HeuristicLab.Parameters-3.3.csproj	(revision 16462)
@@ -108,5 +108,5 @@
       <HintPath>..\..\packages\Google.Protobuf.3.6.1\lib\net45\Google.Protobuf.dll</HintPath>
     </Reference>
-    <Reference Include="HEAL.Fossil, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+    <Reference Include="HEAL.Fossil, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
       <HintPath>..\..\packages\HEAL.Fossil.1.0.0\lib\netstandard2.0\HEAL.Fossil.dll</HintPath>
     </Reference>
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/LookupParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/LookupParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/LookupParameter.cs	(revision 16462)
@@ -24,5 +24,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("LookupParameter", "A parameter whose value is retrieved from or written to a scope.")]
-  [StorableClass]
+  [StorableType("84FE5F33-94B8-4E30-B1CB-CD15314FB83B")]
   public class LookupParameter<T> : Parameter, IStatefulItem, ILookupParameter<T> where T : class, IItem {
     [Storable]
@@ -78,6 +78,5 @@
 
     [StorableConstructor]
-    protected LookupParameter(bool deserializing)
-      : base(deserializing) {
+    protected LookupParameter(StorableConstructorFlag _) : base(_) {
       cachedActualValues = new Lazy<ThreadLocal<IItem>>(() => { return new ThreadLocal<IItem>(); }, LazyThreadSafetyMode.ExecutionAndPublication);
       executionContexts = new Lazy<ThreadLocal<IExecutionContext>>(() => { return new ThreadLocal<IExecutionContext>(); }, LazyThreadSafetyMode.ExecutionAndPublication);
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OperatorParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OperatorParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OperatorParameter.cs	(revision 16462)
@@ -22,5 +22,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -29,8 +29,8 @@
   /// </summary>
   [Item("OperatorParameter", "A parameter which represents an operator.")]
-  [StorableClass]
+  [StorableType("59C86C8F-CAE1-45FE-A17C-837925284D93")]
   public class OperatorParameter : OptionalValueParameter<IOperator> {
     [StorableConstructor]
-    protected OperatorParameter(bool deserializing) : base(deserializing) { }
+    protected OperatorParameter(StorableConstructorFlag _) : base(_) { }
     protected OperatorParameter(OperatorParameter original, Cloner cloner) : base(original, cloner) { }
     public OperatorParameter() : base("Anonymous") { }
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OptionalConstrainedValueParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OptionalConstrainedValueParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OptionalConstrainedValueParameter.cs	(revision 16462)
@@ -25,5 +25,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("OptionalConstrainedValueParameter", "A parameter whose value has to be chosen from a set of valid values or is null.")]
-  [StorableClass]
+  [StorableType("9B2BFAE8-CD6E-499C-83A0-401B6CEE3A08")]
   public class OptionalConstrainedValueParameter<T> : Parameter, IConstrainedValueParameter<T> where T : class, IItem {
     public override Image ItemImage {
@@ -88,5 +88,5 @@
     #region Constructors
     [StorableConstructor]
-    protected OptionalConstrainedValueParameter(bool deserializing) : base(deserializing) { }
+    protected OptionalConstrainedValueParameter(StorableConstructorFlag _) : base(_) { }
     protected OptionalConstrainedValueParameter(OptionalConstrainedValueParameter<T> original, Cloner cloner)
       : base(original, cloner) {
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OptionalValueParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OptionalValueParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/OptionalValueParameter.cs	(revision 16462)
@@ -24,5 +24,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("OptionalValueParameter", "A parameter whose value is defined in the parameter itself or is null.")]
-  [StorableClass]
+  [StorableType("1A825EE0-3A72-458C-B621-7CE989EE2F0D")]
   public class OptionalValueParameter<T> : Parameter, IValueParameter<T> where T : class, IItem {
     public override Image ItemImage {
@@ -104,5 +104,5 @@
     #region Constructors
     [StorableConstructor]
-    protected OptionalValueParameter(bool deserializing) : base(deserializing) { }
+    protected OptionalValueParameter(StorableConstructorFlag _) : base(_) { }
     protected OptionalValueParameter(OptionalValueParameter<T> original, Cloner cloner)
       : base(original, cloner) {
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/Parameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/Parameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/Parameter.cs	(revision 16462)
@@ -24,5 +24,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("Parameter", "A base class for parameters.")]
-  [StorableClass]
+  [StorableType("EB8A33BD-466A-4035-8544-8F86E5FDA458")]
   public abstract class Parameter : NamedItem, IParameter {
     public override Image ItemImage {
@@ -72,6 +72,5 @@
 
     [StorableConstructor]
-    protected Parameter(bool deserializing)
-      : base(deserializing) {
+    protected Parameter(StorableConstructorFlag _) : base(_) {
     }
     protected Parameter(Parameter original, Cloner cloner)
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ScopeParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ScopeParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ScopeParameter.cs	(revision 16462)
@@ -21,8 +21,7 @@
 
 using System;
-using System.Threading;
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -31,5 +30,5 @@
   /// </summary>
   [Item("ScopeParameter", "A parameter which represents the current scope.")]
-  [StorableClass]
+  [StorableType("6A25C2F9-B184-4870-88B4-C16BF8534BD4")]
   public class ScopeParameter : LookupParameter<IScope> {
     public new IScope ActualValue {
@@ -39,5 +38,5 @@
 
     [StorableConstructor]
-    protected ScopeParameter(bool deserializing) : base(deserializing) { }
+    protected ScopeParameter(StorableConstructorFlag _) : base(_) { }
     protected ScopeParameter(ScopeParameter original, Cloner cloner) : base(original, cloner) { }
     public ScopeParameter()
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ScopeTreeLookupParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ScopeTreeLookupParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ScopeTreeLookupParameter.cs	(revision 16462)
@@ -25,5 +25,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -32,5 +32,5 @@
   /// </summary>
   [Item("ScopeTreeLookupParameter", "A generic parameter representing instances of type T which are collected from or written to scope tree.")]
-  [StorableClass]
+  [StorableType("51F36637-C22C-4CDC-B34B-F49CA7896E35")]
   public class ScopeTreeLookupParameter<T> : LookupParameter<ItemArray<T>>, IScopeTreeLookupParameter<T> where T : class, IItem {
     [Storable]
@@ -48,5 +48,5 @@
 
     [StorableConstructor]
-    protected ScopeTreeLookupParameter(bool deserializing) : base(deserializing) { }
+    protected ScopeTreeLookupParameter(StorableConstructorFlag _) : base(_) { }
     protected ScopeTreeLookupParameter(ScopeTreeLookupParameter<T> original, Cloner cloner)
       : base(original, cloner) {
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ValueLookupParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ValueLookupParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ValueLookupParameter.cs	(revision 16462)
@@ -24,5 +24,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("ValueLookupParameter", "A parameter whose value is either defined in the parameter itself or is retrieved from or written to a scope.")]
-  [StorableClass]
+  [StorableType("B34BB41A-CF50-4275-9BCD-1861EBA7C58F")]
   public class ValueLookupParameter<T> : LookupParameter<T>, IValueLookupParameter<T> where T : class, IItem {
     public override Image ItemImage {
@@ -80,5 +80,5 @@
     #region Constructors
     [StorableConstructor]
-    protected ValueLookupParameter(bool deserializing) : base(deserializing) { }
+    protected ValueLookupParameter(StorableConstructorFlag _) : base(_) { }
     protected ValueLookupParameter(ValueLookupParameter<T> original, Cloner cloner)
       : base(original, cloner) {
Index: branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ValueParameter.cs
===================================================================
--- branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ValueParameter.cs	(revision 16454)
+++ branches/2520_PersistenceReintegration/HeuristicLab.Parameters/3.3/ValueParameter.cs	(revision 16462)
@@ -24,5 +24,5 @@
 using HeuristicLab.Common;
 using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Fossil;
 
 namespace HeuristicLab.Parameters {
@@ -31,5 +31,5 @@
   /// </summary>
   [Item("ValueParameter", "A parameter whose value is defined in the parameter itself.")]
-  [StorableClass]
+  [StorableType("CB9B83B6-DE2B-45CC-AB0B-C551E1A6E0BD")]
   public class ValueParameter<T> : OptionalValueParameter<T> where T : class, IItem {
     public override T Value {
@@ -42,5 +42,5 @@
 
     [StorableConstructor]
-    protected ValueParameter(bool deserializing) : base(deserializing) { }
+    protected ValueParameter(StorableConstructorFlag _) : base(_) { }
     protected ValueParameter(ValueParameter<T> original, Cloner cloner) : base(original, cloner) { }
 
