low level and privatising open setters that should be closed