updates by step 3
updates upto step 5