refactor batch & void participant