batcher and item-detector