Modified properties to have default values built in and allowed more properties to be null