Refactoring and validation.
Validation gives now a return