Please separate the normalization into a separate method from the validation. `validate` implies (and the docstring agrees), that it's checking for validity, not that it's changing values.