Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/HeuristicLab.Problems.BinPacking2D-3.3.csproj
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/HeuristicLab.Problems.BinPacking2D-3.3.csproj	(revision 13610)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/HeuristicLab.Problems.BinPacking2D-3.3.csproj	(revision 13611)
@@ -158,4 +158,5 @@
   </ItemGroup>
   <ItemGroup>
+    <Compile Include="BinPacking2D.cs" />
     <Compile Include="Decoders\BL\BottomLeftGroupingVectorDecoder.cs" />
     <Compile Include="Decoders\BL\BottomLeftMultiComponentVectorDecoder.cs" />
Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/PackingPlan2D.cs
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/PackingPlan2D.cs	(revision 13610)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/PackingPlan2D.cs	(revision 13611)
@@ -43,5 +43,5 @@
     }
     public override BinPacking<TwoDimensionalPacking, RectangularPackingBin, RectangularPackingItem> NewBinPacking() {
-      return new BinPacking2D(BinMeasures);
+      return new Encodings.PackingEncoding.PackingPlan.BinPacking2D(BinMeasures);
     }
   }
Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/RectangularIdenticalBinPackingProblem.cs
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/RectangularIdenticalBinPackingProblem.cs	(revision 13610)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.2D/3.3/RectangularIdenticalBinPackingProblem.cs	(revision 13611)
@@ -104,5 +104,5 @@
     #region Helpers
     protected override void InitializeDecoder() {
-      Operators.RemoveAll(op => op is I3DOperator);
+      // Operators.RemoveAll(op => op is I3DOperator); TODO
 
       PackingSolutionDecoderParameter.ValidValues.Clear();
Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.3D/3.3/HeuristicLab.Problems.BinPacking3D-3.3.csproj
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.3D/3.3/HeuristicLab.Problems.BinPacking3D-3.3.csproj	(revision 13610)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.3D/3.3/HeuristicLab.Problems.BinPacking3D-3.3.csproj	(revision 13611)
@@ -178,4 +178,5 @@
     <Compile Include="MoveEvaluators\PackingMoveEvaluator3DMCV.cs" />
     <Compile Include="MoveEvaluators\PackingMoveEvaluator3DPS.cs" />
+    <Compile Include="PackingPlan3D.cs" />
     <Compile Include="PackingRatioCuboidIdenticalBinEvaluator.cs" />
     <Compile Include="Plugin.cs" />
Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.3D/3.3/PackingPlan3D.cs
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.3D/3.3/PackingPlan3D.cs	(revision 13611)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking.3D/3.3/PackingPlan3D.cs	(revision 13611)
@@ -0,0 +1,27 @@
+﻿using HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Encodings.PackingEncoding.PackingPlan;
+using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HeuristicLab.Problems.BinPacking.Dimensions;
+using HeuristicLab.Problems.BinPacking.PackingBin;
+using HeuristicLab.Problems.BinPacking.PackingItem;
+
+namespace HeuristicLab.Problems.BinPacking {
+  [Item("PackingPlan3D", "Represents a solution for a 3D bin packing problem.")]
+  [StorableClass]
+  public class PackingPlan3D : PackingPlan<ThreeDimensionalPacking, CuboidPackingBin, CuboidPackingItem> {
+    public PackingPlan3D(CuboidPackingBin binMeasures) : this(binMeasures, false, false) { }
+    public PackingPlan3D(CuboidPackingBin binMeasures, bool useExtremePoints, bool stackingConstraints) : base(binMeasures, useExtremePoints, stackingConstraints) { }
+    [StorableConstructor]
+    protected PackingPlan3D(bool deserializing) : base(deserializing) { }
+    protected PackingPlan3D(PackingPlan3D original, Cloner cloner)
+      : base(original, cloner) {
+    }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new PackingPlan3D(this, cloner);
+    }
+    public override BinPacking<ThreeDimensionalPacking, CuboidPackingBin, CuboidPackingItem> NewBinPacking() {
+      return new BinPacking3D(BinMeasures);
+    }
+  }
+}
Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingPlans/PackingPlan.cs
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingPlans/PackingPlan.cs	(revision 13610)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/Encodings/PackingPlans/PackingPlan.cs	(revision 13611)
@@ -24,5 +24,4 @@
 using System.Linq;
 using HeuristicLab.Problems.BinPacking.Interfaces;
