optimize setters