Changes made by Ashish Khandelwal (ashish.tatva@gmail.com).