almost have all 3 steps