Self validating (3/25)

Self validating