lots of  changes