add logic to guide steps