Self validating (4/25)

Self validating