Refactor Validation