finish and validate