changes a lot things