using single dispatch instead of a delayed batch