address validations and tests
merge conflicts