Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Analyzers/BestOrienteeringSolutionAnalyzer.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Analyzers/BestOrienteeringSolutionAnalyzer.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Analyzers/BestOrienteeringSolutionAnalyzer.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,8 +28,8 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
-  [StorableClass]
+  [StorableType("6E07CAD7-20ED-4507-B2BB-B7393D9BBB95")]
   public sealed class BestOrienteeringSolutionAnalyzer : SingleSuccessorOperator, IAnalyzer {
     public bool EnabledByDefault {
@@ -79,5 +79,5 @@
 
     [StorableConstructor]
-    private BestOrienteeringSolutionAnalyzer(bool deserializing) : base(deserializing) { }
+    private BestOrienteeringSolutionAnalyzer(StorableConstructorFlag _) : base(_) { }
     private BestOrienteeringSolutionAnalyzer(BestOrienteeringSolutionAnalyzer original, Cloner cloner) : base(original, cloner) { }
     public override IDeepCloneable Clone(Cloner cloner) {
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Creators/GreedyOrienteeringTourCreator.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Creators/GreedyOrienteeringTourCreator.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Creators/GreedyOrienteeringTourCreator.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.
@@ -27,5 +27,5 @@
 using HeuristicLab.Encodings.IntegerVectorEncoding;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
@@ -39,5 +39,5 @@
   /// </summary>
   [Item("GreedyOrienteeringTourCreator", @"Implements the solution creation procedure described in Schilde M., Doerner K.F., Hartl R.F., Kiechle G. 2009. Metaheuristics for the bi-objective orienteering problem. Swarm Intelligence, Volume 3, Issue 3, pp 179-201.")]
-  [StorableClass]
+  [StorableType("FB68525D-DD53-4BE7-A6B4-EC54E6FD0E64")]
   public sealed class GreedyOrienteeringTourCreator : IntegerVectorCreator, IOrienteeringSolutionCreator {
     public override bool CanChangeName { get { return false; } }
@@ -65,6 +65,5 @@
 
     [StorableConstructor]
-    private GreedyOrienteeringTourCreator(bool deserializing)
-      : base(deserializing) { }
+    private GreedyOrienteeringTourCreator(StorableConstructorFlag _) : base(_) { }
     private GreedyOrienteeringTourCreator(GreedyOrienteeringTourCreator original, Cloner cloner)
       : base(original, cloner) { }
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/DistanceMatrix.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/DistanceMatrix.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/DistanceMatrix.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.
@@ -25,5 +25,5 @@
 using HeuristicLab.Core;
 using HeuristicLab.Data;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
@@ -32,8 +32,8 @@
   /// </summary>
   [Item("DistanceMatrix", "Represents a distance matrix of a Orienteering Problem.")]
-  [StorableClass]
+  [StorableType("8318D250-3F2D-4A4D-9833-AB4EA453A3A4")]
   public sealed class DistanceMatrix : DoubleMatrix {
     [StorableConstructor]
-    private DistanceMatrix(bool deserializing) : base(deserializing) { }
+    private DistanceMatrix(StorableConstructorFlag _) : base(_) { }
     private DistanceMatrix(DistanceMatrix original, Cloner cloner) {
       throw new NotSupportedException("Distance matrices cannot be cloned.");
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Evaluators/OrienteeringEvaluator.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Evaluators/OrienteeringEvaluator.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Evaluators/OrienteeringEvaluator.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.
@@ -27,9 +27,9 @@
 using HeuristicLab.Operators;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
   [Item("OrienteeringEvaluator", "Operator to evaluate a solution to the orienteering problem.")]
-  [StorableClass]
+  [StorableType("ACAC24FD-9FBC-4722-BFB0-21BFEF02C2D1")]
   public class OrienteeringEvaluator : InstrumentedOperator, IOrienteeringEvaluator {
 
@@ -62,6 +62,5 @@
 
     [StorableConstructor]
-    protected OrienteeringEvaluator(bool deserializing)
-      : base(deserializing) {
+    protected OrienteeringEvaluator(StorableConstructorFlag _) : base(_) {
     }
     protected OrienteeringEvaluator(OrienteeringEvaluator original, Cloner cloner)
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/HeuristicLab.Problems.Orienteering-3.3.csproj
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/HeuristicLab.Problems.Orienteering-3.3.csproj	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/HeuristicLab.Problems.Orienteering-3.3.csproj	(revision 16565)
@@ -10,5 +10,5 @@
     <RootNamespace>HeuristicLab.Problems.Orienteering</RootNamespace>
     <AssemblyName>HeuristicLab.Problems.Orienteering-3.3</AssemblyName>
-    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
     <FileAlignment>512</FileAlignment>
     <TargetFrameworkProfile />
@@ -83,8 +83,17 @@
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="Google.Protobuf, Version=3.6.1.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
+      <HintPath>..\..\packages\Google.Protobuf.3.6.1\lib\net45\Google.Protobuf.dll</HintPath>
+    </Reference>
+    <Reference Include="HEAL.Attic, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
+      <HintPath>..\..\packages\HEAL.Attic.1.0.0-pre01\lib\netstandard2.0\HEAL.Attic.dll</HintPath>
+    </Reference>
     <Reference Include="Microsoft.CSharp" />
     <Reference Include="System" />
     <Reference Include="System.Core" />
     <Reference Include="System.Drawing" />
+    <Reference Include="System.Drawing.Common, Version=4.0.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
+      <HintPath>..\..\packages\System.Drawing.Common.4.5.1\lib\net461\System.Drawing.Common.dll</HintPath>
+    </Reference>
   </ItemGroup>
   <ItemGroup>
@@ -105,4 +114,5 @@
   <ItemGroup>
     <None Include="HeuristicLab.snk" />
+    <None Include="packages.config" />
     <None Include="Plugin.cs.frame" />
     <None Include="Properties\AssemblyInfo.cs.frame" />
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Improvers/OrienteeringLocalImprovementOperator.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Improvers/OrienteeringLocalImprovementOperator.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Improvers/OrienteeringLocalImprovementOperator.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.
@@ -29,5 +29,5 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
@@ -38,5 +38,5 @@
   /// </summary>
   [Item("OrienteeringLocalImprovementOperator", @"Implements the iterative improvement procedure described in Schilde M., Doerner K.F., Hartl R.F., Kiechle G. 2009. Metaheuristics for the bi-objective orienteering problem. Swarm Intelligence, Volume 3, Issue 3, pp 179-201.")]
-  [StorableClass]
+  [StorableType("92FA69B3-F243-4D12-A67A-AA1D7EBCD302")]
   public sealed class OrienteeringLocalImprovementOperator : SingleSuccessorOperator, ILocalImprovementOperator {
 
@@ -89,5 +89,5 @@
 
     [StorableConstructor]
-    private OrienteeringLocalImprovementOperator(bool deserializing) : base(deserializing) { }
+    private OrienteeringLocalImprovementOperator(StorableConstructorFlag _) : base(_) { }
     private OrienteeringLocalImprovementOperator(OrienteeringLocalImprovementOperator original, Cloner cloner)
       : base(original, cloner) {
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Interfaces/IOrienteeringEvaluator.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Interfaces/IOrienteeringEvaluator.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Interfaces/IOrienteeringEvaluator.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,6 +24,8 @@
 using HeuristicLab.Encodings.IntegerVectorEncoding;
 using HeuristicLab.Optimization;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
+  [StorableType("4F942163-D321-4935-BF2E-780193BE9FFE")]
   public interface IOrienteeringEvaluator : ISingleObjectiveEvaluator {
     ILookupParameter<IntegerVector> IntegerVectorParameter { get; }
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Interfaces/IOrienteeringSolutionCreator.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Interfaces/IOrienteeringSolutionCreator.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Interfaces/IOrienteeringSolutionCreator.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.
@@ -23,6 +23,8 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.IntegerVectorEncoding;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
+  [StorableType("7E0D4527-4D8C-4FBA-BB3A-26F20B6463ED")]
   public interface IOrienteeringSolutionCreator : IIntegerVectorCreator {
     ILookupParameter<DistanceMatrix> DistanceMatrixParameter { get; }
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringEvaluationResult.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringEvaluationResult.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringEvaluationResult.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.
@@ -21,10 +21,21 @@
 
 using HeuristicLab.Data;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
+  [StorableType("A7F34447-A3C9-4FB5-B52F-5143434B4084")]
   public class OrienteeringEvaluationResult {
+    [Storable]
     public DoubleValue Quality;
+    [Storable]
     public DoubleValue Penalty;
+    [Storable]
     public DoubleValue Distance;
+
+    [StorableConstructor]
+    protected OrienteeringEvaluationResult(StorableConstructorFlag _) {
+    }
+
+    public OrienteeringEvaluationResult() { }
   }
 }
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringProblem.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringProblem.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringProblem.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.
@@ -31,5 +31,5 @@
 using HeuristicLab.Optimization.Operators;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 using HeuristicLab.Problems.Instances;
 using HeuristicLab.Problems.Instances.Types;
@@ -38,5 +38,5 @@
   [Item("Orienteering Problem (OP)", "Represents a single-objective Orienteering Problem.")]
   [Creatable(CreatableAttribute.Categories.CombinatorialProblems, Priority = 115)]
-  [StorableClass]
+  [StorableType("0B8DB4A4-F183-4368-86C6-C51289B183D2")]
   public sealed class OrienteeringProblem
     : SingleObjectiveHeuristicOptimizationProblem<IOrienteeringEvaluator, IOrienteeringSolutionCreator>,
@@ -113,6 +113,5 @@
 
     [StorableConstructor]
-    private OrienteeringProblem(bool deserializing)
-      : base(deserializing) {
+    private OrienteeringProblem(StorableConstructorFlag _) : base(_) {
     }
     private OrienteeringProblem(OrienteeringProblem original, Cloner cloner)
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringSolution.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringSolution.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/OrienteeringSolution.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.
@@ -26,9 +26,9 @@
 using HeuristicLab.Data;
 using HeuristicLab.Encodings.IntegerVectorEncoding;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
   [Item("OrienteeringSolution", "Represents a Orienteering solution which can be visualized in the GUI.")]
-  [StorableClass]
+  [StorableType("BC58ED08-B9A7-40F3-B8E0-A6B33AA993F4")]
   public sealed class OrienteeringSolution : Item {
     public static new Image StaticItemImage {
@@ -142,6 +142,5 @@
 
     [StorableConstructor]
-    private OrienteeringSolution(bool deserializing)
-      : base(deserializing) { }
+    private OrienteeringSolution(StorableConstructorFlag _) : base(_) { }
     private OrienteeringSolution(OrienteeringSolution original, Cloner cloner)
       : base(original, cloner) {
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Plugin.cs.frame
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Plugin.cs.frame	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Plugin.cs.frame	(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.
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Properties/AssemblyInfo.cs.frame
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Properties/AssemblyInfo.cs.frame	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Properties/AssemblyInfo.cs.frame	(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.
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/Shakers/OrienteeringShakingOperator.cs
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/Shakers/OrienteeringShakingOperator.cs	(revision 16430)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/Shakers/OrienteeringShakingOperator.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.
@@ -29,5 +29,5 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Problems.Orienteering {
@@ -48,5 +48,5 @@
   /// </summary>
   [Item("OrienteeringShakingOperator", @"Implements the shaking procedure described in Schilde M., Doerner K.F., Hartl R.F., Kiechle G. 2009. Metaheuristics for the bi-objective orienteering problem. Swarm Intelligence, Volume 3, Issue 3, pp 179-201.")]
-  [StorableClass]
+  [StorableType("D6654BD1-63CD-4057-89C8-36D1EE6EA7DF")]
   public sealed class OrienteeringShakingOperator : SingleSuccessorOperator, IMultiNeighborhoodShakingOperator, IStochasticOperator {
 
@@ -89,5 +89,5 @@
 
     [StorableConstructor]
-    private OrienteeringShakingOperator(bool deserializing) : base(deserializing) { }
+    private OrienteeringShakingOperator(StorableConstructorFlag _) : base(_) { }
     private OrienteeringShakingOperator(OrienteeringShakingOperator original, Cloner cloner)
       : base(original, cloner) {
@@ -241,4 +241,5 @@
     }
 
+    [StorableType("8E380F4E-D9C2-4671-ABF8-A28E14B22BA2")]
     private class SavingInfo {
       public int Index;
Index: trunk/HeuristicLab.Problems.Orienteering/3.3/packages.config
===================================================================
--- trunk/HeuristicLab.Problems.Orienteering/3.3/packages.config	(revision 16565)
+++ trunk/HeuristicLab.Problems.Orienteering/3.3/packages.config	(revision 16565)
@@ -0,0 +1,6 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="Google.Protobuf" version="3.6.1" targetFramework="net461" />
+  <package id="HEAL.Attic" version="1.0.0-pre01" targetFramework="net461" />
+  <package id="System.Drawing.Common" version="4.5.1" targetFramework="net461" />
+</packages>
