add reject prepare and refine handle prepare