Validation is in place too, unit tested.