made lot of changes