responsive and validating