On Shrink logic
Split func, step id refactor