Index: /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/EldersEmigrator.cs
===================================================================
--- /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/EldersEmigrator.cs	(revision 13078)
+++ /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/EldersEmigrator.cs	(revision 13079)
@@ -45,5 +45,5 @@
       var selectorProsessor = new UniformSubScopesProcessor();
       var eldersSelector = new EldersSelector();
-      var shiftToRightMigrator = new ShiftToRightMigrator();
+      var shiftToRightMigrator = new UnidirectionalRingMigrator();
       var mergingProsessor = new UniformSubScopesProcessor();
       var mergingReducer = new MergingReducer();
@@ -61,4 +61,5 @@
       eldersSelector.Successor = null;
 
+      shiftToRightMigrator.ClockwiseMigrationDirectionParameter.Value = new BoolValue(true);
       shiftToRightMigrator.Successor = mergingProsessor;
 
Index: /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/HeuristicLab.Algorithms.ALPS-3.3.csproj
===================================================================
--- /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/HeuristicLab.Algorithms.ALPS-3.3.csproj	(revision 13078)
+++ /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/HeuristicLab.Algorithms.ALPS-3.3.csproj	(revision 13079)
@@ -147,5 +147,4 @@
     <Compile Include="Plugin.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ShiftToRightMigrator.cs" />
   </ItemGroup>
   <ItemGroup>
Index: anches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/ShiftToRightMigrator.cs
===================================================================
--- /branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/ShiftToRightMigrator.cs	(revision 13078)
+++ 	(revision )
@@ -1,66 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * HeuristicLab is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System.Collections.Generic;
-using System.Linq;
-using HeuristicLab.Common;
-using HeuristicLab.Core;
-using HeuristicLab.Operators;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
-
-namespace HeuristicLab.Algorithms.ALPS {
-  [Item("ShiftToRightMigrator", "Migrates the selected sub scopes by shifting them to the next(right) subscope.")]
-  [StorableClass]
-  public sealed class ShiftToRightMigrator : SingleSuccessorOperator/*, IMigrator*/ {
-
-    [StorableConstructor]
-    private ShiftToRightMigrator(bool deserializing)
-      : base(deserializing) { }
-    private ShiftToRightMigrator(ShiftToRightMigrator original, Cloner cloner)
-      : base(original, cloner) { }
-    public override IDeepCloneable Clone(Cloner cloner) {
-      return new ShiftToRightMigrator(this, cloner);
-    }
-    public ShiftToRightMigrator()
-      : base() {
-    }
-
-    public override IOperation Apply() {
-      var scope = ExecutionContext.Scope;
-      var emigrantsList = new List<IScope>();
-
-      for (int i = 0; i < scope.SubScopes.Count; i++) {
-        var emigrants = scope.SubScopes[i].SubScopes[1];
-        scope.SubScopes[i].SubScopes.Remove(emigrants);
-        emigrantsList.Add(emigrants);
-      }
-
-      // Shift last emigrant to begin of list
-      emigrantsList.Insert(0, emigrantsList.Last());
-      emigrantsList.RemoveAt(emigrantsList.Count - 1);
-
-      for (int i = 0; i < scope.SubScopes.Count; i++)
-        scope.SubScopes[i].SubScopes.Add(emigrantsList[i]);
-
-      return base.Apply();
-    }
-  }
-}
