add validation framework