server side validations and defaults