Alot of stuff has been added/modified