wrap middleware around push in bulk mode

The only issue with this is it could generate very large stacks.