Refactor complex validations in client into separate methods