Self validating (13/25)

Self validating