pre-validation step