improve prepare.