add back in step checking