revised validate user