removed custom validation and replaced it with a smarter validates uniquness of method call