Index: branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/CoveringOperator.cs
===================================================================
--- branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/CoveringOperator.cs	(revision 9110)
+++ branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/CoveringOperator.cs	(revision 9194)
@@ -35,9 +35,9 @@
 
     #region Parameter Properties
-    public ILookupParameter<IItemSet<IClassifier>> ActionsInMatchSetParameter {
-      get { return (ILookupParameter<IItemSet<IClassifier>>)Parameters["ActionsInMatchSet"]; }
+    public ILookupParameter<IItemSet<IAction>> ActionsInMatchSetParameter {
+      get { return (ILookupParameter<IItemSet<IAction>>)Parameters["ActionsInMatchSet"]; }
     }
-    public ILookupParameter<IItemSet<IClassifier>> PossibleActionsParameter {
-      get { return (ILookupParameter<IItemSet<IClassifier>>)Parameters["PossibleActions"]; }
+    public ILookupParameter<IItemSet<IAction>> PossibleActionsParameter {
+      get { return (ILookupParameter<IItemSet<IAction>>)Parameters["PossibleActions"]; }
     }
     public ILookupParameter<IntValue> MinimalNumberOfUniqueActionsParameter {
@@ -77,7 +77,6 @@
     public CoveringOperator()
       : base() {
-      Parameters.Add(new LookupParameter<IClassifier>("CoverClassifier"));
-      Parameters.Add(new LookupParameter<IItemSet<IClassifier>>("ActionsInMatchSet"));
-      Parameters.Add(new LookupParameter<IItemSet<IClassifier>>("PossibleActions"));
+      Parameters.Add(new LookupParameter<IItemSet<IAction>>("ActionsInMatchSet"));
+      Parameters.Add(new LookupParameter<IItemSet<IAction>>("PossibleActions"));
       Parameters.Add(new LookupParameter<IntValue>("MinimalNumberOfUniqueActions"));
       Parameters.Add(new ValueLookupParameter<IOperator>("Evaluator"));
@@ -95,5 +94,5 @@
       bool parallel = ParallelParameter.ActualValue.Value;
 
-      IItemSet<IClassifier> clone = (IItemSet<IClassifier>)PossibleActionsParameter.ActualValue.Clone();
+      IItemSet<IAction> clone = (IItemSet<IAction>)PossibleActionsParameter.ActualValue.Clone();
       clone.ExceptWith(ActionsInMatchSetParameter.ActualValue);
 
@@ -116,7 +115,7 @@
           VariableCreator variableCreator = new VariableCreator();
           int pos = RandomParameter.ActualValue.Next(clone.Count);
-          IClassifier action = clone.ElementAt(pos);
+          IAction action = clone.ElementAt(pos);
           clone.Remove(action);
-          variableCreator.CollectedValues.Add(new ValueParameter<IClassifier>("Action", action));
+          variableCreator.CollectedValues.Add(new ValueParameter<IAction>("Action", action));
           variableCreation.Add(ExecutionContext.CreateOperation(variableCreator, CurrentScope.SubScopes[current + i]));
           creation.Add(ExecutionContext.CreateOperation(creator, CurrentScope.SubScopes[current + i]));
Index: branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/DoDeletionBeforeCovering.cs
===================================================================
--- branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/DoDeletionBeforeCovering.cs	(revision 9110)
+++ branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/DoDeletionBeforeCovering.cs	(revision 9194)
@@ -55,4 +55,7 @@
       get { return (IValueLookupParameter<IntValue>)Parameters["NumberToDelete"]; }
     }
+    public ILookupParameter<IClassifierComparer> ClassifierComparerParameter {
+      get { return (ILookupParameter<IClassifierComparer>)Parameters["ClassifierComparer"]; }
+    }
     #endregion
 
@@ -71,4 +74,5 @@
       Parameters.Add(new ValueLookupParameter<BoolValue>("DoDeletion"));
       Parameters.Add(new ValueLookupParameter<IntValue>("NumberToDelete"));
+      Parameters.Add(new LookupParameter<IClassifierComparer>("ClassifierComparer"));
     }
     public override IDeepCloneable Clone(Cloner cloner) {
@@ -77,5 +81,5 @@
 
     public override IOperation Apply() {
-      IItemSet<IClassifier> uniqueActions = new ItemSet<IClassifier>();
+      IItemSet<IAction> uniqueActions = new ItemSet<IAction>(ClassifierComparerParameter.ActualValue);
       var classifiers = ClassifiersParameter.ActualValue;
       var matchcondition = MatchConditionParameter.ActualValue;
Index: branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/ICovering.cs
===================================================================
--- branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/ICovering.cs	(revision 9110)
+++ branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/ICovering.cs	(revision 9194)
@@ -26,6 +26,6 @@
 namespace HeuristicLab.Encodings.ConditionActionEncoding {
   public interface ICovering : IStochasticOperator {
-    ILookupParameter<IItemSet<IClassifier>> ActionsInMatchSetParameter { get; }
-    ILookupParameter<IItemSet<IClassifier>> PossibleActionsParameter { get; }
+    ILookupParameter<IItemSet<IAction>> ActionsInMatchSetParameter { get; }
+    ILookupParameter<IItemSet<IAction>> PossibleActionsParameter { get; }
 
     ILookupParameter<IntValue> MinimalNumberOfUniqueActionsParameter { get; }
Index: branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/ICoveringSolutionCreator.cs
===================================================================
--- branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/ICoveringSolutionCreator.cs	(revision 9110)
+++ branches/LearningClassifierSystems/HeuristicLab.Encodings.ConditionActionEncoding/3.3/Covering/ICoveringSolutionCreator.cs	(revision 9194)
@@ -28,6 +28,6 @@
 namespace HeuristicLab.Encodings.ConditionActionEncoding {
   public interface ICoveringSolutionCreator : IOperator, IParameterizedNamedItem, INamedItem, IParameterizedItem, IItem, IContent, IDeepCloneable, ICloneable, IStochasticOperator {
-    ILookupParameter<IClassifier> CoverClassifierParameter { get; }
-    ILookupParameter<IClassifier> ActionParameter { get; }
+    ILookupParameter<IInput> CoverInputParameter { get; }
+    ILookupParameter<IAction> ActionParameter { get; }
 
     IValueLookupParameter<IClassifier> CreatedClassifierParameter { get; }
