package org.requirementsascode.predicate;

import java.util.Objects;

import org.requirementsascode.Step;
import org.requirementsascode.UseCaseModelRunner;

public class After implements FlowPosition{
	private Step step;

	public After(Step step) {
		this.step = step;
	}
	
	@Override
	public boolean test(UseCaseModelRunner useCaseModelRunner) {
		Step latestStep = useCaseModelRunner.getLatestStep().orElse(null);
		boolean isSystemAtRightStep = 
			Objects.equals(step, latestStep);
		return isSystemAtRightStep;	
  }

  public String getStepName() {
    String name = step != null? step.getName() : "";
    return name;
  }
}

@@ -36,16 +36,45 @@
 icate;%0A%0A
+import java.io.Serializable;%0A
 import j
@@ -221,19 +221,107 @@
 Position
-%7B%0A%09
+, Serializable%7B%0A  private static final long serialVersionUID = -4951912635216926005L;%0A  %0A  
 private 

Make After class Serializable