a lot of changes

changes