lots of changes 3