some changes written offline using sublime text 2