update validation
improve validation