defaults set in init rather than custom accessors