actually using validate and writing to any register as needed