Consider adding this in the validator or another parametric type on the reader, so it can be made zero overhead when not in use