add validation and theme update