changed a lot of stuff