laying groundwork for batch processing