explaining the steps