updated a lot of stuff