added many requseted changes and updates