implemented custom validators