Changes by bala and formatting by me