Refactored step().