Removed a lot of boiler plate code