Pulling all the changes from Kiran branch