Self validating (7/25)

Self validating