final validation