fixed to add more presence validations