add validations
work in progress