refine validation framework