Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/HeuristicLab.Algorithms.TabuSearch-3.3.csproj
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/HeuristicLab.Algorithms.TabuSearch-3.3.csproj	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/HeuristicLab.Algorithms.TabuSearch-3.3.csproj	(revision 17097)
@@ -11,5 +11,5 @@
     <RootNamespace>HeuristicLab.Algorithms.TabuSearch</RootNamespace>
     <AssemblyName>HeuristicLab.Algorithms.TabuSearch-3.3</AssemblyName>
-    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
+    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
     <TargetFrameworkProfile>
     </TargetFrameworkProfile>
@@ -99,4 +99,10 @@
   </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-pre02\lib\net461\HEAL.Attic.dll</HintPath>
+    </Reference>
     <Reference Include="System" />
     <Reference Include="System.Core">
@@ -104,4 +110,7 @@
     </Reference>
     <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>
     <Reference Include="System.Xml.Linq">
       <RequiredTargetFramework>3.5</RequiredTargetFramework>
@@ -114,4 +123,5 @@
   </ItemGroup>
   <ItemGroup>
+    <None Include="packages.config" />
     <None Include="Plugin.cs.frame" />
     <Compile Include="Plugin.cs" />
Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/Plugin.cs.frame
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/Plugin.cs.frame	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/Plugin.cs.frame	(revision 17097)
@@ -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: stable/HeuristicLab.Algorithms.TabuSearch/3.3/Properties/AssemblyInfo.cs.frame
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/Properties/AssemblyInfo.cs.frame	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/Properties/AssemblyInfo.cs.frame	(revision 17097)
@@ -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: stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuListCreator.cs
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuListCreator.cs	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuListCreator.cs	(revision 17097)
@@ -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.Operators;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Algorithms.TabuSearch {
   [Item("TabuListCreator", "An operator that creates a new empty tabu list. It can also replace an existing tabu list with a new empty one.")]
-  [StorableClass]
+  [StorableType("F199F8AB-35BA-45EB-A7E9-F6352FC053E3")]
   public class TabuListCreator : SingleSuccessorOperator {
     public ValueLookupParameter<ItemList<IItem>> TabuListParameter {
@@ -41,5 +41,5 @@
 
     [StorableConstructor]
-    protected TabuListCreator(bool deserializing) : base(deserializing) { }
+    protected TabuListCreator(StorableConstructorFlag _) : base(_) { }
     protected TabuListCreator(TabuListCreator original, Cloner cloner)
       : base(original, cloner) {
Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuNeighborhoodAnalyzer.cs
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuNeighborhoodAnalyzer.cs	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuNeighborhoodAnalyzer.cs	(revision 17097)
@@ -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,8 +27,8 @@
 using HeuristicLab.Optimization;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 
 namespace HeuristicLab.Algorithms.TabuSearch {
-  [StorableClass]
+  [StorableType("C5A3D76E-4E1F-472A-8727-D8506F3BEFEA")]
   [Item("TabuNeighborhoodAnalyzer", "Analyzes the tabu neighborhood")]
   public class TabuNeighborhoodAnalyzer : SingleSuccessorOperator, IAnalyzer {
@@ -48,5 +48,5 @@
 
     [StorableConstructor]
-    protected TabuNeighborhoodAnalyzer(bool deserializing) : base(deserializing) { }
+    protected TabuNeighborhoodAnalyzer(StorableConstructorFlag _) : base(_) { }
     protected TabuNeighborhoodAnalyzer(TabuNeighborhoodAnalyzer original, Cloner cloner)
       : base(original, cloner) {
Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSearch.cs
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSearch.cs	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSearch.cs	(revision 17097)
@@ -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.Random;
 
@@ -37,5 +37,5 @@
   [Item("Tabu Search (TS)", "A tabu search algorithm.")]
   [Creatable(CreatableAttribute.Categories.SingleSolutionAlgorithms, Priority = 120)]
-  [StorableClass]
+  [StorableType("CF028C58-BE6D-4F74-96DD-B1E2CFAD5AA0")]
   public sealed class TabuSearch : HeuristicOptimizationEngineAlgorithm, IStorableContent {
     public string Filename { get; set; }
@@ -205,5 +205,5 @@
     }
     [StorableConstructor]
-    private TabuSearch(bool deserializing) : base(deserializing) { }
+    private TabuSearch(StorableConstructorFlag _) : base(_) { }
     [StorableHook(HookType.AfterDeserialization)]
     private void AfterDeserialization() {
Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSearchMainLoop.cs
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSearchMainLoop.cs	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSearchMainLoop.cs	(revision 17097)
@@ -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.Optimization.Operators;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 using HeuristicLab.Selection;
 
@@ -35,5 +35,5 @@
   /// </summary>
   [Item("TabuSearchMainLoop", "An operator which represents the main loop of a tabu search.")]
-  [StorableClass]
+  [StorableType("85033FBD-B9BA-4450-AA25-B1BEE1B0178D")]
   public sealed class TabuSearchMainLoop : AlgorithmOperator {
     #region Parameter properties
@@ -89,5 +89,5 @@
 
     [StorableConstructor]
-    private TabuSearchMainLoop(bool deserializing) : base(deserializing) { }
+    private TabuSearchMainLoop(StorableConstructorFlag _) : base(_) { }
     public TabuSearchMainLoop()
       : base() {
Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSelector.cs
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSelector.cs	(revision 15587)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/TabuSelector.cs	(revision 17097)
@@ -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.Data;
 using HeuristicLab.Parameters;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HEAL.Attic;
 using HeuristicLab.Selection;
 
@@ -37,5 +37,5 @@
   /// </remarks>
   [Item("TabuSelector", "An operator that selects the best move that is either not tabu or satisfies the aspiration criterion. It expects the move subscopes to be sorted by the qualities of the moves (the best move is first).")]
-  [StorableClass]
+  [StorableType("63A67432-6076-4BDE-B6D5-C9919FAA48DE")]
   public class TabuSelector : Selector {
     /// <summary>
@@ -82,5 +82,5 @@
 
     [StorableConstructor]
-    protected TabuSelector(bool deserializing) : base(deserializing) { }
+    protected TabuSelector(StorableConstructorFlag _) : base(_) { }
     protected TabuSelector(TabuSelector original, Cloner cloner)
       : base(original, cloner) {
Index: stable/HeuristicLab.Algorithms.TabuSearch/3.3/packages.config
===================================================================
--- stable/HeuristicLab.Algorithms.TabuSearch/3.3/packages.config	(revision 17097)
+++ stable/HeuristicLab.Algorithms.TabuSearch/3.3/packages.config	(revision 17097)
@@ -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-pre02" targetFramework="net461" />
+  <package id="System.Drawing.Common" version="4.5.1" targetFramework="net461" />
+</packages>
