adds a lot of stuff