StepState with lazy after.
Change order.
Make OptimizeStepWithNoEffectOnFinalOutput at least 10 times faster.