validator prototype