Self validating (21/25)

Self validating