public override void Do(Mutation mutation)
 {
     mutation.Do();
     Add(mutation);
 }
 public MutationEventArgs(Mutation mutation, MutationMode mode)
 {
     Mutation = mutation;
     Mode = mode;
 }
 public override void Add(Mutation mutation)
 {
     _mutations.Add(mutation);
 }
 public override void Add(Mutation mutation)
 {
 }
 public override void Do(Mutation mutation)
 {
     _parent.Do(mutation);
 }
 public override void Add(Mutation mutation)
 {
     _parent.Add(mutation);
 }
 public abstract void Do(Mutation mutation);
 public abstract void Add(Mutation mutation);