added parameter asserts for good will