additional data validation and sanitizing