added a few more validations, more to come