-using HeuristicLab.Problems.BinPacking.PackingItem;
 using HeuristicLab.Problems.BinPacking.Shapes;
 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
@@ -31,6 +30,4 @@
 using HeuristicLab.Data;
 using HeuristicLab.Collections;
-using HeuristicLab.Problems.BinPacking.Dimensions;
-using HeuristicLab.Problems.BinPacking.PackingBin;
 using HeuristicLab.Encodings.PackingEncoding.MultiComponentVector;
 using HeuristicLab.Encodings.PackingEncoding.GroupingVector;
Index: /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/HeuristicLab.Problems.BinPacking-3.3.csproj
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/HeuristicLab.Problems.BinPacking-3.3.csproj	(revision 13610)
+++ /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/HeuristicLab.Problems.BinPacking-3.3.csproj	(revision 13611)
@@ -215,5 +215,4 @@
     <Compile Include="Encodings\MultiComponentVector\MultiComponentVectorRandomCreator.cs" />
     <Compile Include="Encodings\MultiComponentVector\ThreeWayMultiComponentVectorManipulator.cs" />
-    <Compile Include="Encodings\PackingPlans\BinPacking3D.cs" />
     <Compile Include="Encodings\PackingPlans\BinPacking.cs" />
     <Compile Include="Encodings\PackingPlans\PackingPlan.cs" />
@@ -251,4 +250,9 @@
     <Compile Include="Encodings\PackingSolutionCrossover.cs" />
     <Compile Include="Encodings\PackingSolutionManipulator.cs" />
+    <Compile Include="Evaluators\BinUtilizationRegularIdenticalBinEvaluator.cs" />
+    <Compile Include="Evaluators\PackingPlanEvaluationAlgorithm.cs" />
+    <Compile Include="Evaluators\PackingPlanEvaluator.cs" />
+    <Compile Include="Evaluators\PackingRatioRegularIdenticalBinEvaluator.cs" />
+    <Compile Include="Evaluators\RegularSimpleRotationIdenticalBinPackingPlanEvaluator.cs" />
     <Compile Include="Instances\BPPData.cs" />
     <Compile Include="Instances\BPPInstanceProvider.cs" />
@@ -276,5 +280,4 @@
     <Compile Include="PackingDimensions.cs" />
     <Compile Include="PackingMoveEvaluator.cs" />
-    <Compile Include="PackingPlan3D.cs" />
     <Compile Include="Interfaces\IRegularPackingShape.cs" />
     <Compile Include="Interfaces\IPackingBin.cs" />
Index: anches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingPlan3D.cs
===================================================================
--- /branches/HeuristicLab.BinPacking/HeuristicLab.Problems.BinPacking/3.3/PackingPlan3D.cs	(revision 13610)
+++ 	(revision )
@@ -1,27 +1,0 @@
-﻿using HeuristicLab.Common;
-using HeuristicLab.Core;
-using HeuristicLab.Encodings.PackingEncoding.PackingPlan;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
-using HeuristicLab.Problems.BinPacking.Dimensions;
-using HeuristicLab.Problems.BinPacking.PackingBin;
-using HeuristicLab.Problems.BinPacking.PackingItem;
-
-namespace HeuristicLab.Problems.BinPacking {
-  [Item("PackingPlan3D", "Represents a solution for a 3D bin packing problem.")]
-  [StorableClass]
-  public class PackingPlan3D : PackingPlan<ThreeDimensionalPacking, CuboidPackingBin, CuboidPackingItem> {
-    public PackingPlan3D(CuboidPackingBin binMeasures) : this(binMeasures, false, false) { }
-    public PackingPlan3D(CuboidPackingBin binMeasures, bool useExtremePoints, bool stackingConstraints) : base(binMeasures, useExtremePoints, stackingConstraints) { }
-    [StorableConstructor]
-    protected PackingPlan3D(bool deserializing) : base(deserializing) { }
-    protected PackingPlan3D(PackingPlan3D original, Cloner cloner)
-      : base(original, cloner) {
-    }
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new PackingPlan3D(this, cloner);
-    }
-    public override BinPacking<ThreeDimensionalPacking, CuboidPackingBin, CuboidPackingItem> NewBinPacking() {
-      return new BinPacking3D(BinMeasures);
-    }
-  }
-}
