use setters in argument to take advantage of validation