add proper valid property with tests