new validate and set system